49 CanSender<::apollo::canbus::Transit>*
const can_sender,
50 MessageManager<::apollo::canbus::Transit>*
const message_manager)
53 bool Start()
override;
71 void Emergency()
override;
83 void Brake(
double acceleration)
override;
87 void Throttle(
double throttle)
override;
91 void Acceleration(
double acc)
override;
95 void Steer(
double angle)
override;
100 void Steer(
double angle,
double angle_spd)
override;
110 bool VerifyID()
override;
111 void ResetProtocol();
112 bool CheckChassisError();
115 void SetLimits()
override;
118 void SecurityDogThreadFunc();
120 void set_chassis_error_mask(
const int32_t mask);
121 int32_t chassis_error_mask();
134 std::unique_ptr<std::thread> thread_;
135 bool is_chassis_error_ =
false;
137 std::mutex chassis_error_code_mutex_;
140 std::mutex chassis_mask_mutex_;
141 int32_t chassis_error_mask_ = 0;
142 bool received_vin_ =
false;
143 bool button_pressed_ =
false;