Robotics StackExchange | Archived questions

How to create Publisher/Subscriber/ServiceClient itterative definitions

I'm working in ROS noetic and in my current project I have a need for a large amount of unique topics that can differ by a number in iteration. How do I implement this to save sanity from endless copy pasting?

The current format hints at an obvious loop but the syntax is a bit strange and I haven't found a clear way of doing this online. Here is my example:

ros::Publisher uav0_pos_mem = nh.advertise<geometry_msgs::PoseStamped>("uav0/position_saver/pose1")
ros::Publisher uav0_pos_mem = nh.advertise<geometry_msgs::PoseStamped>("uav0/position_saver/pose2")
// . . .
ros::Publisher uav1_pos_mem = nh.advertise<geometry_msgs::PoseStamped>("uav1/position_saver/pose1")
ros::Publisher uav1_pos_mem = nh.advertise<geometry_msgs::PoseStamped>("uav1/position_saver/pose2")
// . . .
ros::Publisher uav{N}_pos_mem = nh.advertise<geometry_msgs::PoseStamped>("uav{N}/position_saver/pose{N}")

Thank you!

Asked by bkearney on 2023-07-13 16:48:03 UTC

Comments

Answers