15 #ifndef NAV2_GRACEFUL_CONTROLLER__PARAMETER_HANDLER_HPP_
16 #define NAV2_GRACEFUL_CONTROLLER__PARAMETER_HANDLER_HPP_
24 #include "nav2_util/odometry_utils.hpp"
25 #include "nav2_util/geometry_utils.hpp"
26 #include "nav2_ros_common/lifecycle_node.hpp"
27 #include "nav2_ros_common/node_utils.hpp"
29 namespace nav2_graceful_controller
34 double transform_tolerance;
37 double max_robot_pose_search_dist;
44 double v_linear_max_initial;
46 double v_angular_max_initial;
47 double v_angular_min_in_place;
48 double slowdown_radius;
49 bool initial_rotation;
50 double initial_rotation_tolerance;
51 bool prefer_final_rotation;
52 double rotation_scaling_factor;
54 double in_place_collision_resolution;
55 bool use_collision_detection;
69 nav2::LifecycleNode::SharedPtr node,
70 std::string & plugin_name,
71 rclcpp::Logger & logger,
const double costmap_size_x);
78 std::mutex & getMutex() {
return mutex_;}
93 nav2::LifecycleNode::WeakPtr node_;
104 std::vector<rclcpp::Parameter> parameters);
116 rclcpp::node_interfaces::PostSetParametersCallbackHandle::SharedPtr post_set_params_handler_;
117 rclcpp::node_interfaces::OnSetParametersCallbackHandle::SharedPtr on_set_params_handler_;
119 std::string plugin_name_;
120 rclcpp::Logger logger_ {rclcpp::get_logger(
"GracefulMotionController")};
Handles parameters and dynamic parameters for GracefulMotionController.
void activate()
Registers callbacks for dynamic parameter handling.
void updateParametersCallback(std::vector< rclcpp::Parameter > parameters)
Apply parameter updates after validation This callback is executed when parameters have been successf...
~ParameterHandler()
Destructor for nav2_graceful_controller::ParameterHandler.
void deactivate()
Resets callbacks for dynamic parameter handling.
ParameterHandler(nav2::LifecycleNode::SharedPtr node, std::string &plugin_name, rclcpp::Logger &logger, const double costmap_size_x)
Constructor for nav2_graceful_controller::ParameterHandler.
rcl_interfaces::msg::SetParametersResult validateParameterUpdatesCallback(std::vector< rclcpp::Parameter > parameters)
Validate incoming parameter updates before applying them. This callback is triggered when one or more...