$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-srs_common/doc_stacks/2013-03-02_13-44-44.967682/srs_common/srs_object_database_msgs/msg/surf.msg */ 00002 #ifndef SRS_OBJECT_DATABASE_MSGS_MESSAGE_SURF_H 00003 #define SRS_OBJECT_DATABASE_MSGS_MESSAGE_SURF_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 "sensor_msgs/PointCloud2.h" 00018 #include "sensor_msgs/PointCloud2.h" 00019 #include "geometry_msgs/Pose.h" 00020 00021 namespace srs_object_database_msgs 00022 { 00023 template <class ContainerAllocator> 00024 struct surf_ { 00025 typedef surf_<ContainerAllocator> Type; 00026 00027 surf_() 00028 : objectId(0) 00029 , surf() 00030 , bounding_box() 00031 , coord_frame() 00032 { 00033 } 00034 00035 surf_(const ContainerAllocator& _alloc) 00036 : objectId(0) 00037 , surf(_alloc) 00038 , bounding_box(_alloc) 00039 , coord_frame(_alloc) 00040 { 00041 } 00042 00043 typedef int32_t _objectId_type; 00044 int32_t objectId; 00045 00046 typedef ::sensor_msgs::PointCloud2_<ContainerAllocator> _surf_type; 00047 ::sensor_msgs::PointCloud2_<ContainerAllocator> surf; 00048 00049 typedef ::sensor_msgs::PointCloud2_<ContainerAllocator> _bounding_box_type; 00050 ::sensor_msgs::PointCloud2_<ContainerAllocator> bounding_box; 00051 00052 typedef ::geometry_msgs::Pose_<ContainerAllocator> _coord_frame_type; 00053 ::geometry_msgs::Pose_<ContainerAllocator> coord_frame; 00054 00055 00056 private: 00057 static const char* __s_getDataType_() { return "srs_object_database_msgs/surf"; } 00058 public: 00059 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00060 00061 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00062 00063 private: 00064 static const char* __s_getMD5Sum_() { return "0faab423389dc07fa3f21ffd5950aa25"; } 00065 public: 00066 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00067 00068 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00069 00070 private: 00071 static const char* __s_getMessageDefinition_() { return "int32 objectId\n\ 00072 sensor_msgs/PointCloud2 surf\n\ 00073 sensor_msgs/PointCloud2 bounding_box\n\ 00074 geometry_msgs/Pose coord_frame\n\ 00075 \n\ 00076 ================================================================================\n\ 00077 MSG: sensor_msgs/PointCloud2\n\ 00078 # This message holds a collection of N-dimensional points, which may\n\ 00079 # contain additional information such as normals, intensity, etc. The\n\ 00080 # point data is stored as a binary blob, its layout described by the\n\ 00081 # contents of the \"fields\" array.\n\ 00082 \n\ 00083 # The point cloud data may be organized 2d (image-like) or 1d\n\ 00084 # (unordered). Point clouds organized as 2d images may be produced by\n\ 00085 # camera depth sensors such as stereo or time-of-flight.\n\ 00086 \n\ 00087 # Time of sensor data acquisition, and the coordinate frame ID (for 3d\n\ 00088 # points).\n\ 00089 Header header\n\ 00090 \n\ 00091 # 2D structure of the point cloud. If the cloud is unordered, height is\n\ 00092 # 1 and width is the length of the point cloud.\n\ 00093 uint32 height\n\ 00094 uint32 width\n\ 00095 \n\ 00096 # Describes the channels and their layout in the binary data blob.\n\ 00097 PointField[] fields\n\ 00098 \n\ 00099 bool is_bigendian # Is this data bigendian?\n\ 00100 uint32 point_step # Length of a point in bytes\n\ 00101 uint32 row_step # Length of a row in bytes\n\ 00102 uint8[] data # Actual point data, size is (row_step*height)\n\ 00103 \n\ 00104 bool is_dense # True if there are no invalid points\n\ 00105 \n\ 00106 ================================================================================\n\ 00107 MSG: std_msgs/Header\n\ 00108 # Standard metadata for higher-level stamped data types.\n\ 00109 # This is generally used to communicate timestamped data \n\ 00110 # in a particular coordinate frame.\n\ 00111 # \n\ 00112 # sequence ID: consecutively increasing ID \n\ 00113 uint32 seq\n\ 00114 #Two-integer timestamp that is expressed as:\n\ 00115 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00116 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00117 # time-handling sugar is provided by the client library\n\ 00118 time stamp\n\ 00119 #Frame this data is associated with\n\ 00120 # 0: no frame\n\ 00121 # 1: global frame\n\ 00122 string frame_id\n\ 00123 \n\ 00124 ================================================================================\n\ 00125 MSG: sensor_msgs/PointField\n\ 00126 # This message holds the description of one point entry in the\n\ 00127 # PointCloud2 message format.\n\ 00128 uint8 INT8 = 1\n\ 00129 uint8 UINT8 = 2\n\ 00130 uint8 INT16 = 3\n\ 00131 uint8 UINT16 = 4\n\ 00132 uint8 INT32 = 5\n\ 00133 uint8 UINT32 = 6\n\ 00134 uint8 FLOAT32 = 7\n\ 00135 uint8 FLOAT64 = 8\n\ 00136 \n\ 00137 string name # Name of field\n\ 00138 uint32 offset # Offset from start of point struct\n\ 00139 uint8 datatype # Datatype enumeration, see above\n\ 00140 uint32 count # How many elements in the field\n\ 00141 \n\ 00142 ================================================================================\n\ 00143 MSG: geometry_msgs/Pose\n\ 00144 # A representation of pose in free space, composed of postion and orientation. \n\ 00145 Point position\n\ 00146 Quaternion orientation\n\ 00147 \n\ 00148 ================================================================================\n\ 00149 MSG: geometry_msgs/Point\n\ 00150 # This contains the position of a point in free space\n\ 00151 float64 x\n\ 00152 float64 y\n\ 00153 float64 z\n\ 00154 \n\ 00155 ================================================================================\n\ 00156 MSG: geometry_msgs/Quaternion\n\ 00157 # This represents an orientation in free space in quaternion form.\n\ 00158 \n\ 00159 float64 x\n\ 00160 float64 y\n\ 00161 float64 z\n\ 00162 float64 w\n\ 00163 \n\ 00164 "; } 00165 public: 00166 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00167 00168 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00169 00170 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00171 { 00172 ros::serialization::OStream stream(write_ptr, 1000000000); 00173 ros::serialization::serialize(stream, objectId); 00174 ros::serialization::serialize(stream, surf); 00175 ros::serialization::serialize(stream, bounding_box); 00176 ros::serialization::serialize(stream, coord_frame); 00177 return stream.getData(); 00178 } 00179 00180 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00181 { 00182 ros::serialization::IStream stream(read_ptr, 1000000000); 00183 ros::serialization::deserialize(stream, objectId); 00184 ros::serialization::deserialize(stream, surf); 00185 ros::serialization::deserialize(stream, bounding_box); 00186 ros::serialization::deserialize(stream, coord_frame); 00187 return stream.getData(); 00188 } 00189 00190 ROS_DEPRECATED virtual uint32_t serializationLength() const 00191 { 00192 uint32_t size = 0; 00193 size += ros::serialization::serializationLength(objectId); 00194 size += ros::serialization::serializationLength(surf); 00195 size += ros::serialization::serializationLength(bounding_box); 00196 size += ros::serialization::serializationLength(coord_frame); 00197 return size; 00198 } 00199 00200 typedef boost::shared_ptr< ::srs_object_database_msgs::surf_<ContainerAllocator> > Ptr; 00201 typedef boost::shared_ptr< ::srs_object_database_msgs::surf_<ContainerAllocator> const> ConstPtr; 00202 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00203 }; // struct surf 00204 typedef ::srs_object_database_msgs::surf_<std::allocator<void> > surf; 00205 00206 typedef boost::shared_ptr< ::srs_object_database_msgs::surf> surfPtr; 00207 typedef boost::shared_ptr< ::srs_object_database_msgs::surf const> surfConstPtr; 00208 00209 00210 template<typename ContainerAllocator> 00211 std::ostream& operator<<(std::ostream& s, const ::srs_object_database_msgs::surf_<ContainerAllocator> & v) 00212 { 00213 ros::message_operations::Printer< ::srs_object_database_msgs::surf_<ContainerAllocator> >::stream(s, "", v); 00214 return s;} 00215 00216 } // namespace srs_object_database_msgs 00217 00218 namespace ros 00219 { 00220 namespace message_traits 00221 { 00222 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::surf_<ContainerAllocator> > : public TrueType {}; 00223 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::surf_<ContainerAllocator> const> : public TrueType {}; 00224 template<class ContainerAllocator> 00225 struct MD5Sum< ::srs_object_database_msgs::surf_<ContainerAllocator> > { 00226 static const char* value() 00227 { 00228 return "0faab423389dc07fa3f21ffd5950aa25"; 00229 } 00230 00231 static const char* value(const ::srs_object_database_msgs::surf_<ContainerAllocator> &) { return value(); } 00232 static const uint64_t static_value1 = 0x0faab423389dc07fULL; 00233 static const uint64_t static_value2 = 0xa3f21ffd5950aa25ULL; 00234 }; 00235 00236 template<class ContainerAllocator> 00237 struct DataType< ::srs_object_database_msgs::surf_<ContainerAllocator> > { 00238 static const char* value() 00239 { 00240 return "srs_object_database_msgs/surf"; 00241 } 00242 00243 static const char* value(const ::srs_object_database_msgs::surf_<ContainerAllocator> &) { return value(); } 00244 }; 00245 00246 template<class ContainerAllocator> 00247 struct Definition< ::srs_object_database_msgs::surf_<ContainerAllocator> > { 00248 static const char* value() 00249 { 00250 return "int32 objectId\n\ 00251 sensor_msgs/PointCloud2 surf\n\ 00252 sensor_msgs/PointCloud2 bounding_box\n\ 00253 geometry_msgs/Pose coord_frame\n\ 00254 \n\ 00255 ================================================================================\n\ 00256 MSG: sensor_msgs/PointCloud2\n\ 00257 # This message holds a collection of N-dimensional points, which may\n\ 00258 # contain additional information such as normals, intensity, etc. The\n\ 00259 # point data is stored as a binary blob, its layout described by the\n\ 00260 # contents of the \"fields\" array.\n\ 00261 \n\ 00262 # The point cloud data may be organized 2d (image-like) or 1d\n\ 00263 # (unordered). Point clouds organized as 2d images may be produced by\n\ 00264 # camera depth sensors such as stereo or time-of-flight.\n\ 00265 \n\ 00266 # Time of sensor data acquisition, and the coordinate frame ID (for 3d\n\ 00267 # points).\n\ 00268 Header header\n\ 00269 \n\ 00270 # 2D structure of the point cloud. If the cloud is unordered, height is\n\ 00271 # 1 and width is the length of the point cloud.\n\ 00272 uint32 height\n\ 00273 uint32 width\n\ 00274 \n\ 00275 # Describes the channels and their layout in the binary data blob.\n\ 00276 PointField[] fields\n\ 00277 \n\ 00278 bool is_bigendian # Is this data bigendian?\n\ 00279 uint32 point_step # Length of a point in bytes\n\ 00280 uint32 row_step # Length of a row in bytes\n\ 00281 uint8[] data # Actual point data, size is (row_step*height)\n\ 00282 \n\ 00283 bool is_dense # True if there are no invalid points\n\ 00284 \n\ 00285 ================================================================================\n\ 00286 MSG: std_msgs/Header\n\ 00287 # Standard metadata for higher-level stamped data types.\n\ 00288 # This is generally used to communicate timestamped data \n\ 00289 # in a particular coordinate frame.\n\ 00290 # \n\ 00291 # sequence ID: consecutively increasing ID \n\ 00292 uint32 seq\n\ 00293 #Two-integer timestamp that is expressed as:\n\ 00294 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00295 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00296 # time-handling sugar is provided by the client library\n\ 00297 time stamp\n\ 00298 #Frame this data is associated with\n\ 00299 # 0: no frame\n\ 00300 # 1: global frame\n\ 00301 string frame_id\n\ 00302 \n\ 00303 ================================================================================\n\ 00304 MSG: sensor_msgs/PointField\n\ 00305 # This message holds the description of one point entry in the\n\ 00306 # PointCloud2 message format.\n\ 00307 uint8 INT8 = 1\n\ 00308 uint8 UINT8 = 2\n\ 00309 uint8 INT16 = 3\n\ 00310 uint8 UINT16 = 4\n\ 00311 uint8 INT32 = 5\n\ 00312 uint8 UINT32 = 6\n\ 00313 uint8 FLOAT32 = 7\n\ 00314 uint8 FLOAT64 = 8\n\ 00315 \n\ 00316 string name # Name of field\n\ 00317 uint32 offset # Offset from start of point struct\n\ 00318 uint8 datatype # Datatype enumeration, see above\n\ 00319 uint32 count # How many elements in the field\n\ 00320 \n\ 00321 ================================================================================\n\ 00322 MSG: geometry_msgs/Pose\n\ 00323 # A representation of pose in free space, composed of postion and orientation. \n\ 00324 Point position\n\ 00325 Quaternion orientation\n\ 00326 \n\ 00327 ================================================================================\n\ 00328 MSG: geometry_msgs/Point\n\ 00329 # This contains the position of a point in free space\n\ 00330 float64 x\n\ 00331 float64 y\n\ 00332 float64 z\n\ 00333 \n\ 00334 ================================================================================\n\ 00335 MSG: geometry_msgs/Quaternion\n\ 00336 # This represents an orientation in free space in quaternion form.\n\ 00337 \n\ 00338 float64 x\n\ 00339 float64 y\n\ 00340 float64 z\n\ 00341 float64 w\n\ 00342 \n\ 00343 "; 00344 } 00345 00346 static const char* value(const ::srs_object_database_msgs::surf_<ContainerAllocator> &) { return value(); } 00347 }; 00348 00349 } // namespace message_traits 00350 } // namespace ros 00351 00352 namespace ros 00353 { 00354 namespace serialization 00355 { 00356 00357 template<class ContainerAllocator> struct Serializer< ::srs_object_database_msgs::surf_<ContainerAllocator> > 00358 { 00359 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00360 { 00361 stream.next(m.objectId); 00362 stream.next(m.surf); 00363 stream.next(m.bounding_box); 00364 stream.next(m.coord_frame); 00365 } 00366 00367 ROS_DECLARE_ALLINONE_SERIALIZER; 00368 }; // struct surf_ 00369 } // namespace serialization 00370 } // namespace ros 00371 00372 namespace ros 00373 { 00374 namespace message_operations 00375 { 00376 00377 template<class ContainerAllocator> 00378 struct Printer< ::srs_object_database_msgs::surf_<ContainerAllocator> > 00379 { 00380 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::srs_object_database_msgs::surf_<ContainerAllocator> & v) 00381 { 00382 s << indent << "objectId: "; 00383 Printer<int32_t>::stream(s, indent + " ", v.objectId); 00384 s << indent << "surf: "; 00385 s << std::endl; 00386 Printer< ::sensor_msgs::PointCloud2_<ContainerAllocator> >::stream(s, indent + " ", v.surf); 00387 s << indent << "bounding_box: "; 00388 s << std::endl; 00389 Printer< ::sensor_msgs::PointCloud2_<ContainerAllocator> >::stream(s, indent + " ", v.bounding_box); 00390 s << indent << "coord_frame: "; 00391 s << std::endl; 00392 Printer< ::geometry_msgs::Pose_<ContainerAllocator> >::stream(s, indent + " ", v.coord_frame); 00393 } 00394 }; 00395 00396 00397 } // namespace message_operations 00398 } // namespace ros 00399 00400 #endif // SRS_OBJECT_DATABASE_MSGS_MESSAGE_SURF_H 00401