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