$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-srs_public/doc_stacks/2013-03-05_12-22-34.333426/srs_public/srs_assisted_detection/srv/UiDetector.srv */ 00002 #ifndef SRS_ASSISTED_DETECTION_SERVICE_UIDETECTOR_H 00003 #define SRS_ASSISTED_DETECTION_SERVICE_UIDETECTOR_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 "std_msgs/String.h" 00020 00021 00022 #include "cob_object_detection_msgs/DetectionArray.h" 00023 00024 namespace srs_assisted_detection 00025 { 00026 template <class ContainerAllocator> 00027 struct UiDetectorRequest_ { 00028 typedef UiDetectorRequest_<ContainerAllocator> Type; 00029 00030 UiDetectorRequest_() 00031 : object_name() 00032 { 00033 } 00034 00035 UiDetectorRequest_(const ContainerAllocator& _alloc) 00036 : object_name(_alloc) 00037 { 00038 } 00039 00040 typedef ::std_msgs::String_<ContainerAllocator> _object_name_type; 00041 ::std_msgs::String_<ContainerAllocator> object_name; 00042 00043 00044 private: 00045 static const char* __s_getDataType_() { return "srs_assisted_detection/UiDetectorRequest"; } 00046 public: 00047 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00048 00049 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00050 00051 private: 00052 static const char* __s_getMD5Sum_() { return "adb33ef101026c3e15d799e3decf403f"; } 00053 public: 00054 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00055 00056 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00057 00058 private: 00059 static const char* __s_getServerMD5Sum_() { return "ea930acf9f671a8d56f44a28e3c18f01"; } 00060 public: 00061 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00062 00063 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00064 00065 private: 00066 static const char* __s_getMessageDefinition_() { return "\n\ 00067 std_msgs/String object_name\n\ 00068 \n\ 00069 ================================================================================\n\ 00070 MSG: std_msgs/String\n\ 00071 string data\n\ 00072 \n\ 00073 "; } 00074 public: 00075 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00076 00077 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00078 00079 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00080 { 00081 ros::serialization::OStream stream(write_ptr, 1000000000); 00082 ros::serialization::serialize(stream, object_name); 00083 return stream.getData(); 00084 } 00085 00086 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00087 { 00088 ros::serialization::IStream stream(read_ptr, 1000000000); 00089 ros::serialization::deserialize(stream, object_name); 00090 return stream.getData(); 00091 } 00092 00093 ROS_DEPRECATED virtual uint32_t serializationLength() const 00094 { 00095 uint32_t size = 0; 00096 size += ros::serialization::serializationLength(object_name); 00097 return size; 00098 } 00099 00100 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > Ptr; 00101 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> const> ConstPtr; 00102 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00103 }; // struct UiDetectorRequest 00104 typedef ::srs_assisted_detection::UiDetectorRequest_<std::allocator<void> > UiDetectorRequest; 00105 00106 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorRequest> UiDetectorRequestPtr; 00107 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorRequest const> UiDetectorRequestConstPtr; 00108 00109 00110 template <class ContainerAllocator> 00111 struct UiDetectorResponse_ { 00112 typedef UiDetectorResponse_<ContainerAllocator> Type; 00113 00114 UiDetectorResponse_() 00115 : object_list() 00116 { 00117 } 00118 00119 UiDetectorResponse_(const ContainerAllocator& _alloc) 00120 : object_list(_alloc) 00121 { 00122 } 00123 00124 typedef ::cob_object_detection_msgs::DetectionArray_<ContainerAllocator> _object_list_type; 00125 ::cob_object_detection_msgs::DetectionArray_<ContainerAllocator> object_list; 00126 00127 00128 private: 00129 static const char* __s_getDataType_() { return "srs_assisted_detection/UiDetectorResponse"; } 00130 public: 00131 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00132 00133 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00134 00135 private: 00136 static const char* __s_getMD5Sum_() { return "6e46a64486bc23cca1c161460b4c92b6"; } 00137 public: 00138 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00139 00140 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00141 00142 private: 00143 static const char* __s_getServerMD5Sum_() { return "ea930acf9f671a8d56f44a28e3c18f01"; } 00144 public: 00145 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00146 00147 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00148 00149 private: 00150 static const char* __s_getMessageDefinition_() { return "\n\ 00151 cob_object_detection_msgs/DetectionArray object_list\n\ 00152 \n\ 00153 ================================================================================\n\ 00154 MSG: cob_object_detection_msgs/DetectionArray\n\ 00155 Header header\n\ 00156 Detection[] detections\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 ================================================================================\n\ 00177 MSG: cob_object_detection_msgs/Detection\n\ 00178 Header header\n\ 00179 string label\n\ 00180 string detector\n\ 00181 float32 score\n\ 00182 Mask mask\n\ 00183 geometry_msgs/PoseStamped pose\n\ 00184 geometry_msgs/Point bounding_box_lwh\n\ 00185 \n\ 00186 ================================================================================\n\ 00187 MSG: cob_object_detection_msgs/Mask\n\ 00188 # this message is used to mark where an object is present in an image\n\ 00189 # this can be done either by a roi region on the image (less precise) or a mask (more precise)\n\ 00190 \n\ 00191 Rect roi\n\ 00192 \n\ 00193 # in the case when mask is used, 'roi' specifies the image region and 'mask'\n\ 00194 # (which should be of the same size) a binary mask in that region\n\ 00195 sensor_msgs/Image mask\n\ 00196 \n\ 00197 # in the case there is 3D data available, 'indices' are used to index the \n\ 00198 # part of the point cloud representing the object\n\ 00199 #pcl/PointIndices indices\n\ 00200 \n\ 00201 ================================================================================\n\ 00202 MSG: cob_object_detection_msgs/Rect\n\ 00203 int32 x\n\ 00204 int32 y\n\ 00205 int32 width\n\ 00206 int32 height\n\ 00207 \n\ 00208 ================================================================================\n\ 00209 MSG: sensor_msgs/Image\n\ 00210 # This message contains an uncompressed image\n\ 00211 # (0, 0) is at top-left corner of image\n\ 00212 #\n\ 00213 \n\ 00214 Header header # Header timestamp should be acquisition time of image\n\ 00215 # Header frame_id should be optical frame of camera\n\ 00216 # origin of frame should be optical center of cameara\n\ 00217 # +x should point to the right in the image\n\ 00218 # +y should point down in the image\n\ 00219 # +z should point into to plane of the image\n\ 00220 # If the frame_id here and the frame_id of the CameraInfo\n\ 00221 # message associated with the image conflict\n\ 00222 # the behavior is undefined\n\ 00223 \n\ 00224 uint32 height # image height, that is, number of rows\n\ 00225 uint32 width # image width, that is, number of columns\n\ 00226 \n\ 00227 # The legal values for encoding are in file src/image_encodings.cpp\n\ 00228 # If you want to standardize a new string format, join\n\ 00229 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\ 00230 \n\ 00231 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\ 00232 # taken from the list of strings in src/image_encodings.cpp\n\ 00233 \n\ 00234 uint8 is_bigendian # is this data bigendian?\n\ 00235 uint32 step # Full row length in bytes\n\ 00236 uint8[] data # actual matrix data, size is (step * rows)\n\ 00237 \n\ 00238 ================================================================================\n\ 00239 MSG: geometry_msgs/PoseStamped\n\ 00240 # A Pose with reference coordinate frame and timestamp\n\ 00241 Header header\n\ 00242 Pose pose\n\ 00243 \n\ 00244 ================================================================================\n\ 00245 MSG: geometry_msgs/Pose\n\ 00246 # A representation of pose in free space, composed of postion and orientation. \n\ 00247 Point position\n\ 00248 Quaternion orientation\n\ 00249 \n\ 00250 ================================================================================\n\ 00251 MSG: geometry_msgs/Point\n\ 00252 # This contains the position of a point in free space\n\ 00253 float64 x\n\ 00254 float64 y\n\ 00255 float64 z\n\ 00256 \n\ 00257 ================================================================================\n\ 00258 MSG: geometry_msgs/Quaternion\n\ 00259 # This represents an orientation in free space in quaternion form.\n\ 00260 \n\ 00261 float64 x\n\ 00262 float64 y\n\ 00263 float64 z\n\ 00264 float64 w\n\ 00265 \n\ 00266 "; } 00267 public: 00268 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00269 00270 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00271 00272 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00273 { 00274 ros::serialization::OStream stream(write_ptr, 1000000000); 00275 ros::serialization::serialize(stream, object_list); 00276 return stream.getData(); 00277 } 00278 00279 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00280 { 00281 ros::serialization::IStream stream(read_ptr, 1000000000); 00282 ros::serialization::deserialize(stream, object_list); 00283 return stream.getData(); 00284 } 00285 00286 ROS_DEPRECATED virtual uint32_t serializationLength() const 00287 { 00288 uint32_t size = 0; 00289 size += ros::serialization::serializationLength(object_list); 00290 return size; 00291 } 00292 00293 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > Ptr; 00294 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> const> ConstPtr; 00295 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00296 }; // struct UiDetectorResponse 00297 typedef ::srs_assisted_detection::UiDetectorResponse_<std::allocator<void> > UiDetectorResponse; 00298 00299 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorResponse> UiDetectorResponsePtr; 00300 typedef boost::shared_ptr< ::srs_assisted_detection::UiDetectorResponse const> UiDetectorResponseConstPtr; 00301 00302 struct UiDetector 00303 { 00304 00305 typedef UiDetectorRequest Request; 00306 typedef UiDetectorResponse Response; 00307 Request request; 00308 Response response; 00309 00310 typedef Request RequestType; 00311 typedef Response ResponseType; 00312 }; // struct UiDetector 00313 } // namespace srs_assisted_detection 00314 00315 namespace ros 00316 { 00317 namespace message_traits 00318 { 00319 template<class ContainerAllocator> struct IsMessage< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > : public TrueType {}; 00320 template<class ContainerAllocator> struct IsMessage< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> const> : public TrueType {}; 00321 template<class ContainerAllocator> 00322 struct MD5Sum< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > { 00323 static const char* value() 00324 { 00325 return "adb33ef101026c3e15d799e3decf403f"; 00326 } 00327 00328 static const char* value(const ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> &) { return value(); } 00329 static const uint64_t static_value1 = 0xadb33ef101026c3eULL; 00330 static const uint64_t static_value2 = 0x15d799e3decf403fULL; 00331 }; 00332 00333 template<class ContainerAllocator> 00334 struct DataType< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > { 00335 static const char* value() 00336 { 00337 return "srs_assisted_detection/UiDetectorRequest"; 00338 } 00339 00340 static const char* value(const ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> &) { return value(); } 00341 }; 00342 00343 template<class ContainerAllocator> 00344 struct Definition< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > { 00345 static const char* value() 00346 { 00347 return "\n\ 00348 std_msgs/String object_name\n\ 00349 \n\ 00350 ================================================================================\n\ 00351 MSG: std_msgs/String\n\ 00352 string data\n\ 00353 \n\ 00354 "; 00355 } 00356 00357 static const char* value(const ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> &) { return value(); } 00358 }; 00359 00360 } // namespace message_traits 00361 } // namespace ros 00362 00363 00364 namespace ros 00365 { 00366 namespace message_traits 00367 { 00368 template<class ContainerAllocator> struct IsMessage< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > : public TrueType {}; 00369 template<class ContainerAllocator> struct IsMessage< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> const> : public TrueType {}; 00370 template<class ContainerAllocator> 00371 struct MD5Sum< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > { 00372 static const char* value() 00373 { 00374 return "6e46a64486bc23cca1c161460b4c92b6"; 00375 } 00376 00377 static const char* value(const ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> &) { return value(); } 00378 static const uint64_t static_value1 = 0x6e46a64486bc23ccULL; 00379 static const uint64_t static_value2 = 0xa1c161460b4c92b6ULL; 00380 }; 00381 00382 template<class ContainerAllocator> 00383 struct DataType< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > { 00384 static const char* value() 00385 { 00386 return "srs_assisted_detection/UiDetectorResponse"; 00387 } 00388 00389 static const char* value(const ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> &) { return value(); } 00390 }; 00391 00392 template<class ContainerAllocator> 00393 struct Definition< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > { 00394 static const char* value() 00395 { 00396 return "\n\ 00397 cob_object_detection_msgs/DetectionArray object_list\n\ 00398 \n\ 00399 ================================================================================\n\ 00400 MSG: cob_object_detection_msgs/DetectionArray\n\ 00401 Header header\n\ 00402 Detection[] detections\n\ 00403 \n\ 00404 ================================================================================\n\ 00405 MSG: std_msgs/Header\n\ 00406 # Standard metadata for higher-level stamped data types.\n\ 00407 # This is generally used to communicate timestamped data \n\ 00408 # in a particular coordinate frame.\n\ 00409 # \n\ 00410 # sequence ID: consecutively increasing ID \n\ 00411 uint32 seq\n\ 00412 #Two-integer timestamp that is expressed as:\n\ 00413 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00414 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00415 # time-handling sugar is provided by the client library\n\ 00416 time stamp\n\ 00417 #Frame this data is associated with\n\ 00418 # 0: no frame\n\ 00419 # 1: global frame\n\ 00420 string frame_id\n\ 00421 \n\ 00422 ================================================================================\n\ 00423 MSG: cob_object_detection_msgs/Detection\n\ 00424 Header header\n\ 00425 string label\n\ 00426 string detector\n\ 00427 float32 score\n\ 00428 Mask mask\n\ 00429 geometry_msgs/PoseStamped pose\n\ 00430 geometry_msgs/Point bounding_box_lwh\n\ 00431 \n\ 00432 ================================================================================\n\ 00433 MSG: cob_object_detection_msgs/Mask\n\ 00434 # this message is used to mark where an object is present in an image\n\ 00435 # this can be done either by a roi region on the image (less precise) or a mask (more precise)\n\ 00436 \n\ 00437 Rect roi\n\ 00438 \n\ 00439 # in the case when mask is used, 'roi' specifies the image region and 'mask'\n\ 00440 # (which should be of the same size) a binary mask in that region\n\ 00441 sensor_msgs/Image mask\n\ 00442 \n\ 00443 # in the case there is 3D data available, 'indices' are used to index the \n\ 00444 # part of the point cloud representing the object\n\ 00445 #pcl/PointIndices indices\n\ 00446 \n\ 00447 ================================================================================\n\ 00448 MSG: cob_object_detection_msgs/Rect\n\ 00449 int32 x\n\ 00450 int32 y\n\ 00451 int32 width\n\ 00452 int32 height\n\ 00453 \n\ 00454 ================================================================================\n\ 00455 MSG: sensor_msgs/Image\n\ 00456 # This message contains an uncompressed image\n\ 00457 # (0, 0) is at top-left corner of image\n\ 00458 #\n\ 00459 \n\ 00460 Header header # Header timestamp should be acquisition time of image\n\ 00461 # Header frame_id should be optical frame of camera\n\ 00462 # origin of frame should be optical center of cameara\n\ 00463 # +x should point to the right in the image\n\ 00464 # +y should point down in the image\n\ 00465 # +z should point into to plane of the image\n\ 00466 # If the frame_id here and the frame_id of the CameraInfo\n\ 00467 # message associated with the image conflict\n\ 00468 # the behavior is undefined\n\ 00469 \n\ 00470 uint32 height # image height, that is, number of rows\n\ 00471 uint32 width # image width, that is, number of columns\n\ 00472 \n\ 00473 # The legal values for encoding are in file src/image_encodings.cpp\n\ 00474 # If you want to standardize a new string format, join\n\ 00475 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.\n\ 00476 \n\ 00477 string encoding # Encoding of pixels -- channel meaning, ordering, size\n\ 00478 # taken from the list of strings in src/image_encodings.cpp\n\ 00479 \n\ 00480 uint8 is_bigendian # is this data bigendian?\n\ 00481 uint32 step # Full row length in bytes\n\ 00482 uint8[] data # actual matrix data, size is (step * rows)\n\ 00483 \n\ 00484 ================================================================================\n\ 00485 MSG: geometry_msgs/PoseStamped\n\ 00486 # A Pose with reference coordinate frame and timestamp\n\ 00487 Header header\n\ 00488 Pose pose\n\ 00489 \n\ 00490 ================================================================================\n\ 00491 MSG: geometry_msgs/Pose\n\ 00492 # A representation of pose in free space, composed of postion and orientation. \n\ 00493 Point position\n\ 00494 Quaternion orientation\n\ 00495 \n\ 00496 ================================================================================\n\ 00497 MSG: geometry_msgs/Point\n\ 00498 # This contains the position of a point in free space\n\ 00499 float64 x\n\ 00500 float64 y\n\ 00501 float64 z\n\ 00502 \n\ 00503 ================================================================================\n\ 00504 MSG: geometry_msgs/Quaternion\n\ 00505 # This represents an orientation in free space in quaternion form.\n\ 00506 \n\ 00507 float64 x\n\ 00508 float64 y\n\ 00509 float64 z\n\ 00510 float64 w\n\ 00511 \n\ 00512 "; 00513 } 00514 00515 static const char* value(const ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> &) { return value(); } 00516 }; 00517 00518 } // namespace message_traits 00519 } // namespace ros 00520 00521 namespace ros 00522 { 00523 namespace serialization 00524 { 00525 00526 template<class ContainerAllocator> struct Serializer< ::srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > 00527 { 00528 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00529 { 00530 stream.next(m.object_name); 00531 } 00532 00533 ROS_DECLARE_ALLINONE_SERIALIZER; 00534 }; // struct UiDetectorRequest_ 00535 } // namespace serialization 00536 } // namespace ros 00537 00538 00539 namespace ros 00540 { 00541 namespace serialization 00542 { 00543 00544 template<class ContainerAllocator> struct Serializer< ::srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > 00545 { 00546 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00547 { 00548 stream.next(m.object_list); 00549 } 00550 00551 ROS_DECLARE_ALLINONE_SERIALIZER; 00552 }; // struct UiDetectorResponse_ 00553 } // namespace serialization 00554 } // namespace ros 00555 00556 namespace ros 00557 { 00558 namespace service_traits 00559 { 00560 template<> 00561 struct MD5Sum<srs_assisted_detection::UiDetector> { 00562 static const char* value() 00563 { 00564 return "ea930acf9f671a8d56f44a28e3c18f01"; 00565 } 00566 00567 static const char* value(const srs_assisted_detection::UiDetector&) { return value(); } 00568 }; 00569 00570 template<> 00571 struct DataType<srs_assisted_detection::UiDetector> { 00572 static const char* value() 00573 { 00574 return "srs_assisted_detection/UiDetector"; 00575 } 00576 00577 static const char* value(const srs_assisted_detection::UiDetector&) { return value(); } 00578 }; 00579 00580 template<class ContainerAllocator> 00581 struct MD5Sum<srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > { 00582 static const char* value() 00583 { 00584 return "ea930acf9f671a8d56f44a28e3c18f01"; 00585 } 00586 00587 static const char* value(const srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> &) { return value(); } 00588 }; 00589 00590 template<class ContainerAllocator> 00591 struct DataType<srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> > { 00592 static const char* value() 00593 { 00594 return "srs_assisted_detection/UiDetector"; 00595 } 00596 00597 static const char* value(const srs_assisted_detection::UiDetectorRequest_<ContainerAllocator> &) { return value(); } 00598 }; 00599 00600 template<class ContainerAllocator> 00601 struct MD5Sum<srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > { 00602 static const char* value() 00603 { 00604 return "ea930acf9f671a8d56f44a28e3c18f01"; 00605 } 00606 00607 static const char* value(const srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> &) { return value(); } 00608 }; 00609 00610 template<class ContainerAllocator> 00611 struct DataType<srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> > { 00612 static const char* value() 00613 { 00614 return "srs_assisted_detection/UiDetector"; 00615 } 00616 00617 static const char* value(const srs_assisted_detection::UiDetectorResponse_<ContainerAllocator> &) { return value(); } 00618 }; 00619 00620 } // namespace service_traits 00621 } // namespace ros 00622 00623 #endif // SRS_ASSISTED_DETECTION_SERVICE_UIDETECTOR_H 00624