00001
00002 #ifndef TEST_ROSLIB_COMM_MESSAGE_ARRAYOFMSGS_H
00003 #define TEST_ROSLIB_COMM_MESSAGE_ARRAYOFMSGS_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013 #include "std_msgs/String.h"
00014 #include "std_msgs/Time.h"
00015 #include "std_msgs/MultiArrayLayout.h"
00016
00017 namespace test_roslib_comm
00018 {
00019 template <class ContainerAllocator>
00020 struct ArrayOfMsgs_ : public ros::Message
00021 {
00022 typedef ArrayOfMsgs_<ContainerAllocator> Type;
00023
00024 ArrayOfMsgs_()
00025 : strings()
00026 , times()
00027 , muls()
00028 {
00029 }
00030
00031 ArrayOfMsgs_(const ContainerAllocator& _alloc)
00032 : strings(_alloc)
00033 , times(_alloc)
00034 , muls(_alloc)
00035 {
00036 }
00037
00038 typedef std::vector< ::std_msgs::String_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::String_<ContainerAllocator> >::other > _strings_type;
00039 std::vector< ::std_msgs::String_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::String_<ContainerAllocator> >::other > strings;
00040
00041 typedef std::vector< ::std_msgs::Time_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Time_<ContainerAllocator> >::other > _times_type;
00042 std::vector< ::std_msgs::Time_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Time_<ContainerAllocator> >::other > times;
00043
00044 typedef std::vector< ::std_msgs::MultiArrayLayout_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::MultiArrayLayout_<ContainerAllocator> >::other > _muls_type;
00045 std::vector< ::std_msgs::MultiArrayLayout_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::MultiArrayLayout_<ContainerAllocator> >::other > muls;
00046
00047
00048 ROS_DEPRECATED uint32_t get_strings_size() const { return (uint32_t)strings.size(); }
00049 ROS_DEPRECATED void set_strings_size(uint32_t size) { strings.resize((size_t)size); }
00050 ROS_DEPRECATED void get_strings_vec(std::vector< ::std_msgs::String_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::String_<ContainerAllocator> >::other > & vec) const { vec = this->strings; }
00051 ROS_DEPRECATED void set_strings_vec(const std::vector< ::std_msgs::String_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::String_<ContainerAllocator> >::other > & vec) { this->strings = vec; }
00052 ROS_DEPRECATED uint32_t get_times_size() const { return (uint32_t)times.size(); }
00053 ROS_DEPRECATED void set_times_size(uint32_t size) { times.resize((size_t)size); }
00054 ROS_DEPRECATED void get_times_vec(std::vector< ::std_msgs::Time_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Time_<ContainerAllocator> >::other > & vec) const { vec = this->times; }
00055 ROS_DEPRECATED void set_times_vec(const std::vector< ::std_msgs::Time_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Time_<ContainerAllocator> >::other > & vec) { this->times = vec; }
00056 ROS_DEPRECATED uint32_t get_muls_size() const { return (uint32_t)muls.size(); }
00057 ROS_DEPRECATED void set_muls_size(uint32_t size) { muls.resize((size_t)size); }
00058 ROS_DEPRECATED void get_muls_vec(std::vector< ::std_msgs::MultiArrayLayout_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::MultiArrayLayout_<ContainerAllocator> >::other > & vec) const { vec = this->muls; }
00059 ROS_DEPRECATED void set_muls_vec(const std::vector< ::std_msgs::MultiArrayLayout_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::MultiArrayLayout_<ContainerAllocator> >::other > & vec) { this->muls = vec; }
00060 private:
00061 static const char* __s_getDataType_() { return "test_roslib_comm/ArrayOfMsgs"; }
00062 public:
00063 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00064
00065 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00066
00067 private:
00068 static const char* __s_getMD5Sum_() { return "1f4cf3ffabe2555a0cfe19c974f01a01"; }
00069 public:
00070 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00071
00072 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00073
00074 private:
00075 static const char* __s_getMessageDefinition_() { return "std_msgs/String[] strings\n\
00076 std_msgs/Time[] times\n\
00077 std_msgs/MultiArrayLayout[] muls\n\
00078 ================================================================================\n\
00079 MSG: std_msgs/String\n\
00080 string data\n\
00081 \n\
00082 ================================================================================\n\
00083 MSG: std_msgs/Time\n\
00084 time data\n\
00085 \n\
00086 ================================================================================\n\
00087 MSG: std_msgs/MultiArrayLayout\n\
00088 # The multiarray declares a generic multi-dimensional array of a\n\
00089 # particular data type. Dimensions are ordered from outer most\n\
00090 # to inner most.\n\
00091 \n\
00092 MultiArrayDimension[] dim # Array of dimension properties\n\
00093 uint32 data_offset # padding bytes at front of data\n\
00094 \n\
00095 # Accessors should ALWAYS be written in terms of dimension stride\n\
00096 # and specified outer-most dimension first.\n\
00097 # \n\
00098 # multiarray(i,j,k) = data[data_offset + dim_stride[1]*i + dim_stride[2]*j + k]\n\
00099 #\n\
00100 # A standard, 3-channel 640x480 image with interleaved color channels\n\
00101 # would be specified as:\n\
00102 #\n\
00103 # dim[0].label = \"height\"\n\
00104 # dim[0].size = 480\n\
00105 # dim[0].stride = 3*640*480 = 921600 (note dim[0] stride is just size of image)\n\
00106 # dim[1].label = \"width\"\n\
00107 # dim[1].size = 640\n\
00108 # dim[1].stride = 3*640 = 1920\n\
00109 # dim[2].label = \"channel\"\n\
00110 # dim[2].size = 3\n\
00111 # dim[2].stride = 3\n\
00112 #\n\
00113 # multiarray(i,j,k) refers to the ith row, jth column, and kth channel.\n\
00114 ================================================================================\n\
00115 MSG: std_msgs/MultiArrayDimension\n\
00116 string label # label of given dimension\n\
00117 uint32 size # size of given dimension (in type units)\n\
00118 uint32 stride # stride of given dimension\n\
00119 "; }
00120 public:
00121 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00122
00123 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00124
00125 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00126 {
00127 ros::serialization::OStream stream(write_ptr, 1000000000);
00128 ros::serialization::serialize(stream, strings);
00129 ros::serialization::serialize(stream, times);
00130 ros::serialization::serialize(stream, muls);
00131 return stream.getData();
00132 }
00133
00134 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00135 {
00136 ros::serialization::IStream stream(read_ptr, 1000000000);
00137 ros::serialization::deserialize(stream, strings);
00138 ros::serialization::deserialize(stream, times);
00139 ros::serialization::deserialize(stream, muls);
00140 return stream.getData();
00141 }
00142
00143 ROS_DEPRECATED virtual uint32_t serializationLength() const
00144 {
00145 uint32_t size = 0;
00146 size += ros::serialization::serializationLength(strings);
00147 size += ros::serialization::serializationLength(times);
00148 size += ros::serialization::serializationLength(muls);
00149 return size;
00150 }
00151
00152 typedef boost::shared_ptr< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> > Ptr;
00153 typedef boost::shared_ptr< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> const> ConstPtr;
00154 };
00155 typedef ::test_roslib_comm::ArrayOfMsgs_<std::allocator<void> > ArrayOfMsgs;
00156
00157 typedef boost::shared_ptr< ::test_roslib_comm::ArrayOfMsgs> ArrayOfMsgsPtr;
00158 typedef boost::shared_ptr< ::test_roslib_comm::ArrayOfMsgs const> ArrayOfMsgsConstPtr;
00159
00160
00161 template<typename ContainerAllocator>
00162 std::ostream& operator<<(std::ostream& s, const ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> & v)
00163 {
00164 ros::message_operations::Printer< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> >::stream(s, "", v);
00165 return s;}
00166
00167 }
00168
00169 namespace ros
00170 {
00171 namespace message_traits
00172 {
00173 template<class ContainerAllocator>
00174 struct MD5Sum< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> > {
00175 static const char* value()
00176 {
00177 return "1f4cf3ffabe2555a0cfe19c974f01a01";
00178 }
00179
00180 static const char* value(const ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> &) { return value(); }
00181 static const uint64_t static_value1 = 0x1f4cf3ffabe2555aULL;
00182 static const uint64_t static_value2 = 0x0cfe19c974f01a01ULL;
00183 };
00184
00185 template<class ContainerAllocator>
00186 struct DataType< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> > {
00187 static const char* value()
00188 {
00189 return "test_roslib_comm/ArrayOfMsgs";
00190 }
00191
00192 static const char* value(const ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> &) { return value(); }
00193 };
00194
00195 template<class ContainerAllocator>
00196 struct Definition< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> > {
00197 static const char* value()
00198 {
00199 return "std_msgs/String[] strings\n\
00200 std_msgs/Time[] times\n\
00201 std_msgs/MultiArrayLayout[] muls\n\
00202 ================================================================================\n\
00203 MSG: std_msgs/String\n\
00204 string data\n\
00205 \n\
00206 ================================================================================\n\
00207 MSG: std_msgs/Time\n\
00208 time data\n\
00209 \n\
00210 ================================================================================\n\
00211 MSG: std_msgs/MultiArrayLayout\n\
00212 # The multiarray declares a generic multi-dimensional array of a\n\
00213 # particular data type. Dimensions are ordered from outer most\n\
00214 # to inner most.\n\
00215 \n\
00216 MultiArrayDimension[] dim # Array of dimension properties\n\
00217 uint32 data_offset # padding bytes at front of data\n\
00218 \n\
00219 # Accessors should ALWAYS be written in terms of dimension stride\n\
00220 # and specified outer-most dimension first.\n\
00221 # \n\
00222 # multiarray(i,j,k) = data[data_offset + dim_stride[1]*i + dim_stride[2]*j + k]\n\
00223 #\n\
00224 # A standard, 3-channel 640x480 image with interleaved color channels\n\
00225 # would be specified as:\n\
00226 #\n\
00227 # dim[0].label = \"height\"\n\
00228 # dim[0].size = 480\n\
00229 # dim[0].stride = 3*640*480 = 921600 (note dim[0] stride is just size of image)\n\
00230 # dim[1].label = \"width\"\n\
00231 # dim[1].size = 640\n\
00232 # dim[1].stride = 3*640 = 1920\n\
00233 # dim[2].label = \"channel\"\n\
00234 # dim[2].size = 3\n\
00235 # dim[2].stride = 3\n\
00236 #\n\
00237 # multiarray(i,j,k) refers to the ith row, jth column, and kth channel.\n\
00238 ================================================================================\n\
00239 MSG: std_msgs/MultiArrayDimension\n\
00240 string label # label of given dimension\n\
00241 uint32 size # size of given dimension (in type units)\n\
00242 uint32 stride # stride of given dimension\n\
00243 ";
00244 }
00245
00246 static const char* value(const ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> &) { return value(); }
00247 };
00248
00249 }
00250 }
00251
00252 namespace ros
00253 {
00254 namespace serialization
00255 {
00256
00257 template<class ContainerAllocator> struct Serializer< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> >
00258 {
00259 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00260 {
00261 stream.next(m.strings);
00262 stream.next(m.times);
00263 stream.next(m.muls);
00264 }
00265
00266 ROS_DECLARE_ALLINONE_SERIALIZER;
00267 };
00268 }
00269 }
00270
00271 namespace ros
00272 {
00273 namespace message_operations
00274 {
00275
00276 template<class ContainerAllocator>
00277 struct Printer< ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> >
00278 {
00279 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::test_roslib_comm::ArrayOfMsgs_<ContainerAllocator> & v)
00280 {
00281 s << indent << "strings[]" << std::endl;
00282 for (size_t i = 0; i < v.strings.size(); ++i)
00283 {
00284 s << indent << " strings[" << i << "]: ";
00285 s << std::endl;
00286 s << indent;
00287 Printer< ::std_msgs::String_<ContainerAllocator> >::stream(s, indent + " ", v.strings[i]);
00288 }
00289 s << indent << "times[]" << std::endl;
00290 for (size_t i = 0; i < v.times.size(); ++i)
00291 {
00292 s << indent << " times[" << i << "]: ";
00293 s << std::endl;
00294 s << indent;
00295 Printer< ::std_msgs::Time_<ContainerAllocator> >::stream(s, indent + " ", v.times[i]);
00296 }
00297 s << indent << "muls[]" << std::endl;
00298 for (size_t i = 0; i < v.muls.size(); ++i)
00299 {
00300 s << indent << " muls[" << i << "]: ";
00301 s << std::endl;
00302 s << indent;
00303 Printer< ::std_msgs::MultiArrayLayout_<ContainerAllocator> >::stream(s, indent + " ", v.muls[i]);
00304 }
00305 }
00306 };
00307
00308
00309 }
00310 }
00311
00312 #endif // TEST_ROSLIB_COMM_MESSAGE_ARRAYOFMSGS_H
00313