Skip to content

Commit 759659a

Browse files
committed
Added support for custom parameter bridge node names
1 parent 8339080 commit 759659a

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

src/parameter_bridge.cpp

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,25 @@
3333

3434
int main(int argc, char * argv[])
3535
{
36-
// ROS 1 node
37-
ros::init(argc, argv, "ros_bridge");
38-
ros::NodeHandle ros1_node;
39-
4036
// ROS 2 node
4137
rclcpp::init(argc, argv);
4238
auto ros2_node = rclcpp::Node::make_shared("ros_bridge");
4339

40+
41+
if (argc == 4) {
42+
std::string argv_s = argv[argc-1];
43+
44+
std::string delimiter = "__node:=";
45+
argv_s.erase(0, delimiter.length());
46+
argv_s.insert(0, "__name:=");
47+
strcpy(argv[0], argv_s.c_str());
48+
argc = 1;
49+
}
50+
51+
// ROS 1 node
52+
ros::init(argc, argv, "ros_bridge");
53+
ros::NodeHandle ros1_node;
54+
4455
std::list<ros1_bridge::BridgeHandles> all_handles;
4556
std::list<ros1_bridge::ServiceBridge1to2> service_bridges_1_to_2;
4657
std::list<ros1_bridge::ServiceBridge2to1> service_bridges_2_to_1;

0 commit comments

Comments
 (0)