64 void OnPad(
const std::shared_ptr<PadMessage> &pad);
66 void OnChassis(
const std::shared_ptr<apollo::canbus::Chassis> &chassis);
69 const std::shared_ptr<apollo::planning::ADCTrajectory> &trajectory);
71 void OnPlanningCommandStatus(
72 const std::shared_ptr<external_command::CommandStatus>
73 &planning_command_status);
76 const std::shared_ptr<apollo::localization::LocalizationEstimate>
91 void PublishControlInteractiveMsg();
106 std::string estop_reason_;
107 bool pad_received_ =
false;
109 unsigned int status_lost_ = 0;
110 unsigned int status_sanity_check_failed_ = 0;
111 unsigned int total_status_lost_ = 0;
112 unsigned int total_status_sanity_check_failed_ = 0;
118 std::shared_ptr<cyber::Reader<apollo::canbus::Chassis>> chassis_reader_;
119 std::shared_ptr<cyber::Reader<PadMessage>> pad_msg_reader_;
120 std::shared_ptr<cyber::Reader<apollo::localization::LocalizationEstimate>>
121 localization_reader_;
122 std::shared_ptr<cyber::Reader<apollo::planning::ADCTrajectory>>
124 std::shared_ptr<cyber::Reader<apollo::external_command::CommandStatus>>
125 planning_command_status_reader_;
127 std::shared_ptr<cyber::Writer<ControlCommand>> control_cmd_writer_;
129 std::shared_ptr<cyber::Writer<LocalView>> local_view_writer_;
131 std::shared_ptr<cyber::Writer<ControlInteractiveMsg>>
132 control_interactive_writer_;
138 std::shared_ptr<DependencyInjector> injector_;
140 double previous_steering_command_ = 0.0;
142 bool is_auto_ =
false;
143 bool from_else_to_auto_ =
false;
145 uint16_t localization_timeout_count_ = 0;
146 uint16_t trajectory_timeout_count_ = 0;
147 uint16_t chassis_timeout_count_ = 0;