From 044c39853402e74453374ff57e725d68c882eda6 Mon Sep 17 00:00:00 2001 From: Ayush Ghosh Date: Thu, 4 May 2023 20:27:10 -0400 Subject: [PATCH] Added support for custom parameter bridge node names Signed-off-by: Ayush Ghosh --- src/parameter_bridge.cpp | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/parameter_bridge.cpp b/src/parameter_bridge.cpp index f4f4bd76..d2ce79a9 100644 --- a/src/parameter_bridge.cpp +++ b/src/parameter_bridge.cpp @@ -33,14 +33,25 @@ int main(int argc, char * argv[]) { - // ROS 1 node - ros::init(argc, argv, "ros_bridge"); - ros::NodeHandle ros1_node; - // ROS 2 node rclcpp::init(argc, argv); auto ros2_node = rclcpp::Node::make_shared("ros_bridge"); + + if (argc == 4) { + std::string argv_s = argv[argc-1]; + + std::string delimiter = "__node:="; + argv_s.erase(0, delimiter.length()); + argv_s.insert(0, "__name:="); + strcpy(argv[0], argv_s.c_str()); + argc = 1; + } + + // ROS 1 node + ros::init(argc, argv, "ros_bridge"); + ros::NodeHandle ros1_node; + std::list all_handles; std::list service_bridges_1_to_2; std::list service_bridges_2_to_1;