diff --git a/rclcpp/include/rclcpp/node.hpp b/rclcpp/include/rclcpp/node.hpp index 347d386..3af264f 100644 --- a/rclcpp/include/rclcpp/node.hpp +++ b/rclcpp/include/rclcpp/node.hpp @@ -341,6 +341,10 @@ public: void register_param_change_callback(CallbackT && callback); + RCLCPP_PUBLIC + std::vector + get_node_names() const; + RCLCPP_PUBLIC std::map> get_topic_names_and_types() const; diff --git a/rclcpp/src/rclcpp/node.cpp b/rclcpp/src/rclcpp/node.cpp index 67b187a..6934370 100644 --- a/rclcpp/src/rclcpp/node.cpp +++ b/rclcpp/src/rclcpp/node.cpp @@ -173,6 +173,12 @@ Node::list_parameters( return node_parameters_->list_parameters(prefixes, depth); } +std::vector +Node::get_node_names() const +{ + return node_graph_->get_node_names(); +} + std::map> Node::get_topic_names_and_types() const { diff --git a/rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp b/rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp index e103aea..ba0f88d 100644 --- a/rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp +++ b/rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp @@ -300,6 +300,10 @@ public: void register_param_change_callback(CallbackT && callback); + RCLCPP_LIFECYCLE_PUBLIC + std::vector + get_node_names() const; + RCLCPP_LIFECYCLE_PUBLIC std::map> get_topic_names_and_types(bool no_demangle = false) const; diff --git a/rclcpp_lifecycle/src/lifecycle_node.cpp b/rclcpp_lifecycle/src/lifecycle_node.cpp index cc86d5f..b62f74d 100644 --- a/rclcpp_lifecycle/src/lifecycle_node.cpp +++ b/rclcpp_lifecycle/src/lifecycle_node.cpp @@ -193,6 +193,12 @@ LifecycleNode::list_parameters( return node_parameters_->list_parameters(prefixes, depth); } +std::vector +LifecycleNode::get_node_names() const +{ + return node_graph_->get_node_names(); +} + std::map> LifecycleNode::get_topic_names_and_types(bool no_demangle) const {