19#include <rclcpp/rclcpp.hpp>
21#include <carma_planning_msgs/srv/set_guidance_active.hpp>
22#include <carma_driver_msgs/srv/set_enable_robotic.hpp>
23#include <carma_planning_msgs/msg/guidance_state.hpp>
24#include <carma_driver_msgs/msg/robot_enabled.hpp>
25#include <carma_planning_msgs/msg/route_event.hpp>
26#include <autoware_msgs/msg/vehicle_status.hpp>
29#include <carma_ros2_utils/carma_lifecycle_node.hpp>
52 carma_ros2_utils::ClientPtr<carma_driver_msgs::srv::SetEnableRobotic>
enable_client_;
75 rcl_interfaces::msg::SetParametersResult
87 void route_event_cb(carma_planning_msgs::msg::RouteEvent::UniquePtr msg);
93 void robot_status_cb(carma_driver_msgs::msg::RobotEnabled::UniquePtr msg);
107 const std::shared_ptr<carma_planning_msgs::srv::SetGuidanceActive::Request> req,
108 std::shared_ptr<carma_planning_msgs::srv::SetGuidanceActive::Response> resp);
113 carma_ros2_utils::CallbackReturn
handle_on_configure(
const rclcpp_lifecycle::State &prev_state);
115 carma_ros2_utils::CallbackReturn
handle_on_shutdown(
const rclcpp_lifecycle::State &prev_state);
Worker class for the Guidance node.
bool spin_cb()
Timer callback.
void route_event_cb(carma_planning_msgs::msg::RouteEvent::UniquePtr msg)
Callback for route event messages.
rclcpp::TimerBase::SharedPtr spin_timer_
carma_ros2_utils::SubPtr< autoware_msgs::msg::VehicleStatus > vehicle_status_subscriber_
carma_ros2_utils::CallbackReturn handle_on_activate(const rclcpp_lifecycle::State &)
carma_ros2_utils::SubPtr< carma_driver_msgs::msg::RobotEnabled > robot_status_subscriber_
carma_ros2_utils::ServicePtr< carma_planning_msgs::srv::SetGuidanceActive > guidance_activate_service_server_
GuidanceStateMachine gsm_
carma_ros2_utils::CallbackReturn handle_on_shutdown(const rclcpp_lifecycle::State &prev_state)
GuidanceWorker(const rclcpp::NodeOptions &)
GuidanceWorker constructor.
void robot_status_cb(carma_driver_msgs::msg::RobotEnabled::UniquePtr msg)
Callback for robot enabled messages.
rcl_interfaces::msg::SetParametersResult parameter_update_callback(const std::vector< rclcpp::Parameter > ¶meters)
Callback for dynamic parameter updates.
carma_ros2_utils::ClientPtr< carma_driver_msgs::srv::SetEnableRobotic > enable_client_
carma_ros2_utils::PubPtr< carma_planning_msgs::msg::GuidanceState > state_publisher_
carma_ros2_utils::CallbackReturn handle_on_configure(const rclcpp_lifecycle::State &prev_state)
carma_ros2_utils::SubPtr< carma_planning_msgs::msg::RouteEvent > route_event_subscriber_
void vehicle_status_cb(const autoware_msgs::msg::VehicleStatus::UniquePtr msg)
Callback for vehicle status messages.
bool guidance_activation_cb(const std::shared_ptr< rmw_request_id_t >, const std::shared_ptr< carma_planning_msgs::srv::SetGuidanceActive::Request > req, std::shared_ptr< carma_planning_msgs::srv::SetGuidanceActive::Response > resp)
Set_guidance_active service callback. User can attempt to activate the guidance system by calling thi...
Stuct containing the algorithm configuration values for GuidanceWorker.