Go to the documentation of this file.00001
00002 #ifndef WORLDMODEL_MSGS_SERVICE_VERIFYPERCEPT_H
00003 #define WORLDMODEL_MSGS_SERVICE_VERIFYPERCEPT_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/PosePercept.h"
00020
00021
00022
00023 namespace worldmodel_msgs
00024 {
00025 template <class ContainerAllocator>
00026 struct VerifyPerceptRequest_ {
00027 typedef VerifyPerceptRequest_<ContainerAllocator> Type;
00028
00029 VerifyPerceptRequest_()
00030 : percept()
00031 {
00032 }
00033
00034 VerifyPerceptRequest_(const ContainerAllocator& _alloc)
00035 : percept(_alloc)
00036 {
00037 }
00038
00039 typedef ::worldmodel_msgs::PosePercept_<ContainerAllocator> _percept_type;
00040 ::worldmodel_msgs::PosePercept_<ContainerAllocator> percept;
00041
00042
00043 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::worldmodel_msgs::VerifyPerceptRequest_<std::allocator<void> > VerifyPerceptRequest;
00048
00049 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptRequest> VerifyPerceptRequestPtr;
00050 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptRequest const> VerifyPerceptRequestConstPtr;
00051
00052
00053
00054 template <class ContainerAllocator>
00055 struct VerifyPerceptResponse_ {
00056 typedef VerifyPerceptResponse_<ContainerAllocator> Type;
00057
00058 VerifyPerceptResponse_()
00059 : response(0)
00060 {
00061 }
00062
00063 VerifyPerceptResponse_(const ContainerAllocator& _alloc)
00064 : response(0)
00065 {
00066 }
00067
00068 typedef uint8_t _response_type;
00069 uint8_t response;
00070
00071 enum { UNKNOWN = 0 };
00072 enum { DISCARD = 1 };
00073 enum { CONFIRM = 2 };
00074
00075 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > Ptr;
00076 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> const> ConstPtr;
00077 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00078 };
00079 typedef ::worldmodel_msgs::VerifyPerceptResponse_<std::allocator<void> > VerifyPerceptResponse;
00080
00081 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptResponse> VerifyPerceptResponsePtr;
00082 typedef boost::shared_ptr< ::worldmodel_msgs::VerifyPerceptResponse const> VerifyPerceptResponseConstPtr;
00083
00084
00085 struct VerifyPercept
00086 {
00087
00088 typedef VerifyPerceptRequest Request;
00089 typedef VerifyPerceptResponse Response;
00090 Request request;
00091 Response response;
00092
00093 typedef Request RequestType;
00094 typedef Response ResponseType;
00095 };
00096 }
00097
00098 namespace ros
00099 {
00100 namespace message_traits
00101 {
00102 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > : public TrueType {};
00103 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> const> : public TrueType {};
00104 template<class ContainerAllocator>
00105 struct MD5Sum< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > {
00106 static const char* value()
00107 {
00108 return "9bd63c0c584500367d789d059094e625";
00109 }
00110
00111 static const char* value(const ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> &) { return value(); }
00112 static const uint64_t static_value1 = 0x9bd63c0c58450036ULL;
00113 static const uint64_t static_value2 = 0x7d789d059094e625ULL;
00114 };
00115
00116 template<class ContainerAllocator>
00117 struct DataType< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > {
00118 static const char* value()
00119 {
00120 return "worldmodel_msgs/VerifyPerceptRequest";
00121 }
00122
00123 static const char* value(const ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> &) { return value(); }
00124 };
00125
00126 template<class ContainerAllocator>
00127 struct Definition< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > {
00128 static const char* value()
00129 {
00130 return "\n\
00131 \n\
00132 \n\
00133 PosePercept percept\n\
00134 \n\
00135 ================================================================================\n\
00136 MSG: worldmodel_msgs/PosePercept\n\
00137 # This message represents an observation of an object in a single image.\n\
00138 \n\
00139 # The header should equal the header of the corresponding image.\n\
00140 Header header\n\
00141 \n\
00142 # The estimated pose of the object with its covariance\n\
00143 geometry_msgs/PoseWithCovariance pose\n\
00144 \n\
00145 # Additional information about the percept\n\
00146 worldmodel_msgs/PerceptInfo info\n\
00147 \n\
00148 ================================================================================\n\
00149 MSG: std_msgs/Header\n\
00150 # Standard metadata for higher-level stamped data types.\n\
00151 # This is generally used to communicate timestamped data \n\
00152 # in a particular coordinate frame.\n\
00153 # \n\
00154 # sequence ID: consecutively increasing ID \n\
00155 uint32 seq\n\
00156 #Two-integer timestamp that is expressed as:\n\
00157 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00158 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00159 # time-handling sugar is provided by the client library\n\
00160 time stamp\n\
00161 #Frame this data is associated with\n\
00162 # 0: no frame\n\
00163 # 1: global frame\n\
00164 string frame_id\n\
00165 \n\
00166 ================================================================================\n\
00167 MSG: geometry_msgs/PoseWithCovariance\n\
00168 # This represents a pose in free space with uncertainty.\n\
00169 \n\
00170 Pose pose\n\
00171 \n\
00172 # Row-major representation of the 6x6 covariance matrix\n\
00173 # The orientation parameters use a fixed-axis representation.\n\
00174 # In order, the parameters are:\n\
00175 # (x, y, z, rotation about X axis, rotation about Y axis, rotation about Z axis)\n\
00176 float64[36] covariance\n\
00177 \n\
00178 ================================================================================\n\
00179 MSG: geometry_msgs/Pose\n\
00180 # A representation of pose in free space, composed of postion and orientation. \n\
00181 Point position\n\
00182 Quaternion orientation\n\
00183 \n\
00184 ================================================================================\n\
00185 MSG: geometry_msgs/Point\n\
00186 # This contains the position of a point in free space\n\
00187 float64 x\n\
00188 float64 y\n\
00189 float64 z\n\
00190 \n\
00191 ================================================================================\n\
00192 MSG: geometry_msgs/Quaternion\n\
00193 # This represents an orientation in free space in quaternion form.\n\
00194 \n\
00195 float64 x\n\
00196 float64 y\n\
00197 float64 z\n\
00198 float64 w\n\
00199 \n\
00200 ================================================================================\n\
00201 MSG: worldmodel_msgs/PerceptInfo\n\
00202 # This message contains information about the estimated class and object identity \n\
00203 \n\
00204 # A string identifying the object's class (all objects of a class look the same)\n\
00205 string class_id\n\
00206 \n\
00207 # The class association support of the observation\n\
00208 # The support is the log odd likelihood ratio given by log(p(y/observation y belongs to object of class class_id) / p(y/observation y is a false positive))\n\
00209 float32 class_support\n\
00210 \n\
00211 # A string identifying a specific object\n\
00212 string object_id\n\
00213 \n\
00214 # The object association support of the observation\n\
00215 # The support is the log odd likelihood ratio given by log(p(observation belongs to object object_id) / p(observation is false positive or belongs to another object))\n\
00216 float32 object_support\n\
00217 \n\
00218 # A string that contains the name or a description of the specific object\n\
00219 string name\n\
00220 \n\
00221 ";
00222 }
00223
00224 static const char* value(const ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> &) { return value(); }
00225 };
00226
00227 }
00228 }
00229
00230
00231 namespace ros
00232 {
00233 namespace message_traits
00234 {
00235 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > : public TrueType {};
00236 template<class ContainerAllocator> struct IsMessage< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> const> : public TrueType {};
00237 template<class ContainerAllocator>
00238 struct MD5Sum< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > {
00239 static const char* value()
00240 {
00241 return "a4e2509e523147799a63deb6a40a0721";
00242 }
00243
00244 static const char* value(const ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> &) { return value(); }
00245 static const uint64_t static_value1 = 0xa4e2509e52314779ULL;
00246 static const uint64_t static_value2 = 0x9a63deb6a40a0721ULL;
00247 };
00248
00249 template<class ContainerAllocator>
00250 struct DataType< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > {
00251 static const char* value()
00252 {
00253 return "worldmodel_msgs/VerifyPerceptResponse";
00254 }
00255
00256 static const char* value(const ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> &) { return value(); }
00257 };
00258
00259 template<class ContainerAllocator>
00260 struct Definition< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > {
00261 static const char* value()
00262 {
00263 return "\n\
00264 uint8 response\n\
00265 uint8 UNKNOWN = 0\n\
00266 uint8 DISCARD = 1\n\
00267 uint8 CONFIRM = 2\n\
00268 \n\
00269 \n\
00270 ";
00271 }
00272
00273 static const char* value(const ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> &) { return value(); }
00274 };
00275
00276 template<class ContainerAllocator> struct IsFixedSize< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > : public TrueType {};
00277 }
00278 }
00279
00280 namespace ros
00281 {
00282 namespace serialization
00283 {
00284
00285 template<class ContainerAllocator> struct Serializer< ::worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> >
00286 {
00287 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00288 {
00289 stream.next(m.percept);
00290 }
00291
00292 ROS_DECLARE_ALLINONE_SERIALIZER;
00293 };
00294 }
00295 }
00296
00297
00298 namespace ros
00299 {
00300 namespace serialization
00301 {
00302
00303 template<class ContainerAllocator> struct Serializer< ::worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> >
00304 {
00305 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00306 {
00307 stream.next(m.response);
00308 }
00309
00310 ROS_DECLARE_ALLINONE_SERIALIZER;
00311 };
00312 }
00313 }
00314
00315 namespace ros
00316 {
00317 namespace service_traits
00318 {
00319 template<>
00320 struct MD5Sum<worldmodel_msgs::VerifyPercept> {
00321 static const char* value()
00322 {
00323 return "4274b9c0812a5a8c107aa29835bb1b45";
00324 }
00325
00326 static const char* value(const worldmodel_msgs::VerifyPercept&) { return value(); }
00327 };
00328
00329 template<>
00330 struct DataType<worldmodel_msgs::VerifyPercept> {
00331 static const char* value()
00332 {
00333 return "worldmodel_msgs/VerifyPercept";
00334 }
00335
00336 static const char* value(const worldmodel_msgs::VerifyPercept&) { return value(); }
00337 };
00338
00339 template<class ContainerAllocator>
00340 struct MD5Sum<worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > {
00341 static const char* value()
00342 {
00343 return "4274b9c0812a5a8c107aa29835bb1b45";
00344 }
00345
00346 static const char* value(const worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> &) { return value(); }
00347 };
00348
00349 template<class ContainerAllocator>
00350 struct DataType<worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> > {
00351 static const char* value()
00352 {
00353 return "worldmodel_msgs/VerifyPercept";
00354 }
00355
00356 static const char* value(const worldmodel_msgs::VerifyPerceptRequest_<ContainerAllocator> &) { return value(); }
00357 };
00358
00359 template<class ContainerAllocator>
00360 struct MD5Sum<worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > {
00361 static const char* value()
00362 {
00363 return "4274b9c0812a5a8c107aa29835bb1b45";
00364 }
00365
00366 static const char* value(const worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> &) { return value(); }
00367 };
00368
00369 template<class ContainerAllocator>
00370 struct DataType<worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> > {
00371 static const char* value()
00372 {
00373 return "worldmodel_msgs/VerifyPercept";
00374 }
00375
00376 static const char* value(const worldmodel_msgs::VerifyPerceptResponse_<ContainerAllocator> &) { return value(); }
00377 };
00378
00379 }
00380 }
00381
00382 #endif // WORLDMODEL_MSGS_SERVICE_VERIFYPERCEPT_H
00383