$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-cob_object_perception/doc_stacks/2013-03-01_14-45-40.878742/cob_object_perception/cob_object_detection_msgs/msg/MaskArray.msg */ 00002 #ifndef COB_OBJECT_DETECTION_MSGS_MESSAGE_MASKARRAY_H 00003 #define COB_OBJECT_DETECTION_MSGS_MESSAGE_MASKARRAY_H 00004 #include <string> 00005 #include <vector> 00006 #include <map> 00007 #include <ostream> 00008 #include "ros/serialization.h" 00009 #include "ros/builtin_message_traits.h" 00010 #include "ros/message_operations.h" 00011 #include "ros/time.h" 00012 00013 #include "ros/macros.h" 00014 00015 #include "ros/assert.h" 00016 00017 #include "std_msgs/Header.h" 00018 #include "cob_object_detection_msgs/Mask.h" 00019 00020 namespace cob_object_detection_msgs 00021 { 00022 template <class ContainerAllocator> 00023 struct MaskArray_ { 00024 typedef MaskArray_<ContainerAllocator> Type; 00025 00026 MaskArray_() 00027 : header() 00028 , masks() 00029 { 00030 } 00031 00032 MaskArray_(const ContainerAllocator& _alloc) 00033 : header(_alloc) 00034 , masks(_alloc) 00035 { 00036 } 00037 00038 typedef ::std_msgs::Header_<ContainerAllocator> _header_type; 00039 ::std_msgs::Header_<ContainerAllocator> header; 00040 00041 typedef std::vector< ::cob_object_detection_msgs::Mask_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::cob_object_detection_msgs::Mask_<ContainerAllocator> >::other > _masks_type; 00042 std::vector< ::cob_object_detection_msgs::Mask_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::cob_object_detection_msgs::Mask_<ContainerAllocator> >::other > masks; 00043 00044 00045 ROS_DEPRECATED uint32_t get_masks_size() const { return (uint32_t)masks.size(); } 00046 ROS_DEPRECATED void set_masks_size(uint32_t size) { masks.resize((size_t)size); } 00047 ROS_DEPRECATED void get_masks_vec(std::vector< ::cob_object_detection_msgs::Mask_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::cob_object_detection_msgs::Mask_<ContainerAllocator> >::other > & vec) const { vec = this->masks; } 00048 ROS_DEPRECATED void set_masks_vec(const std::vector< ::cob_object_detection_msgs::Mask_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::cob_object_detection_msgs::Mask_<ContainerAllocator> >::other > & vec) { this->masks = vec; } 00049 private: 00050 static const char* __s_getDataType_() { return "cob_object_detection_msgs/MaskArray"; } 00051 public: 00052 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00053 00054 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00055 00056 private: 00057 static const char* __s_getMD5Sum_() { return "1d4620a4218f096b919a95d7fb64146f"; } 00058 public: 00059 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00060 00061 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00062 00063 private: 00064 static const char* __s_getMessageDefinition_() { return "Header header\n\ 00065 Mask[] masks\n\ 00066 \n\ 00067 ================================================================================\n\ 00068 MSG: std_msgs/Header\n\ 00069 # Standard metadata for higher-level stamped data types.\n\ 00070 # This is generally used to communicate timestamped data \n\ 00071 # in a particular coordinate frame.\n\ 00072 # \n\ 00073 # sequence ID: consecutively increasing ID \n\ 00074 uint32 seq\n\ 00075 #Two-integer timestamp that is expressed as:\n\ 00076 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00077 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00078 # time-handling sugar is provided by the client library\n\ 00079 time stamp\n\ 00080 #Frame this data is associated with\n\ 00081 # 0: no frame\n\ 00082 # 1: global frame\n\ 00083 string frame_id\n\ 00084 \n\ 00085 ================================================================================\n\ 00086 MSG: cob_object_detection_msgs/Mask\n\ 00087 # this message is used to mark where an object is present in an image\n\ 00088 # this can be done either by a roi region on the image (less precise) or a mask (more precise)\n\ 00089 \n\ 00090 Rect roi\n\ 00091 \n\ 00092 # in the case when mask is used, 'roi' specifies the image region and 'mask'\n\ 00093 # (which should be of the same size) a binary mask in that region\n\ 00094 sensor_msgs/Image mask\n\ 00095 \n\ 00096 # in the case there is 3D data available, 'indices' are used to index the \n\ 00097 # part of the point cloud representing the object\n\ 00098 #pcl/PointIndices indices\n\ 00099 \n\ 00100 ================================================================================\n\ 00101 MSG: cob_object_detection_msgs/Rect\n\ 00102 int32 x\n\ 00103 int32 y\n\ 00104 int32 width\n\ 00105 int32 height\n\ 00106 \n\ 00107 ================================================================================\n\ 00108 MSG: sensor_msgs/Image\n\ 00109 # This message contains an uncompressed image\n\ 00110 # (0, 0) is at top-left corner of image\n\ 00111 #\n\ 00112 \n\ 00113 Header header # Header timestamp should be acquisition time of image\n\ 00114 # Header frame_id should be optical frame of camera\n\ 00115 # origin of frame should be optical center of cameara\n\ 00116 # +x should point to the right in the image\n\ 00117 # +y should point down in the image\n\ 00118 # +z should point into to plane of the image\n\ 00119 # If the frame_id here and the frame_id of the CameraInfo\n\ 00120 # message associated with the image conflict\n\ 00121 # the behavior is undefined\n\ 00122 \n\ 00123 uint32 height # image height, that is, number of rows\n\ 00124 uint32 width # image width, that is, number of columns\n\ 00125 \n\ 00126 # The legal values for encoding are in file src/image_encodings.cpp\n\ 00127 # If you want to standardize a new string format, join\n\ 00128 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\ 00129 \n\ 00130 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\ 00131 # taken from the list of strings in src/image_encodings.cpp\n\ 00132 \n\ 00133 uint8 is_bigendian # is this data bigendian?\n\ 00134 uint32 step # Full row length in bytes\n\ 00135 uint8[] data # actual matrix data, size is (step * rows)\n\ 00136 \n\ 00137 "; } 00138 public: 00139 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00140 00141 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00142 00143 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00144 { 00145 ros::serialization::OStream stream(write_ptr, 1000000000); 00146 ros::serialization::serialize(stream, header); 00147 ros::serialization::serialize(stream, masks); 00148 return stream.getData(); 00149 } 00150 00151 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00152 { 00153 ros::serialization::IStream stream(read_ptr, 1000000000); 00154 ros::serialization::deserialize(stream, header); 00155 ros::serialization::deserialize(stream, masks); 00156 return stream.getData(); 00157 } 00158 00159 ROS_DEPRECATED virtual uint32_t serializationLength() const 00160 { 00161 uint32_t size = 0; 00162 size += ros::serialization::serializationLength(header); 00163 size += ros::serialization::serializationLength(masks); 00164 return size; 00165 } 00166 00167 typedef boost::shared_ptr< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > Ptr; 00168 typedef boost::shared_ptr< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> const> ConstPtr; 00169 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00170 }; // struct MaskArray 00171 typedef ::cob_object_detection_msgs::MaskArray_<std::allocator<void> > MaskArray; 00172 00173 typedef boost::shared_ptr< ::cob_object_detection_msgs::MaskArray> MaskArrayPtr; 00174 typedef boost::shared_ptr< ::cob_object_detection_msgs::MaskArray const> MaskArrayConstPtr; 00175 00176 00177 template<typename ContainerAllocator> 00178 std::ostream& operator<<(std::ostream& s, const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> & v) 00179 { 00180 ros::message_operations::Printer< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> >::stream(s, "", v); 00181 return s;} 00182 00183 } // namespace cob_object_detection_msgs 00184 00185 namespace ros 00186 { 00187 namespace message_traits 00188 { 00189 template<class ContainerAllocator> struct IsMessage< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > : public TrueType {}; 00190 template<class ContainerAllocator> struct IsMessage< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> const> : public TrueType {}; 00191 template<class ContainerAllocator> 00192 struct MD5Sum< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > { 00193 static const char* value() 00194 { 00195 return "1d4620a4218f096b919a95d7fb64146f"; 00196 } 00197 00198 static const char* value(const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> &) { return value(); } 00199 static const uint64_t static_value1 = 0x1d4620a4218f096bULL; 00200 static const uint64_t static_value2 = 0x919a95d7fb64146fULL; 00201 }; 00202 00203 template<class ContainerAllocator> 00204 struct DataType< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > { 00205 static const char* value() 00206 { 00207 return "cob_object_detection_msgs/MaskArray"; 00208 } 00209 00210 static const char* value(const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> &) { return value(); } 00211 }; 00212 00213 template<class ContainerAllocator> 00214 struct Definition< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > { 00215 static const char* value() 00216 { 00217 return "Header header\n\ 00218 Mask[] masks\n\ 00219 \n\ 00220 ================================================================================\n\ 00221 MSG: std_msgs/Header\n\ 00222 # Standard metadata for higher-level stamped data types.\n\ 00223 # This is generally used to communicate timestamped data \n\ 00224 # in a particular coordinate frame.\n\ 00225 # \n\ 00226 # sequence ID: consecutively increasing ID \n\ 00227 uint32 seq\n\ 00228 #Two-integer timestamp that is expressed as:\n\ 00229 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00230 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00231 # time-handling sugar is provided by the client library\n\ 00232 time stamp\n\ 00233 #Frame this data is associated with\n\ 00234 # 0: no frame\n\ 00235 # 1: global frame\n\ 00236 string frame_id\n\ 00237 \n\ 00238 ================================================================================\n\ 00239 MSG: cob_object_detection_msgs/Mask\n\ 00240 # this message is used to mark where an object is present in an image\n\ 00241 # this can be done either by a roi region on the image (less precise) or a mask (more precise)\n\ 00242 \n\ 00243 Rect roi\n\ 00244 \n\ 00245 # in the case when mask is used, 'roi' specifies the image region and 'mask'\n\ 00246 # (which should be of the same size) a binary mask in that region\n\ 00247 sensor_msgs/Image mask\n\ 00248 \n\ 00249 # in the case there is 3D data available, 'indices' are used to index the \n\ 00250 # part of the point cloud representing the object\n\ 00251 #pcl/PointIndices indices\n\ 00252 \n\ 00253 ================================================================================\n\ 00254 MSG: cob_object_detection_msgs/Rect\n\ 00255 int32 x\n\ 00256 int32 y\n\ 00257 int32 width\n\ 00258 int32 height\n\ 00259 \n\ 00260 ================================================================================\n\ 00261 MSG: sensor_msgs/Image\n\ 00262 # This message contains an uncompressed image\n\ 00263 # (0, 0) is at top-left corner of image\n\ 00264 #\n\ 00265 \n\ 00266 Header header # Header timestamp should be acquisition time of image\n\ 00267 # Header frame_id should be optical frame of camera\n\ 00268 # origin of frame should be optical center of cameara\n\ 00269 # +x should point to the right in the image\n\ 00270 # +y should point down in the image\n\ 00271 # +z should point into to plane of the image\n\ 00272 # If the frame_id here and the frame_id of the CameraInfo\n\ 00273 # message associated with the image conflict\n\ 00274 # the behavior is undefined\n\ 00275 \n\ 00276 uint32 height # image height, that is, number of rows\n\ 00277 uint32 width # image width, that is, number of columns\n\ 00278 \n\ 00279 # The legal values for encoding are in file src/image_encodings.cpp\n\ 00280 # If you want to standardize a new string format, join\n\ 00281 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\ 00282 \n\ 00283 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\ 00284 # taken from the list of strings in src/image_encodings.cpp\n\ 00285 \n\ 00286 uint8 is_bigendian # is this data bigendian?\n\ 00287 uint32 step # Full row length in bytes\n\ 00288 uint8[] data # actual matrix data, size is (step * rows)\n\ 00289 \n\ 00290 "; 00291 } 00292 00293 static const char* value(const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> &) { return value(); } 00294 }; 00295 00296 template<class ContainerAllocator> struct HasHeader< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > : public TrueType {}; 00297 template<class ContainerAllocator> struct HasHeader< const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > : public TrueType {}; 00298 } // namespace message_traits 00299 } // namespace ros 00300 00301 namespace ros 00302 { 00303 namespace serialization 00304 { 00305 00306 template<class ContainerAllocator> struct Serializer< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > 00307 { 00308 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00309 { 00310 stream.next(m.header); 00311 stream.next(m.masks); 00312 } 00313 00314 ROS_DECLARE_ALLINONE_SERIALIZER; 00315 }; // struct MaskArray_ 00316 } // namespace serialization 00317 } // namespace ros 00318 00319 namespace ros 00320 { 00321 namespace message_operations 00322 { 00323 00324 template<class ContainerAllocator> 00325 struct Printer< ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> > 00326 { 00327 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::cob_object_detection_msgs::MaskArray_<ContainerAllocator> & v) 00328 { 00329 s << indent << "header: "; 00330 s << std::endl; 00331 Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + " ", v.header); 00332 s << indent << "masks[]" << std::endl; 00333 for (size_t i = 0; i < v.masks.size(); ++i) 00334 { 00335 s << indent << " masks[" << i << "]: "; 00336 s << std::endl; 00337 s << indent; 00338 Printer< ::cob_object_detection_msgs::Mask_<ContainerAllocator> >::stream(s, indent + " ", v.masks[i]); 00339 } 00340 } 00341 }; 00342 00343 00344 } // namespace message_operations 00345 } // namespace ros 00346 00347 #endif // COB_OBJECT_DETECTION_MSGS_MESSAGE_MASKARRAY_H 00348