$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-pr2_object_manipulation/doc_stacks/2013-03-05_12-10-38.333207/pr2_object_manipulation/applications/pr2_create_object_model/msg/ObjectInHand.msg */ 00002 #ifndef PR2_CREATE_OBJECT_MODEL_MESSAGE_OBJECTINHAND_H 00003 #define PR2_CREATE_OBJECT_MODEL_MESSAGE_OBJECTINHAND_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 00019 namespace pr2_create_object_model 00020 { 00021 template <class ContainerAllocator> 00022 struct ObjectInHand_ { 00023 typedef ObjectInHand_<ContainerAllocator> Type; 00024 00025 ObjectInHand_() 00026 : arm_name() 00027 , cluster() 00028 , collision_name() 00029 { 00030 } 00031 00032 ObjectInHand_(const ContainerAllocator& _alloc) 00033 : arm_name(_alloc) 00034 , cluster(_alloc) 00035 , collision_name(_alloc) 00036 { 00037 } 00038 00039 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _arm_name_type; 00040 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > arm_name; 00041 00042 typedef ::sensor_msgs::PointCloud2_<ContainerAllocator> _cluster_type; 00043 ::sensor_msgs::PointCloud2_<ContainerAllocator> cluster; 00044 00045 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _collision_name_type; 00046 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > collision_name; 00047 00048 00049 private: 00050 static const char* __s_getDataType_() { return "pr2_create_object_model/ObjectInHand"; } 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 "4fc0573025d65bdcd1b2ae03b3b53c3e"; } 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 "string arm_name\n\ 00065 sensor_msgs/PointCloud2 cluster\n\ 00066 string collision_name\n\ 00067 \n\ 00068 ================================================================================\n\ 00069 MSG: sensor_msgs/PointCloud2\n\ 00070 # This message holds a collection of N-dimensional points, which may\n\ 00071 # contain additional information such as normals, intensity, etc. The\n\ 00072 # point data is stored as a binary blob, its layout described by the\n\ 00073 # contents of the \"fields\" array.\n\ 00074 \n\ 00075 # The point cloud data may be organized 2d (image-like) or 1d\n\ 00076 # (unordered). Point clouds organized as 2d images may be produced by\n\ 00077 # camera depth sensors such as stereo or time-of-flight.\n\ 00078 \n\ 00079 # Time of sensor data acquisition, and the coordinate frame ID (for 3d\n\ 00080 # points).\n\ 00081 Header header\n\ 00082 \n\ 00083 # 2D structure of the point cloud. If the cloud is unordered, height is\n\ 00084 # 1 and width is the length of the point cloud.\n\ 00085 uint32 height\n\ 00086 uint32 width\n\ 00087 \n\ 00088 # Describes the channels and their layout in the binary data blob.\n\ 00089 PointField[] fields\n\ 00090 \n\ 00091 bool is_bigendian # Is this data bigendian?\n\ 00092 uint32 point_step # Length of a point in bytes\n\ 00093 uint32 row_step # Length of a row in bytes\n\ 00094 uint8[] data # Actual point data, size is (row_step*height)\n\ 00095 \n\ 00096 bool is_dense # True if there are no invalid points\n\ 00097 \n\ 00098 ================================================================================\n\ 00099 MSG: std_msgs/Header\n\ 00100 # Standard metadata for higher-level stamped data types.\n\ 00101 # This is generally used to communicate timestamped data \n\ 00102 # in a particular coordinate frame.\n\ 00103 # \n\ 00104 # sequence ID: consecutively increasing ID \n\ 00105 uint32 seq\n\ 00106 #Two-integer timestamp that is expressed as:\n\ 00107 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00108 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00109 # time-handling sugar is provided by the client library\n\ 00110 time stamp\n\ 00111 #Frame this data is associated with\n\ 00112 # 0: no frame\n\ 00113 # 1: global frame\n\ 00114 string frame_id\n\ 00115 \n\ 00116 ================================================================================\n\ 00117 MSG: sensor_msgs/PointField\n\ 00118 # This message holds the description of one point entry in the\n\ 00119 # PointCloud2 message format.\n\ 00120 uint8 INT8 = 1\n\ 00121 uint8 UINT8 = 2\n\ 00122 uint8 INT16 = 3\n\ 00123 uint8 UINT16 = 4\n\ 00124 uint8 INT32 = 5\n\ 00125 uint8 UINT32 = 6\n\ 00126 uint8 FLOAT32 = 7\n\ 00127 uint8 FLOAT64 = 8\n\ 00128 \n\ 00129 string name # Name of field\n\ 00130 uint32 offset # Offset from start of point struct\n\ 00131 uint8 datatype # Datatype enumeration, see above\n\ 00132 uint32 count # How many elements in the field\n\ 00133 \n\ 00134 "; } 00135 public: 00136 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00137 00138 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00139 00140 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00141 { 00142 ros::serialization::OStream stream(write_ptr, 1000000000); 00143 ros::serialization::serialize(stream, arm_name); 00144 ros::serialization::serialize(stream, cluster); 00145 ros::serialization::serialize(stream, collision_name); 00146 return stream.getData(); 00147 } 00148 00149 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00150 { 00151 ros::serialization::IStream stream(read_ptr, 1000000000); 00152 ros::serialization::deserialize(stream, arm_name); 00153 ros::serialization::deserialize(stream, cluster); 00154 ros::serialization::deserialize(stream, collision_name); 00155 return stream.getData(); 00156 } 00157 00158 ROS_DEPRECATED virtual uint32_t serializationLength() const 00159 { 00160 uint32_t size = 0; 00161 size += ros::serialization::serializationLength(arm_name); 00162 size += ros::serialization::serializationLength(cluster); 00163 size += ros::serialization::serializationLength(collision_name); 00164 return size; 00165 } 00166 00167 typedef boost::shared_ptr< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > Ptr; 00168 typedef boost::shared_ptr< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> const> ConstPtr; 00169 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00170 }; // struct ObjectInHand 00171 typedef ::pr2_create_object_model::ObjectInHand_<std::allocator<void> > ObjectInHand; 00172 00173 typedef boost::shared_ptr< ::pr2_create_object_model::ObjectInHand> ObjectInHandPtr; 00174 typedef boost::shared_ptr< ::pr2_create_object_model::ObjectInHand const> ObjectInHandConstPtr; 00175 00176 00177 template<typename ContainerAllocator> 00178 std::ostream& operator<<(std::ostream& s, const ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> & v) 00179 { 00180 ros::message_operations::Printer< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> >::stream(s, "", v); 00181 return s;} 00182 00183 } // namespace pr2_create_object_model 00184 00185 namespace ros 00186 { 00187 namespace message_traits 00188 { 00189 template<class ContainerAllocator> struct IsMessage< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > : public TrueType {}; 00190 template<class ContainerAllocator> struct IsMessage< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> const> : public TrueType {}; 00191 template<class ContainerAllocator> 00192 struct MD5Sum< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > { 00193 static const char* value() 00194 { 00195 return "4fc0573025d65bdcd1b2ae03b3b53c3e"; 00196 } 00197 00198 static const char* value(const ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> &) { return value(); } 00199 static const uint64_t static_value1 = 0x4fc0573025d65bdcULL; 00200 static const uint64_t static_value2 = 0xd1b2ae03b3b53c3eULL; 00201 }; 00202 00203 template<class ContainerAllocator> 00204 struct DataType< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > { 00205 static const char* value() 00206 { 00207 return "pr2_create_object_model/ObjectInHand"; 00208 } 00209 00210 static const char* value(const ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> &) { return value(); } 00211 }; 00212 00213 template<class ContainerAllocator> 00214 struct Definition< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > { 00215 static const char* value() 00216 { 00217 return "string arm_name\n\ 00218 sensor_msgs/PointCloud2 cluster\n\ 00219 string collision_name\n\ 00220 \n\ 00221 ================================================================================\n\ 00222 MSG: sensor_msgs/PointCloud2\n\ 00223 # This message holds a collection of N-dimensional points, which may\n\ 00224 # contain additional information such as normals, intensity, etc. The\n\ 00225 # point data is stored as a binary blob, its layout described by the\n\ 00226 # contents of the \"fields\" array.\n\ 00227 \n\ 00228 # The point cloud data may be organized 2d (image-like) or 1d\n\ 00229 # (unordered). Point clouds organized as 2d images may be produced by\n\ 00230 # camera depth sensors such as stereo or time-of-flight.\n\ 00231 \n\ 00232 # Time of sensor data acquisition, and the coordinate frame ID (for 3d\n\ 00233 # points).\n\ 00234 Header header\n\ 00235 \n\ 00236 # 2D structure of the point cloud. If the cloud is unordered, height is\n\ 00237 # 1 and width is the length of the point cloud.\n\ 00238 uint32 height\n\ 00239 uint32 width\n\ 00240 \n\ 00241 # Describes the channels and their layout in the binary data blob.\n\ 00242 PointField[] fields\n\ 00243 \n\ 00244 bool is_bigendian # Is this data bigendian?\n\ 00245 uint32 point_step # Length of a point in bytes\n\ 00246 uint32 row_step # Length of a row in bytes\n\ 00247 uint8[] data # Actual point data, size is (row_step*height)\n\ 00248 \n\ 00249 bool is_dense # True if there are no invalid points\n\ 00250 \n\ 00251 ================================================================================\n\ 00252 MSG: std_msgs/Header\n\ 00253 # Standard metadata for higher-level stamped data types.\n\ 00254 # This is generally used to communicate timestamped data \n\ 00255 # in a particular coordinate frame.\n\ 00256 # \n\ 00257 # sequence ID: consecutively increasing ID \n\ 00258 uint32 seq\n\ 00259 #Two-integer timestamp that is expressed as:\n\ 00260 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00261 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00262 # time-handling sugar is provided by the client library\n\ 00263 time stamp\n\ 00264 #Frame this data is associated with\n\ 00265 # 0: no frame\n\ 00266 # 1: global frame\n\ 00267 string frame_id\n\ 00268 \n\ 00269 ================================================================================\n\ 00270 MSG: sensor_msgs/PointField\n\ 00271 # This message holds the description of one point entry in the\n\ 00272 # PointCloud2 message format.\n\ 00273 uint8 INT8 = 1\n\ 00274 uint8 UINT8 = 2\n\ 00275 uint8 INT16 = 3\n\ 00276 uint8 UINT16 = 4\n\ 00277 uint8 INT32 = 5\n\ 00278 uint8 UINT32 = 6\n\ 00279 uint8 FLOAT32 = 7\n\ 00280 uint8 FLOAT64 = 8\n\ 00281 \n\ 00282 string name # Name of field\n\ 00283 uint32 offset # Offset from start of point struct\n\ 00284 uint8 datatype # Datatype enumeration, see above\n\ 00285 uint32 count # How many elements in the field\n\ 00286 \n\ 00287 "; 00288 } 00289 00290 static const char* value(const ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> &) { return value(); } 00291 }; 00292 00293 } // namespace message_traits 00294 } // namespace ros 00295 00296 namespace ros 00297 { 00298 namespace serialization 00299 { 00300 00301 template<class ContainerAllocator> struct Serializer< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > 00302 { 00303 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00304 { 00305 stream.next(m.arm_name); 00306 stream.next(m.cluster); 00307 stream.next(m.collision_name); 00308 } 00309 00310 ROS_DECLARE_ALLINONE_SERIALIZER; 00311 }; // struct ObjectInHand_ 00312 } // namespace serialization 00313 } // namespace ros 00314 00315 namespace ros 00316 { 00317 namespace message_operations 00318 { 00319 00320 template<class ContainerAllocator> 00321 struct Printer< ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> > 00322 { 00323 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::pr2_create_object_model::ObjectInHand_<ContainerAllocator> & v) 00324 { 00325 s << indent << "arm_name: "; 00326 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.arm_name); 00327 s << indent << "cluster: "; 00328 s << std::endl; 00329 Printer< ::sensor_msgs::PointCloud2_<ContainerAllocator> >::stream(s, indent + " ", v.cluster); 00330 s << indent << "collision_name: "; 00331 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.collision_name); 00332 } 00333 }; 00334 00335 00336 } // namespace message_operations 00337 } // namespace ros 00338 00339 #endif // PR2_CREATE_OBJECT_MODEL_MESSAGE_OBJECTINHAND_H 00340