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>
87 void ResetAndProduceZeroControlCommand(
ControlCommand *control_command);
90 void PublishControlInteractiveMsg();
105 std::string estop_reason_;
106 bool pad_received_ =
false;
108 unsigned int status_lost_ = 0;
109 unsigned int status_sanity_check_failed_ = 0;
110 unsigned int total_status_lost_ = 0;
111 unsigned int total_status_sanity_check_failed_ = 0;
117 std::shared_ptr<cyber::Reader<apollo::canbus::Chassis>> chassis_reader_;
118 std::shared_ptr<cyber::Reader<PadMessage>> pad_msg_reader_;
119 std::shared_ptr<cyber::Reader<apollo::localization::LocalizationEstimate>>
120 localization_reader_;
121 std::shared_ptr<cyber::Reader<apollo::planning::ADCTrajectory>>
123 std::shared_ptr<cyber::Reader<apollo::external_command::CommandStatus>>
124 planning_command_status_reader_;
126 std::shared_ptr<cyber::Writer<ControlCommand>> control_cmd_writer_;
128 std::shared_ptr<cyber::Writer<LocalView>> local_view_writer_;
130 std::shared_ptr<cyber::Writer<ControlInteractiveMsg>>
131 control_interactive_writer_;
137 std::shared_ptr<DependencyInjector> injector_;
139 double previous_steering_command_ = 0.0;
141 bool is_auto_ =
false;
142 bool from_else_to_auto_ =
false;