Move Position, robot_state, and joystick_state over
ControlLoop should now be completely using the event loop.
Change-Id: Ifb936c384d1031abbc9e61d834b1ef157ad0841c
diff --git a/frc971/control_loops/drivetrain/polydrivetrain.h b/frc971/control_loops/drivetrain/polydrivetrain.h
index 64b1aff..cc3468a 100644
--- a/frc971/control_loops/drivetrain/polydrivetrain.h
+++ b/frc971/control_loops/drivetrain/polydrivetrain.h
@@ -45,7 +45,7 @@
Scalar MaxVelocity();
- void Update();
+ void Update(Scalar voltage_battery);
void SetOutput(::frc971::control_loops::DrivetrainQueue::Output *output);
@@ -292,7 +292,7 @@
}
template <typename Scalar>
-void PolyDrivetrain<Scalar>::Update() {
+void PolyDrivetrain<Scalar>::Update(Scalar voltage_battery) {
if (dt_config_.loop_type == LoopType::CLOSED_LOOP) {
loop_->mutable_X_hat()(0, 0) = kf_->X_hat()(1, 0);
loop_->mutable_X_hat()(1, 0) = kf_->X_hat()(3, 0);
@@ -406,7 +406,9 @@
(R_right / dt_config_.v)(0, 0) + (IsInGear(right_gear_) ? 0 : wiggle),
-kTwelve, kTwelve);
#ifdef __linux__
- loop_->mutable_U() *= kTwelve / ::aos::robot_state->voltage_battery;
+ loop_->mutable_U() *= kTwelve / voltage_battery;
+#else
+ (void)voltage_battery;
#endif // __linux__
}
}