Subscribe to two topics and performing some computation
How can i subsribe to two different topics that conatin different message type using a single node.can you give a example
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
How can i subsribe to two different topics that conatin different message type using a single node.can you give a example
In the publish/subscribe example in the ROS tutorials, it shows about the simplest a subscriber can get (example).
There are two things required for a subscription, that is the callback function, and the subscriber handle. You can simply duplicate these as many times as you need. A modified example could be:
#include "ros/ros.h"
#include "std_msgs/String.h"
#include "std_msgs/Int16.h"
void fooCallback(const std_msgs::String::ConstPtr& msg)
{
// process the string
}
void barCallback(const std_msgs::Int16 msg)
{
// process the int
}
int main(int argc, char **argv)
{
ros::init(argc, argv, "listener");
ros::NodeHandle n;
ros::Subscriber sub1 = n.subscribe("foo", 1000, fooCallback);
ros::Subscriber sub2 = n.subscribe("bar", 1000, barCallback);
ros::spin();
return 0;
}
I haven't tested this, so you probably can't just copy and run it.
Asked: 2016-11-23 09:51:44 -0500
Seen: 629 times
Last updated: Nov 24 '16
Topic that publishes Current Pose of TurtleBot
[Solved] C++: ApproximateTime with more than two topics?
canonical scan matcher warning
[python] output of a code be called in another python code automatically
ROS2 topic command doesn't visualize another machine topics
How can I use Wireshark to capture ROS packets?
error while installing ros groovy on ubuntu 12.04 armel
Please don't use caps. Please edit your title and question and change things to use appropriate capitalisation.