Go to the documentation of this file.00001
00002 #ifndef POSEDETECTION_MSGS_SERVICE_FEATURE0DDETECT_H
00003 #define POSEDETECTION_MSGS_SERVICE_FEATURE0DDETECT_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 "sensor_msgs/Image.h"
00020
00021
00022 #include "posedetection_msgs/Feature0D.h"
00023
00024 namespace posedetection_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct Feature0DDetectRequest_ {
00028 typedef Feature0DDetectRequest_<ContainerAllocator> Type;
00029
00030 Feature0DDetectRequest_()
00031 : image()
00032 {
00033 }
00034
00035 Feature0DDetectRequest_(const ContainerAllocator& _alloc)
00036 : image(_alloc)
00037 {
00038 }
00039
00040 typedef ::sensor_msgs::Image_<ContainerAllocator> _image_type;
00041 ::sensor_msgs::Image_<ContainerAllocator> image;
00042
00043
00044 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > Ptr;
00045 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> const> ConstPtr;
00046 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00047 };
00048 typedef ::posedetection_msgs::Feature0DDetectRequest_<std::allocator<void> > Feature0DDetectRequest;
00049
00050 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectRequest> Feature0DDetectRequestPtr;
00051 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectRequest const> Feature0DDetectRequestConstPtr;
00052
00053
00054 template <class ContainerAllocator>
00055 struct Feature0DDetectResponse_ {
00056 typedef Feature0DDetectResponse_<ContainerAllocator> Type;
00057
00058 Feature0DDetectResponse_()
00059 : features()
00060 {
00061 }
00062
00063 Feature0DDetectResponse_(const ContainerAllocator& _alloc)
00064 : features(_alloc)
00065 {
00066 }
00067
00068 typedef ::posedetection_msgs::Feature0D_<ContainerAllocator> _features_type;
00069 ::posedetection_msgs::Feature0D_<ContainerAllocator> features;
00070
00071
00072 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > Ptr;
00073 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> const> ConstPtr;
00074 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00075 };
00076 typedef ::posedetection_msgs::Feature0DDetectResponse_<std::allocator<void> > Feature0DDetectResponse;
00077
00078 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectResponse> Feature0DDetectResponsePtr;
00079 typedef boost::shared_ptr< ::posedetection_msgs::Feature0DDetectResponse const> Feature0DDetectResponseConstPtr;
00080
00081 struct Feature0DDetect
00082 {
00083
00084 typedef Feature0DDetectRequest Request;
00085 typedef Feature0DDetectResponse Response;
00086 Request request;
00087 Response response;
00088
00089 typedef Request RequestType;
00090 typedef Response ResponseType;
00091 };
00092 }
00093
00094 namespace ros
00095 {
00096 namespace message_traits
00097 {
00098 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > : public TrueType {};
00099 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> const> : public TrueType {};
00100 template<class ContainerAllocator>
00101 struct MD5Sum< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > {
00102 static const char* value()
00103 {
00104 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00105 }
00106
00107 static const char* value(const ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> &) { return value(); }
00108 static const uint64_t static_value1 = 0xb13d2865c5af2a64ULL;
00109 static const uint64_t static_value2 = 0xe6e30ab1b56e1dd5ULL;
00110 };
00111
00112 template<class ContainerAllocator>
00113 struct DataType< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > {
00114 static const char* value()
00115 {
00116 return "posedetection_msgs/Feature0DDetectRequest";
00117 }
00118
00119 static const char* value(const ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> &) { return value(); }
00120 };
00121
00122 template<class ContainerAllocator>
00123 struct Definition< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > {
00124 static const char* value()
00125 {
00126 return "sensor_msgs/Image image\n\
00127 \n\
00128 ================================================================================\n\
00129 MSG: sensor_msgs/Image\n\
00130 # This message contains an uncompressed image\n\
00131 # (0, 0) is at top-left corner of image\n\
00132 #\n\
00133 \n\
00134 Header header # Header timestamp should be acquisition time of image\n\
00135 # Header frame_id should be optical frame of camera\n\
00136 # origin of frame should be optical center of cameara\n\
00137 # +x should point to the right in the image\n\
00138 # +y should point down in the image\n\
00139 # +z should point into to plane of the image\n\
00140 # If the frame_id here and the frame_id of the CameraInfo\n\
00141 # message associated with the image conflict\n\
00142 # the behavior is undefined\n\
00143 \n\
00144 uint32 height # image height, that is, number of rows\n\
00145 uint32 width # image width, that is, number of columns\n\
00146 \n\
00147 # The legal values for encoding are in file src/image_encodings.cpp\n\
00148 # If you want to standardize a new string format, join\n\
00149 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\
00150 \n\
00151 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\
00152 # taken from the list of strings in src/image_encodings.cpp\n\
00153 \n\
00154 uint8 is_bigendian # is this data bigendian?\n\
00155 uint32 step # Full row length in bytes\n\
00156 uint8[] data # actual matrix data, size is (step * rows)\n\
00157 \n\
00158 ================================================================================\n\
00159 MSG: std_msgs/Header\n\
00160 # Standard metadata for higher-level stamped data types.\n\
00161 # This is generally used to communicate timestamped data \n\
00162 # in a particular coordinate frame.\n\
00163 # \n\
00164 # sequence ID: consecutively increasing ID \n\
00165 uint32 seq\n\
00166 #Two-integer timestamp that is expressed as:\n\
00167 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00168 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00169 # time-handling sugar is provided by the client library\n\
00170 time stamp\n\
00171 #Frame this data is associated with\n\
00172 # 0: no frame\n\
00173 # 1: global frame\n\
00174 string frame_id\n\
00175 \n\
00176 ";
00177 }
00178
00179 static const char* value(const ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> &) { return value(); }
00180 };
00181
00182 }
00183 }
00184
00185
00186 namespace ros
00187 {
00188 namespace message_traits
00189 {
00190 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > : public TrueType {};
00191 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> const> : public TrueType {};
00192 template<class ContainerAllocator>
00193 struct MD5Sum< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > {
00194 static const char* value()
00195 {
00196 return "fa5677bbe36e6cfb2be31b9bbea8bcae";
00197 }
00198
00199 static const char* value(const ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> &) { return value(); }
00200 static const uint64_t static_value1 = 0xfa5677bbe36e6cfbULL;
00201 static const uint64_t static_value2 = 0x2be31b9bbea8bcaeULL;
00202 };
00203
00204 template<class ContainerAllocator>
00205 struct DataType< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > {
00206 static const char* value()
00207 {
00208 return "posedetection_msgs/Feature0DDetectResponse";
00209 }
00210
00211 static const char* value(const ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> &) { return value(); }
00212 };
00213
00214 template<class ContainerAllocator>
00215 struct Definition< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > {
00216 static const char* value()
00217 {
00218 return "posedetection_msgs/Feature0D features\n\
00219 \n\
00220 \n\
00221 ================================================================================\n\
00222 MSG: posedetection_msgs/Feature0D\n\
00223 Header header\n\
00224 float32[] positions # 2*N, 0-indexed\n\
00225 float32[] scales # N, optional\n\
00226 float32[] orientations # N, optional, along +X is 0\n\
00227 float32[] confidences\n\
00228 float32[] descriptors # N*descriptor_dim\n\
00229 int32 descriptor_dim\n\
00230 string type # type of feature\n\
00231 \n\
00232 ================================================================================\n\
00233 MSG: std_msgs/Header\n\
00234 # Standard metadata for higher-level stamped data types.\n\
00235 # This is generally used to communicate timestamped data \n\
00236 # in a particular coordinate frame.\n\
00237 # \n\
00238 # sequence ID: consecutively increasing ID \n\
00239 uint32 seq\n\
00240 #Two-integer timestamp that is expressed as:\n\
00241 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00242 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00243 # time-handling sugar is provided by the client library\n\
00244 time stamp\n\
00245 #Frame this data is associated with\n\
00246 # 0: no frame\n\
00247 # 1: global frame\n\
00248 string frame_id\n\
00249 \n\
00250 ";
00251 }
00252
00253 static const char* value(const ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> &) { return value(); }
00254 };
00255
00256 }
00257 }
00258
00259 namespace ros
00260 {
00261 namespace serialization
00262 {
00263
00264 template<class ContainerAllocator> struct Serializer< ::posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> >
00265 {
00266 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00267 {
00268 stream.next(m.image);
00269 }
00270
00271 ROS_DECLARE_ALLINONE_SERIALIZER;
00272 };
00273 }
00274 }
00275
00276
00277 namespace ros
00278 {
00279 namespace serialization
00280 {
00281
00282 template<class ContainerAllocator> struct Serializer< ::posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> >
00283 {
00284 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00285 {
00286 stream.next(m.features);
00287 }
00288
00289 ROS_DECLARE_ALLINONE_SERIALIZER;
00290 };
00291 }
00292 }
00293
00294 namespace ros
00295 {
00296 namespace service_traits
00297 {
00298 template<>
00299 struct MD5Sum<posedetection_msgs::Feature0DDetect> {
00300 static const char* value()
00301 {
00302 return "abc004df074d18a6645a71894c243592";
00303 }
00304
00305 static const char* value(const posedetection_msgs::Feature0DDetect&) { return value(); }
00306 };
00307
00308 template<>
00309 struct DataType<posedetection_msgs::Feature0DDetect> {
00310 static const char* value()
00311 {
00312 return "posedetection_msgs/Feature0DDetect";
00313 }
00314
00315 static const char* value(const posedetection_msgs::Feature0DDetect&) { return value(); }
00316 };
00317
00318 template<class ContainerAllocator>
00319 struct MD5Sum<posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > {
00320 static const char* value()
00321 {
00322 return "abc004df074d18a6645a71894c243592";
00323 }
00324
00325 static const char* value(const posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> &) { return value(); }
00326 };
00327
00328 template<class ContainerAllocator>
00329 struct DataType<posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> > {
00330 static const char* value()
00331 {
00332 return "posedetection_msgs/Feature0DDetect";
00333 }
00334
00335 static const char* value(const posedetection_msgs::Feature0DDetectRequest_<ContainerAllocator> &) { return value(); }
00336 };
00337
00338 template<class ContainerAllocator>
00339 struct MD5Sum<posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > {
00340 static const char* value()
00341 {
00342 return "abc004df074d18a6645a71894c243592";
00343 }
00344
00345 static const char* value(const posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> &) { return value(); }
00346 };
00347
00348 template<class ContainerAllocator>
00349 struct DataType<posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> > {
00350 static const char* value()
00351 {
00352 return "posedetection_msgs/Feature0DDetect";
00353 }
00354
00355 static const char* value(const posedetection_msgs::Feature0DDetectResponse_<ContainerAllocator> &) { return value(); }
00356 };
00357
00358 }
00359 }
00360
00361 #endif // POSEDETECTION_MSGS_SERVICE_FEATURE0DDETECT_H
00362