#include "ros/ros.h" #include "std_msgs/float32.h" #include <sstream> #include <iostream> #include "std_ Msgs/uint8multiarray.h "#include" std_msgs/multiarraydimension.h "using namespace Std;int main (int argc, char **argv) { Ros::init (argc, argv, "talker"); Ros::nodehandle N; Ros::P ublisher chatter_pub = n.advertise<std_msgs::uint8multiarray> ("chatter", +); Ros::rate Loop_rate (ten); while (Ros::ok ()) {std_msgs::multiarraylayout msg; const unsigned int data_sz = 10;std_msgs::uint8multiarray m; M.layout.dim.push_back (Std_msgs::multiarraydimension ()); m.layout.dim[0].size = Data_sz;m.layout.dim[0].stride = 1; M.layout.dim[0].label = "Bla";cout<< "===========================" <<endl;//only needed if you don ' t want to Use Push_backm.data.resize (DATA_SZ); m.data[0] = 2;m.data[1] = 1; Chatter_pub.publish (m); Ros::spinonce (); Loop_rate.sleep (); } return 0;}
Std_msgs::uint8multiarray Publish an array