13 void path_callback(
const custom_interfaces::msg::PathPointArray& msg)
override;
17 void publish_solver_data(std::shared_ptr<rclcpp::Node> node, std::map<std::string, std::shared_ptr<rclcpp::PublisherBase>>& publisher_map)
override;
Base class for control solvers, that calculate both lateral and longitudinal control commands.
std::shared_ptr< LongitudinalController > longitudinal_controller_
void path_callback(const custom_interfaces::msg::PathPointArray &msg) override
Called when a new path is sent by Path Planning.
std::shared_ptr< LateralController > lateral_controller_
void publish_solver_data(std::shared_ptr< rclcpp::Node > node, std::map< std::string, std::shared_ptr< rclcpp::PublisherBase > > &publisher_map) override
Publishes solver specific data using the provided ControlNode.
common_lib::structures::ControlCommand get_control_command() override
Returns the control command calculated by the solver.
void vehicle_state_callback(const custom_interfaces::msg::Velocities &msg) override
Called when the car state (currently just velocity) is updated.
void vehicle_pose_callback(const custom_interfaces::msg::Pose &msg) override
Called when the car pose is updated by SLAM.
virtual ~DecoupledController()=default