Go to the documentation of this file.00001
00002 #ifndef WORLDMODEL_MSGS_SERVICE_ADDOBJECT_H
00003 #define WORLDMODEL_MSGS_SERVICE_ADDOBJECT_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 "ros/service_traits.h"
00018
00019 #include "worldmodel_msgs/Object.h"
00020
00021
00022 #include "worldmodel_msgs/Object.h"
00023
00024 namespace worldmodel_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct AddObjectRequest_ {
00028 typedef AddObjectRequest_<ContainerAllocator> Type;
00029
00030 AddObjectRequest_()
00031 : object()
00032 , map_to_next_obstacle(false)
00033 {
00034 }
00035
00036 AddObjectRequest_(const ContainerAllocator& _alloc)
00037 : object(_alloc)
00038 , map_to_next_obstacle(false)
00039 {
00040 }
00041
00042 typedef ::worldmodel_msgs::Object_<ContainerAllocator> _object_type;
00043 ::worldmodel_msgs::Object_<ContainerAllocator> object;
00044
00045 typedef uint8_t _map_to_next_obstacle_type;
00046 uint8_t map_to_next_obstacle;
00047
00048
00049 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > Ptr;
00050 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> const> ConstPtr;
00051 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00052 };
00053 typedef ::worldmodel_msgs::AddObjectRequest_<std::allocator<void> > AddObjectRequest;
00054
00055 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectRequest> AddObjectRequestPtr;
00056 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectRequest const> AddObjectRequestConstPtr;
00057
00058
00059 template <class ContainerAllocator>
00060 struct AddObjectResponse_ {
00061 typedef AddObjectResponse_<ContainerAllocator> Type;
00062
00063 AddObjectResponse_()
00064 : object()
00065 {
00066 }
00067
00068 AddObjectResponse_(const ContainerAllocator& _alloc)
00069 : object(_alloc)
00070 {
00071 }
00072
00073 typedef ::worldmodel_msgs::Object_<ContainerAllocator> _object_type;
00074 ::worldmodel_msgs::Object_<ContainerAllocator> object;
00075
00076
00077 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > Ptr;
00078 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> const> ConstPtr;
00079 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00080 };
00081 typedef ::worldmodel_msgs::AddObjectResponse_<std::allocator<void> > AddObjectResponse;
00082
00083 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectResponse> AddObjectResponsePtr;
00084 typedef boost::shared_ptr< ::worldmodel_msgs::AddObjectResponse const> AddObjectResponseConstPtr;
00085
00086 struct AddObject
00087 {
00088
00089 typedef AddObjectRequest Request;
00090 typedef AddObjectResponse Response;
00091 Request request;
00092 Response response;
00093
00094 typedef Request RequestType;
00095 typedef Response ResponseType;
00096 };
00097 }
00098
00099 namespace ros
00100 {
00101 namespace message_traits
00102 {
00103 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > : public TrueType {};
00104 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> const> : public TrueType {};
00105 template<class ContainerAllocator>
00106 struct MD5Sum< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > {
00107 static const char* value()
00108 {
00109 return "e8c82f515de9d91badcd349a0de2b742";
00110 }
00111
00112 static const char* value(const ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> &) { return value(); }
00113 static const uint64_t static_value1 = 0xe8c82f515de9d91bULL;
00114 static const uint64_t static_value2 = 0xadcd349a0de2b742ULL;
00115 };
00116
00117 template<class ContainerAllocator>
00118 struct DataType< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > {
00119 static const char* value()
00120 {
00121 return "worldmodel_msgs/AddObjectRequest";
00122 }
00123
00124 static const char* value(const ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> &) { return value(); }
00125 };
00126
00127 template<class ContainerAllocator>
00128 struct Definition< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > {
00129 static const char* value()
00130 {
00131 return "\n\
00132 \n\
00133 \n\
00134 Object object\n\
00135 \n\
00136 \n\
00137 bool map_to_next_obstacle\n\
00138 \n\
00139 ================================================================================\n\
00140 MSG: worldmodel_msgs/Object\n\
00141 # This message represents an estimate of an object's pose and identity.\n\
00142 \n\
00143 # The header.\n\
00144 # stamp: Timestamp of last update.\n\
00145 # frame_id: Coordinate frame, in which the pose is given\n\
00146 Header header\n\
00147 \n\
00148 # The pose\n\
00149 geometry_msgs/PoseWithCovariance pose\n\
00150 \n\
00151 # Further information about the object\n\
00152 ObjectInfo info\n\
00153 \n\
00154 # The tracked state of the object\n\
00155 ObjectState state\n\
00156 \n\
00157 ================================================================================\n\
00158 MSG: std_msgs/Header\n\
00159 # Standard metadata for higher-level stamped data types.\n\
00160 # This is generally used to communicate timestamped data \n\
00161 # in a particular coordinate frame.\n\
00162 # \n\
00163 # sequence ID: consecutively increasing ID \n\
00164 uint32 seq\n\
00165 #Two-integer timestamp that is expressed as:\n\
00166 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00167 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00168 # time-handling sugar is provided by the client library\n\
00169 time stamp\n\
00170 #Frame this data is associated with\n\
00171 # 0: no frame\n\
00172 # 1: global frame\n\
00173 string frame_id\n\
00174 \n\
00175 ================================================================================\n\
00176 MSG: geometry_msgs/PoseWithCovariance\n\
00177 # This represents a pose in free space with uncertainty.\n\
00178 \n\
00179 Pose pose\n\
00180 \n\
00181 # Row-major representation of the 6x6 covariance matrix\n\
00182 # The orientation parameters use a fixed-axis representation.\n\
00183 # In order, the parameters are:\n\
00184 # (x, y, z, rotation about X axis, rotation about Y axis, rotation about Z axis)\n\
00185 float64[36] covariance\n\
00186 \n\
00187 ================================================================================\n\
00188 MSG: geometry_msgs/Pose\n\
00189 # A representation of pose in free space, composed of postion and orientation. \n\
00190 Point position\n\
00191 Quaternion orientation\n\
00192 \n\
00193 ================================================================================\n\
00194 MSG: geometry_msgs/Point\n\
00195 # This contains the position of a point in free space\n\
00196 float64 x\n\
00197 float64 y\n\
00198 float64 z\n\
00199 \n\
00200 ================================================================================\n\
00201 MSG: geometry_msgs/Quaternion\n\
00202 # This represents an orientation in free space in quaternion form.\n\
00203 \n\
00204 float64 x\n\
00205 float64 y\n\
00206 float64 z\n\
00207 float64 w\n\
00208 \n\
00209 ================================================================================\n\
00210 MSG: worldmodel_msgs/ObjectInfo\n\
00211 # This message contains information about the estimated class affiliation, object id and corresponding support\n\
00212 \n\
00213 # A string identifying the object's class (all objects of a class look the same)\n\
00214 string class_id\n\
00215 \n\
00216 # A string identifying the specific object\n\
00217 string object_id\n\
00218 \n\
00219 # A string that contains the name or a description of the specific object\n\
00220 string name\n\
00221 \n\
00222 # The support (degree of belief) of the object's presence given as log odd ratio\n\
00223 float32 support\n\
00224 \n\
00225 \n\
00226 ================================================================================\n\
00227 MSG: worldmodel_msgs/ObjectState\n\
00228 # The state of an object estimate used to track\n\
00229 # states smaller than 0 disable all updates\n\
00230 \n\
00231 # Predefined states. Use states smaller than 0 or bigger than 63 for user defined states.\n\
00232 int8 UNKNOWN = 0\n\
00233 int8 PENDING = 1\n\
00234 int8 ACTIVE = 2\n\
00235 int8 INACTIVE = 3\n\
00236 int8 CONFIRMED = -1\n\
00237 int8 DISCARDED = -2\n\
00238 int8 APPROACHING = -3\n\
00239 \n\
00240 int8 state\n\
00241 \n\
00242 ";
00243 }
00244
00245 static const char* value(const ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> &) { return value(); }
00246 };
00247
00248 }
00249 }
00250
00251
00252 namespace ros
00253 {
00254 namespace message_traits
00255 {
00256 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > : public TrueType {};
00257 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> const> : public TrueType {};
00258 template<class ContainerAllocator>
00259 struct MD5Sum< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > {
00260 static const char* value()
00261 {
00262 return "45a6d744054ce4dbd66f71ccfdc20273";
00263 }
00264
00265 static const char* value(const ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> &) { return value(); }
00266 static const uint64_t static_value1 = 0x45a6d744054ce4dbULL;
00267 static const uint64_t static_value2 = 0xd66f71ccfdc20273ULL;
00268 };
00269
00270 template<class ContainerAllocator>
00271 struct DataType< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > {
00272 static const char* value()
00273 {
00274 return "worldmodel_msgs/AddObjectResponse";
00275 }
00276
00277 static const char* value(const ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> &) { return value(); }
00278 };
00279
00280 template<class ContainerAllocator>
00281 struct Definition< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > {
00282 static const char* value()
00283 {
00284 return "\n\
00285 Object object\n\
00286 \n\
00287 \n\
00288 ================================================================================\n\
00289 MSG: worldmodel_msgs/Object\n\
00290 # This message represents an estimate of an object's pose and identity.\n\
00291 \n\
00292 # The header.\n\
00293 # stamp: Timestamp of last update.\n\
00294 # frame_id: Coordinate frame, in which the pose is given\n\
00295 Header header\n\
00296 \n\
00297 # The pose\n\
00298 geometry_msgs/PoseWithCovariance pose\n\
00299 \n\
00300 # Further information about the object\n\
00301 ObjectInfo info\n\
00302 \n\
00303 # The tracked state of the object\n\
00304 ObjectState state\n\
00305 \n\
00306 ================================================================================\n\
00307 MSG: std_msgs/Header\n\
00308 # Standard metadata for higher-level stamped data types.\n\
00309 # This is generally used to communicate timestamped data \n\
00310 # in a particular coordinate frame.\n\
00311 # \n\
00312 # sequence ID: consecutively increasing ID \n\
00313 uint32 seq\n\
00314 #Two-integer timestamp that is expressed as:\n\
00315 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00316 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00317 # time-handling sugar is provided by the client library\n\
00318 time stamp\n\
00319 #Frame this data is associated with\n\
00320 # 0: no frame\n\
00321 # 1: global frame\n\
00322 string frame_id\n\
00323 \n\
00324 ================================================================================\n\
00325 MSG: geometry_msgs/PoseWithCovariance\n\
00326 # This represents a pose in free space with uncertainty.\n\
00327 \n\
00328 Pose pose\n\
00329 \n\
00330 # Row-major representation of the 6x6 covariance matrix\n\
00331 # The orientation parameters use a fixed-axis representation.\n\
00332 # In order, the parameters are:\n\
00333 # (x, y, z, rotation about X axis, rotation about Y axis, rotation about Z axis)\n\
00334 float64[36] covariance\n\
00335 \n\
00336 ================================================================================\n\
00337 MSG: geometry_msgs/Pose\n\
00338 # A representation of pose in free space, composed of postion and orientation. \n\
00339 Point position\n\
00340 Quaternion orientation\n\
00341 \n\
00342 ================================================================================\n\
00343 MSG: geometry_msgs/Point\n\
00344 # This contains the position of a point in free space\n\
00345 float64 x\n\
00346 float64 y\n\
00347 float64 z\n\
00348 \n\
00349 ================================================================================\n\
00350 MSG: geometry_msgs/Quaternion\n\
00351 # This represents an orientation in free space in quaternion form.\n\
00352 \n\
00353 float64 x\n\
00354 float64 y\n\
00355 float64 z\n\
00356 float64 w\n\
00357 \n\
00358 ================================================================================\n\
00359 MSG: worldmodel_msgs/ObjectInfo\n\
00360 # This message contains information about the estimated class affiliation, object id and corresponding support\n\
00361 \n\
00362 # A string identifying the object's class (all objects of a class look the same)\n\
00363 string class_id\n\
00364 \n\
00365 # A string identifying the specific object\n\
00366 string object_id\n\
00367 \n\
00368 # A string that contains the name or a description of the specific object\n\
00369 string name\n\
00370 \n\
00371 # The support (degree of belief) of the object's presence given as log odd ratio\n\
00372 float32 support\n\
00373 \n\
00374 \n\
00375 ================================================================================\n\
00376 MSG: worldmodel_msgs/ObjectState\n\
00377 # The state of an object estimate used to track\n\
00378 # states smaller than 0 disable all updates\n\
00379 \n\
00380 # Predefined states. Use states smaller than 0 or bigger than 63 for user defined states.\n\
00381 int8 UNKNOWN = 0\n\
00382 int8 PENDING = 1\n\
00383 int8 ACTIVE = 2\n\
00384 int8 INACTIVE = 3\n\
00385 int8 CONFIRMED = -1\n\
00386 int8 DISCARDED = -2\n\
00387 int8 APPROACHING = -3\n\
00388 \n\
00389 int8 state\n\
00390 \n\
00391 ";
00392 }
00393
00394 static const char* value(const ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> &) { return value(); }
00395 };
00396
00397 }
00398 }
00399
00400 namespace ros
00401 {
00402 namespace serialization
00403 {
00404
00405 template<class ContainerAllocator> struct Serializer< ::worldmodel_msgs::AddObjectRequest_<ContainerAllocator> >
00406 {
00407 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00408 {
00409 stream.next(m.object);
00410 stream.next(m.map_to_next_obstacle);
00411 }
00412
00413 ROS_DECLARE_ALLINONE_SERIALIZER;
00414 };
00415 }
00416 }
00417
00418
00419 namespace ros
00420 {
00421 namespace serialization
00422 {
00423
00424 template<class ContainerAllocator> struct Serializer< ::worldmodel_msgs::AddObjectResponse_<ContainerAllocator> >
00425 {
00426 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00427 {
00428 stream.next(m.object);
00429 }
00430
00431 ROS_DECLARE_ALLINONE_SERIALIZER;
00432 };
00433 }
00434 }
00435
00436 namespace ros
00437 {
00438 namespace service_traits
00439 {
00440 template<>
00441 struct MD5Sum<worldmodel_msgs::AddObject> {
00442 static const char* value()
00443 {
00444 return "3fb8af17854d0a0aa1df05f91f7ba459";
00445 }
00446
00447 static const char* value(const worldmodel_msgs::AddObject&) { return value(); }
00448 };
00449
00450 template<>
00451 struct DataType<worldmodel_msgs::AddObject> {
00452 static const char* value()
00453 {
00454 return "worldmodel_msgs/AddObject";
00455 }
00456
00457 static const char* value(const worldmodel_msgs::AddObject&) { return value(); }
00458 };
00459
00460 template<class ContainerAllocator>
00461 struct MD5Sum<worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > {
00462 static const char* value()
00463 {
00464 return "3fb8af17854d0a0aa1df05f91f7ba459";
00465 }
00466
00467 static const char* value(const worldmodel_msgs::AddObjectRequest_<ContainerAllocator> &) { return value(); }
00468 };
00469
00470 template<class ContainerAllocator>
00471 struct DataType<worldmodel_msgs::AddObjectRequest_<ContainerAllocator> > {
00472 static const char* value()
00473 {
00474 return "worldmodel_msgs/AddObject";
00475 }
00476
00477 static const char* value(const worldmodel_msgs::AddObjectRequest_<ContainerAllocator> &) { return value(); }
00478 };
00479
00480 template<class ContainerAllocator>
00481 struct MD5Sum<worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > {
00482 static const char* value()
00483 {
00484 return "3fb8af17854d0a0aa1df05f91f7ba459";
00485 }
00486
00487 static const char* value(const worldmodel_msgs::AddObjectResponse_<ContainerAllocator> &) { return value(); }
00488 };
00489
00490 template<class ContainerAllocator>
00491 struct DataType<worldmodel_msgs::AddObjectResponse_<ContainerAllocator> > {
00492 static const char* value()
00493 {
00494 return "worldmodel_msgs/AddObject";
00495 }
00496
00497 static const char* value(const worldmodel_msgs::AddObjectResponse_<ContainerAllocator> &) { return value(); }
00498 };
00499
00500 }
00501 }
00502
00503 #endif // WORLDMODEL_MSGS_SERVICE_ADDOBJECT_H
00504