Go to the documentation of this file.00001
00002 #ifndef POSEDETECTION_MSGS_SERVICE_FEATURE1DDETECT_H
00003 #define POSEDETECTION_MSGS_SERVICE_FEATURE1DDETECT_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/Feature1D.h"
00023
00024 namespace posedetection_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct Feature1DDetectRequest_ {
00028 typedef Feature1DDetectRequest_<ContainerAllocator> Type;
00029
00030 Feature1DDetectRequest_()
00031 : image()
00032 {
00033 }
00034
00035 Feature1DDetectRequest_(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::Feature1DDetectRequest_<ContainerAllocator> > Ptr;
00045 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> const> ConstPtr;
00046 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00047 };
00048 typedef ::posedetection_msgs::Feature1DDetectRequest_<std::allocator<void> > Feature1DDetectRequest;
00049
00050 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectRequest> Feature1DDetectRequestPtr;
00051 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectRequest const> Feature1DDetectRequestConstPtr;
00052
00053
00054 template <class ContainerAllocator>
00055 struct Feature1DDetectResponse_ {
00056 typedef Feature1DDetectResponse_<ContainerAllocator> Type;
00057
00058 Feature1DDetectResponse_()
00059 : features()
00060 {
00061 }
00062
00063 Feature1DDetectResponse_(const ContainerAllocator& _alloc)
00064 : features(_alloc)
00065 {
00066 }
00067
00068 typedef ::posedetection_msgs::Feature1D_<ContainerAllocator> _features_type;
00069 ::posedetection_msgs::Feature1D_<ContainerAllocator> features;
00070
00071
00072 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > Ptr;
00073 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> const> ConstPtr;
00074 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00075 };
00076 typedef ::posedetection_msgs::Feature1DDetectResponse_<std::allocator<void> > Feature1DDetectResponse;
00077
00078 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectResponse> Feature1DDetectResponsePtr;
00079 typedef boost::shared_ptr< ::posedetection_msgs::Feature1DDetectResponse const> Feature1DDetectResponseConstPtr;
00080
00081 struct Feature1DDetect
00082 {
00083
00084 typedef Feature1DDetectRequest Request;
00085 typedef Feature1DDetectResponse 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::Feature1DDetectRequest_<ContainerAllocator> > : public TrueType {};
00099 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> const> : public TrueType {};
00100 template<class ContainerAllocator>
00101 struct MD5Sum< ::posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> > {
00102 static const char* value()
00103 {
00104 return "b13d2865c5af2a64e6e30ab1b56e1dd5";
00105 }
00106
00107 static const char* value(const ::posedetection_msgs::Feature1DDetectRequest_<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::Feature1DDetectRequest_<ContainerAllocator> > {
00114 static const char* value()
00115 {
00116 return "posedetection_msgs/Feature1DDetectRequest";
00117 }
00118
00119 static const char* value(const ::posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> &) { return value(); }
00120 };
00121
00122 template<class ContainerAllocator>
00123 struct Definition< ::posedetection_msgs::Feature1DDetectRequest_<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::Feature1DDetectRequest_<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::Feature1DDetectResponse_<ContainerAllocator> > : public TrueType {};
00191 template<class ContainerAllocator> struct IsMessage< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> const> : public TrueType {};
00192 template<class ContainerAllocator>
00193 struct MD5Sum< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > {
00194 static const char* value()
00195 {
00196 return "37f67775de1cbab99b78b350a3d63479";
00197 }
00198
00199 static const char* value(const ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> &) { return value(); }
00200 static const uint64_t static_value1 = 0x37f67775de1cbab9ULL;
00201 static const uint64_t static_value2 = 0x9b78b350a3d63479ULL;
00202 };
00203
00204 template<class ContainerAllocator>
00205 struct DataType< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > {
00206 static const char* value()
00207 {
00208 return "posedetection_msgs/Feature1DDetectResponse";
00209 }
00210
00211 static const char* value(const ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> &) { return value(); }
00212 };
00213
00214 template<class ContainerAllocator>
00215 struct Definition< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > {
00216 static const char* value()
00217 {
00218 return "posedetection_msgs/Feature1D features\n\
00219 \n\
00220 \n\
00221 ================================================================================\n\
00222 MSG: posedetection_msgs/Feature1D\n\
00223 Header header\n\
00224 Curve1D[] lines # N, 0-indexed\n\
00225 float32[] descriptors # N*descriptor_dim\n\
00226 float32[] confidences # optional\n\
00227 int32 descriptor_dim\n\
00228 \n\
00229 ================================================================================\n\
00230 MSG: std_msgs/Header\n\
00231 # Standard metadata for higher-level stamped data types.\n\
00232 # This is generally used to communicate timestamped data \n\
00233 # in a particular coordinate frame.\n\
00234 # \n\
00235 # sequence ID: consecutively increasing ID \n\
00236 uint32 seq\n\
00237 #Two-integer timestamp that is expressed as:\n\
00238 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00239 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00240 # time-handling sugar is provided by the client library\n\
00241 time stamp\n\
00242 #Frame this data is associated with\n\
00243 # 0: no frame\n\
00244 # 1: global frame\n\
00245 string frame_id\n\
00246 \n\
00247 ================================================================================\n\
00248 MSG: posedetection_msgs/Curve1D\n\
00249 float32[] pts # 2xN points in the image\n\
00250 \n\
00251 ";
00252 }
00253
00254 static const char* value(const ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> &) { return value(); }
00255 };
00256
00257 }
00258 }
00259
00260 namespace ros
00261 {
00262 namespace serialization
00263 {
00264
00265 template<class ContainerAllocator> struct Serializer< ::posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> >
00266 {
00267 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00268 {
00269 stream.next(m.image);
00270 }
00271
00272 ROS_DECLARE_ALLINONE_SERIALIZER;
00273 };
00274 }
00275 }
00276
00277
00278 namespace ros
00279 {
00280 namespace serialization
00281 {
00282
00283 template<class ContainerAllocator> struct Serializer< ::posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> >
00284 {
00285 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00286 {
00287 stream.next(m.features);
00288 }
00289
00290 ROS_DECLARE_ALLINONE_SERIALIZER;
00291 };
00292 }
00293 }
00294
00295 namespace ros
00296 {
00297 namespace service_traits
00298 {
00299 template<>
00300 struct MD5Sum<posedetection_msgs::Feature1DDetect> {
00301 static const char* value()
00302 {
00303 return "c07b4e71dbfbfe7a205001db734b6cdf";
00304 }
00305
00306 static const char* value(const posedetection_msgs::Feature1DDetect&) { return value(); }
00307 };
00308
00309 template<>
00310 struct DataType<posedetection_msgs::Feature1DDetect> {
00311 static const char* value()
00312 {
00313 return "posedetection_msgs/Feature1DDetect";
00314 }
00315
00316 static const char* value(const posedetection_msgs::Feature1DDetect&) { return value(); }
00317 };
00318
00319 template<class ContainerAllocator>
00320 struct MD5Sum<posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> > {
00321 static const char* value()
00322 {
00323 return "c07b4e71dbfbfe7a205001db734b6cdf";
00324 }
00325
00326 static const char* value(const posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> &) { return value(); }
00327 };
00328
00329 template<class ContainerAllocator>
00330 struct DataType<posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> > {
00331 static const char* value()
00332 {
00333 return "posedetection_msgs/Feature1DDetect";
00334 }
00335
00336 static const char* value(const posedetection_msgs::Feature1DDetectRequest_<ContainerAllocator> &) { return value(); }
00337 };
00338
00339 template<class ContainerAllocator>
00340 struct MD5Sum<posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > {
00341 static const char* value()
00342 {
00343 return "c07b4e71dbfbfe7a205001db734b6cdf";
00344 }
00345
00346 static const char* value(const posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> &) { return value(); }
00347 };
00348
00349 template<class ContainerAllocator>
00350 struct DataType<posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> > {
00351 static const char* value()
00352 {
00353 return "posedetection_msgs/Feature1DDetect";
00354 }
00355
00356 static const char* value(const posedetection_msgs::Feature1DDetectResponse_<ContainerAllocator> &) { return value(); }
00357 };
00358
00359 }
00360 }
00361
00362 #endif // POSEDETECTION_MSGS_SERVICE_FEATURE1DDETECT_H
00363