Create localizer log replay test
This creates a log replay test that confirms that the localizer can
sanely handle a situation where the drivebase's wheels are spinning. I
used the logfile when working on integrating the IMU into the EKF, and
figured it would be appropriate to test for regressions...
Change-Id: Ib7d5c5412d9e404e165ca99df41940235564b86e
diff --git a/frc971/control_loops/drivetrain/localizer.h b/frc971/control_loops/drivetrain/localizer.h
index 43462b8..6677145 100644
--- a/frc971/control_loops/drivetrain/localizer.h
+++ b/frc971/control_loops/drivetrain/localizer.h
@@ -40,6 +40,8 @@
typedef HybridEkf<double> Ekf;
typedef typename Ekf::StateIdx StateIdx;
+ virtual ~LocalizerInterface() {}
+
// Perform a single step of the filter, using the information that is
// available on every drivetrain iteration.
// The user should pass in the U that the real system experienced from the
@@ -136,6 +138,8 @@
target_selector_.set_has_target(false);
}
+ virtual ~DeadReckonEkf() {}
+
void Update(const ::Eigen::Matrix<double, 2, 1> &U,
::aos::monotonic_clock::time_point now, double left_encoder,
double right_encoder, double gyro_rate,