From 93e29458023478eda561d41abbc939dd82ef0142 Mon Sep 17 00:00:00 2001 From: Sriram Raghunathan Date: Fri, 6 Jul 2018 06:15:09 +0530 Subject: [PATCH] Expose get_node_names API from node. (#508) * Exposing get_node_names from node handle Signed-off-by: Sriram Raghunathan * Exposing get_node_names from node handle for lifecycle_nodes Signed-off-by: Sriram Raghunathan * Fix stray demangle type --- rclcpp/include/rclcpp/node.hpp | 4 ++++ rclcpp/src/rclcpp/node.cpp | 6 ++++++ .../include/rclcpp_lifecycle/lifecycle_node.hpp | 4 ++++ rclcpp_lifecycle/src/lifecycle_node.cpp | 6 ++++++ 4 files changed, 20 insertions(+) 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 {