15 #ifndef NAV2_UTIL__LIFECYCLE_SERVICE_CLIENT_HPP_
16 #define NAV2_UTIL__LIFECYCLE_SERVICE_CLIENT_HPP_
22 #include "lifecycle_msgs/srv/change_state.hpp"
23 #include "lifecycle_msgs/srv/get_state.hpp"
24 #include "nav2_util/service_client.hpp"
25 #include "nav2_util/node_utils.hpp"
36 const std::string & lifecycle_node_name);
38 const std::string & lifecycle_node_name,
39 rclcpp::Node::SharedPtr parent_node);
46 const uint8_t transition,
47 const std::chrono::milliseconds transition_timeout = std::chrono::milliseconds(-1),
48 const std::chrono::milliseconds wait_for_service_timeout = std::chrono::milliseconds(5000));
54 uint8_t
get_state(
const std::chrono::milliseconds timeout = std::chrono::milliseconds(2000));
57 rclcpp::Node::SharedPtr node_;
Helper functions to interact with a lifecycle node.
bool change_state(const uint8_t transition, const std::chrono::milliseconds transition_timeout=std::chrono::milliseconds(-1), const std::chrono::milliseconds wait_for_service_timeout=std::chrono::milliseconds(5000))
Trigger a state change.
uint8_t get_state(const std::chrono::milliseconds timeout=std::chrono::milliseconds(2000))
Get the current state as a lifecycle_msgs::msg::State id value.