00001
00002 #ifndef SRS_ENV_MODEL_PERCP_SERVICE_ESTIMATERECT_H
00003 #define SRS_ENV_MODEL_PERCP_SERVICE_ESTIMATERECT_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/Header.h"
00020 #include "geometry_msgs/Pose.h"
00021 #include "geometry_msgs/Vector3.h"
00022
00023
00024
00025 namespace srs_env_model_percp
00026 {
00027 template <class ContainerAllocator>
00028 struct EstimateRectRequest_ {
00029 typedef EstimateRectRequest_<ContainerAllocator> Type;
00030
00031 EstimateRectRequest_()
00032 : header()
00033 , pose()
00034 , scale()
00035 {
00036 }
00037
00038 EstimateRectRequest_(const ContainerAllocator& _alloc)
00039 : header(_alloc)
00040 , pose(_alloc)
00041 , scale(_alloc)
00042 {
00043 }
00044
00045 typedef ::std_msgs::Header_<ContainerAllocator> _header_type;
00046 ::std_msgs::Header_<ContainerAllocator> header;
00047
00048 typedef ::geometry_msgs::Pose_<ContainerAllocator> _pose_type;
00049 ::geometry_msgs::Pose_<ContainerAllocator> pose;
00050
00051 typedef ::geometry_msgs::Vector3_<ContainerAllocator> _scale_type;
00052 ::geometry_msgs::Vector3_<ContainerAllocator> scale;
00053
00054
00055 private:
00056 static const char* __s_getDataType_() { return "srs_env_model_percp/EstimateRectRequest"; }
00057 public:
00058 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00059
00060 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00061
00062 private:
00063 static const char* __s_getMD5Sum_() { return "31a7fdbfddebf50fd786f2a40634cfaf"; }
00064 public:
00065 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00066
00067 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00068
00069 private:
00070 static const char* __s_getServerMD5Sum_() { return "ee0e40834f1493b479da3ca18fa40bb6"; }
00071 public:
00072 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00073
00074 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00075
00076 private:
00077 static const char* __s_getMessageDefinition_() { return "\n\
00078 \n\
00079 \n\
00080 Header header\n\
00081 \n\
00082 \n\
00083 geometry_msgs/Pose pose\n\
00084 \n\
00085 \n\
00086 \n\
00087 geometry_msgs/Vector3 scale\n\
00088 \n\
00089 ================================================================================\n\
00090 MSG: std_msgs/Header\n\
00091 # Standard metadata for higher-level stamped data types.\n\
00092 # This is generally used to communicate timestamped data \n\
00093 # in a particular coordinate frame.\n\
00094 # \n\
00095 # sequence ID: consecutively increasing ID \n\
00096 uint32 seq\n\
00097 #Two-integer timestamp that is expressed as:\n\
00098 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00099 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00100 # time-handling sugar is provided by the client library\n\
00101 time stamp\n\
00102 #Frame this data is associated with\n\
00103 # 0: no frame\n\
00104 # 1: global frame\n\
00105 string frame_id\n\
00106 \n\
00107 ================================================================================\n\
00108 MSG: geometry_msgs/Pose\n\
00109 # A representation of pose in free space, composed of postion and orientation. \n\
00110 Point position\n\
00111 Quaternion orientation\n\
00112 \n\
00113 ================================================================================\n\
00114 MSG: geometry_msgs/Point\n\
00115 # This contains the position of a point in free space\n\
00116 float64 x\n\
00117 float64 y\n\
00118 float64 z\n\
00119 \n\
00120 ================================================================================\n\
00121 MSG: geometry_msgs/Quaternion\n\
00122 # This represents an orientation in free space in quaternion form.\n\
00123 \n\
00124 float64 x\n\
00125 float64 y\n\
00126 float64 z\n\
00127 float64 w\n\
00128 \n\
00129 ================================================================================\n\
00130 MSG: geometry_msgs/Vector3\n\
00131 # This represents a vector in free space. \n\
00132 \n\
00133 float64 x\n\
00134 float64 y\n\
00135 float64 z\n\
00136 "; }
00137 public:
00138 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00139
00140 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00141
00142 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00143 {
00144 ros::serialization::OStream stream(write_ptr, 1000000000);
00145 ros::serialization::serialize(stream, header);
00146 ros::serialization::serialize(stream, pose);
00147 ros::serialization::serialize(stream, scale);
00148 return stream.getData();
00149 }
00150
00151 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00152 {
00153 ros::serialization::IStream stream(read_ptr, 1000000000);
00154 ros::serialization::deserialize(stream, header);
00155 ros::serialization::deserialize(stream, pose);
00156 ros::serialization::deserialize(stream, scale);
00157 return stream.getData();
00158 }
00159
00160 ROS_DEPRECATED virtual uint32_t serializationLength() const
00161 {
00162 uint32_t size = 0;
00163 size += ros::serialization::serializationLength(header);
00164 size += ros::serialization::serializationLength(pose);
00165 size += ros::serialization::serializationLength(scale);
00166 return size;
00167 }
00168
00169 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > Ptr;
00170 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> const> ConstPtr;
00171 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00172 };
00173 typedef ::srs_env_model_percp::EstimateRectRequest_<std::allocator<void> > EstimateRectRequest;
00174
00175 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectRequest> EstimateRectRequestPtr;
00176 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectRequest const> EstimateRectRequestConstPtr;
00177
00178
00179 template <class ContainerAllocator>
00180 struct EstimateRectResponse_ {
00181 typedef EstimateRectResponse_<ContainerAllocator> Type;
00182
00183 EstimateRectResponse_()
00184 : p1()
00185 , p2()
00186 {
00187 p1.assign(0);
00188 p2.assign(0);
00189 }
00190
00191 EstimateRectResponse_(const ContainerAllocator& _alloc)
00192 : p1()
00193 , p2()
00194 {
00195 p1.assign(0);
00196 p2.assign(0);
00197 }
00198
00199 typedef boost::array<int16_t, 2> _p1_type;
00200 boost::array<int16_t, 2> p1;
00201
00202 typedef boost::array<int16_t, 2> _p2_type;
00203 boost::array<int16_t, 2> p2;
00204
00205
00206 ROS_DEPRECATED uint32_t get_p1_size() const { return (uint32_t)p1.size(); }
00207 ROS_DEPRECATED uint32_t get_p2_size() const { return (uint32_t)p2.size(); }
00208 private:
00209 static const char* __s_getDataType_() { return "srs_env_model_percp/EstimateRectResponse"; }
00210 public:
00211 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00212
00213 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00214
00215 private:
00216 static const char* __s_getMD5Sum_() { return "363df5631fa30ccd790dae289b1dbcc0"; }
00217 public:
00218 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00219
00220 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00221
00222 private:
00223 static const char* __s_getServerMD5Sum_() { return "ee0e40834f1493b479da3ca18fa40bb6"; }
00224 public:
00225 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00226
00227 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00228
00229 private:
00230 static const char* __s_getMessageDefinition_() { return "\n\
00231 \n\
00232 \n\
00233 \n\
00234 \n\
00235 \n\
00236 int16[2] p1\n\
00237 int16[2] p2\n\
00238 \n\
00239 \n\
00240 \n\
00241 "; }
00242 public:
00243 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00244
00245 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00246
00247 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00248 {
00249 ros::serialization::OStream stream(write_ptr, 1000000000);
00250 ros::serialization::serialize(stream, p1);
00251 ros::serialization::serialize(stream, p2);
00252 return stream.getData();
00253 }
00254
00255 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00256 {
00257 ros::serialization::IStream stream(read_ptr, 1000000000);
00258 ros::serialization::deserialize(stream, p1);
00259 ros::serialization::deserialize(stream, p2);
00260 return stream.getData();
00261 }
00262
00263 ROS_DEPRECATED virtual uint32_t serializationLength() const
00264 {
00265 uint32_t size = 0;
00266 size += ros::serialization::serializationLength(p1);
00267 size += ros::serialization::serializationLength(p2);
00268 return size;
00269 }
00270
00271 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > Ptr;
00272 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> const> ConstPtr;
00273 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00274 };
00275 typedef ::srs_env_model_percp::EstimateRectResponse_<std::allocator<void> > EstimateRectResponse;
00276
00277 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectResponse> EstimateRectResponsePtr;
00278 typedef boost::shared_ptr< ::srs_env_model_percp::EstimateRectResponse const> EstimateRectResponseConstPtr;
00279
00280 struct EstimateRect
00281 {
00282
00283 typedef EstimateRectRequest Request;
00284 typedef EstimateRectResponse Response;
00285 Request request;
00286 Response response;
00287
00288 typedef Request RequestType;
00289 typedef Response ResponseType;
00290 };
00291 }
00292
00293 namespace ros
00294 {
00295 namespace message_traits
00296 {
00297 template<class ContainerAllocator> struct IsMessage< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > : public TrueType {};
00298 template<class ContainerAllocator> struct IsMessage< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> const> : public TrueType {};
00299 template<class ContainerAllocator>
00300 struct MD5Sum< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > {
00301 static const char* value()
00302 {
00303 return "31a7fdbfddebf50fd786f2a40634cfaf";
00304 }
00305
00306 static const char* value(const ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> &) { return value(); }
00307 static const uint64_t static_value1 = 0x31a7fdbfddebf50fULL;
00308 static const uint64_t static_value2 = 0xd786f2a40634cfafULL;
00309 };
00310
00311 template<class ContainerAllocator>
00312 struct DataType< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > {
00313 static const char* value()
00314 {
00315 return "srs_env_model_percp/EstimateRectRequest";
00316 }
00317
00318 static const char* value(const ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> &) { return value(); }
00319 };
00320
00321 template<class ContainerAllocator>
00322 struct Definition< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > {
00323 static const char* value()
00324 {
00325 return "\n\
00326 \n\
00327 \n\
00328 Header header\n\
00329 \n\
00330 \n\
00331 geometry_msgs/Pose pose\n\
00332 \n\
00333 \n\
00334 \n\
00335 geometry_msgs/Vector3 scale\n\
00336 \n\
00337 ================================================================================\n\
00338 MSG: std_msgs/Header\n\
00339 # Standard metadata for higher-level stamped data types.\n\
00340 # This is generally used to communicate timestamped data \n\
00341 # in a particular coordinate frame.\n\
00342 # \n\
00343 # sequence ID: consecutively increasing ID \n\
00344 uint32 seq\n\
00345 #Two-integer timestamp that is expressed as:\n\
00346 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00347 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00348 # time-handling sugar is provided by the client library\n\
00349 time stamp\n\
00350 #Frame this data is associated with\n\
00351 # 0: no frame\n\
00352 # 1: global frame\n\
00353 string frame_id\n\
00354 \n\
00355 ================================================================================\n\
00356 MSG: geometry_msgs/Pose\n\
00357 # A representation of pose in free space, composed of postion and orientation. \n\
00358 Point position\n\
00359 Quaternion orientation\n\
00360 \n\
00361 ================================================================================\n\
00362 MSG: geometry_msgs/Point\n\
00363 # This contains the position of a point in free space\n\
00364 float64 x\n\
00365 float64 y\n\
00366 float64 z\n\
00367 \n\
00368 ================================================================================\n\
00369 MSG: geometry_msgs/Quaternion\n\
00370 # This represents an orientation in free space in quaternion form.\n\
00371 \n\
00372 float64 x\n\
00373 float64 y\n\
00374 float64 z\n\
00375 float64 w\n\
00376 \n\
00377 ================================================================================\n\
00378 MSG: geometry_msgs/Vector3\n\
00379 # This represents a vector in free space. \n\
00380 \n\
00381 float64 x\n\
00382 float64 y\n\
00383 float64 z\n\
00384 ";
00385 }
00386
00387 static const char* value(const ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> &) { return value(); }
00388 };
00389
00390 template<class ContainerAllocator> struct HasHeader< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > : public TrueType {};
00391 template<class ContainerAllocator> struct HasHeader< const ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > : public TrueType {};
00392 }
00393 }
00394
00395
00396 namespace ros
00397 {
00398 namespace message_traits
00399 {
00400 template<class ContainerAllocator> struct IsMessage< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > : public TrueType {};
00401 template<class ContainerAllocator> struct IsMessage< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> const> : public TrueType {};
00402 template<class ContainerAllocator>
00403 struct MD5Sum< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > {
00404 static const char* value()
00405 {
00406 return "363df5631fa30ccd790dae289b1dbcc0";
00407 }
00408
00409 static const char* value(const ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> &) { return value(); }
00410 static const uint64_t static_value1 = 0x363df5631fa30ccdULL;
00411 static const uint64_t static_value2 = 0x790dae289b1dbcc0ULL;
00412 };
00413
00414 template<class ContainerAllocator>
00415 struct DataType< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > {
00416 static const char* value()
00417 {
00418 return "srs_env_model_percp/EstimateRectResponse";
00419 }
00420
00421 static const char* value(const ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> &) { return value(); }
00422 };
00423
00424 template<class ContainerAllocator>
00425 struct Definition< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > {
00426 static const char* value()
00427 {
00428 return "\n\
00429 \n\
00430 \n\
00431 \n\
00432 \n\
00433 \n\
00434 int16[2] p1\n\
00435 int16[2] p2\n\
00436 \n\
00437 \n\
00438 \n\
00439 ";
00440 }
00441
00442 static const char* value(const ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> &) { return value(); }
00443 };
00444
00445 template<class ContainerAllocator> struct IsFixedSize< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > : public TrueType {};
00446 }
00447 }
00448
00449 namespace ros
00450 {
00451 namespace serialization
00452 {
00453
00454 template<class ContainerAllocator> struct Serializer< ::srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> >
00455 {
00456 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00457 {
00458 stream.next(m.header);
00459 stream.next(m.pose);
00460 stream.next(m.scale);
00461 }
00462
00463 ROS_DECLARE_ALLINONE_SERIALIZER;
00464 };
00465 }
00466 }
00467
00468
00469 namespace ros
00470 {
00471 namespace serialization
00472 {
00473
00474 template<class ContainerAllocator> struct Serializer< ::srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> >
00475 {
00476 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00477 {
00478 stream.next(m.p1);
00479 stream.next(m.p2);
00480 }
00481
00482 ROS_DECLARE_ALLINONE_SERIALIZER;
00483 };
00484 }
00485 }
00486
00487 namespace ros
00488 {
00489 namespace service_traits
00490 {
00491 template<>
00492 struct MD5Sum<srs_env_model_percp::EstimateRect> {
00493 static const char* value()
00494 {
00495 return "ee0e40834f1493b479da3ca18fa40bb6";
00496 }
00497
00498 static const char* value(const srs_env_model_percp::EstimateRect&) { return value(); }
00499 };
00500
00501 template<>
00502 struct DataType<srs_env_model_percp::EstimateRect> {
00503 static const char* value()
00504 {
00505 return "srs_env_model_percp/EstimateRect";
00506 }
00507
00508 static const char* value(const srs_env_model_percp::EstimateRect&) { return value(); }
00509 };
00510
00511 template<class ContainerAllocator>
00512 struct MD5Sum<srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > {
00513 static const char* value()
00514 {
00515 return "ee0e40834f1493b479da3ca18fa40bb6";
00516 }
00517
00518 static const char* value(const srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> &) { return value(); }
00519 };
00520
00521 template<class ContainerAllocator>
00522 struct DataType<srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> > {
00523 static const char* value()
00524 {
00525 return "srs_env_model_percp/EstimateRect";
00526 }
00527
00528 static const char* value(const srs_env_model_percp::EstimateRectRequest_<ContainerAllocator> &) { return value(); }
00529 };
00530
00531 template<class ContainerAllocator>
00532 struct MD5Sum<srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > {
00533 static const char* value()
00534 {
00535 return "ee0e40834f1493b479da3ca18fa40bb6";
00536 }
00537
00538 static const char* value(const srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> &) { return value(); }
00539 };
00540
00541 template<class ContainerAllocator>
00542 struct DataType<srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> > {
00543 static const char* value()
00544 {
00545 return "srs_env_model_percp/EstimateRect";
00546 }
00547
00548 static const char* value(const srs_env_model_percp::EstimateRectResponse_<ContainerAllocator> &) { return value(); }
00549 };
00550
00551 }
00552 }
00553
00554 #endif // SRS_ENV_MODEL_PERCP_SERVICE_ESTIMATERECT_H
00555