00001
00002 #ifndef GEOGRAPHIC_MSGS_SERVICE_GETROUTEPLAN_H
00003 #define GEOGRAPHIC_MSGS_SERVICE_GETROUTEPLAN_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 "geographic_msgs/UniqueID.h"
00020 #include "geographic_msgs/UniqueID.h"
00021 #include "geographic_msgs/UniqueID.h"
00022
00023
00024 #include "geographic_msgs/RoutePath.h"
00025
00026 namespace geographic_msgs
00027 {
00028 template <class ContainerAllocator>
00029 struct GetRoutePlanRequest_ {
00030 typedef GetRoutePlanRequest_<ContainerAllocator> Type;
00031
00032 GetRoutePlanRequest_()
00033 : network()
00034 , start()
00035 , goal()
00036 {
00037 }
00038
00039 GetRoutePlanRequest_(const ContainerAllocator& _alloc)
00040 : network(_alloc)
00041 , start(_alloc)
00042 , goal(_alloc)
00043 {
00044 }
00045
00046 typedef ::geographic_msgs::UniqueID_<ContainerAllocator> _network_type;
00047 ::geographic_msgs::UniqueID_<ContainerAllocator> network;
00048
00049 typedef ::geographic_msgs::UniqueID_<ContainerAllocator> _start_type;
00050 ::geographic_msgs::UniqueID_<ContainerAllocator> start;
00051
00052 typedef ::geographic_msgs::UniqueID_<ContainerAllocator> _goal_type;
00053 ::geographic_msgs::UniqueID_<ContainerAllocator> goal;
00054
00055
00056 private:
00057 static const char* __s_getDataType_() { return "geographic_msgs/GetRoutePlanRequest"; }
00058 public:
00059 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00060
00061 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00062
00063 private:
00064 static const char* __s_getMD5Sum_() { return "af4211789dbc36712fbe918874aa9904"; }
00065 public:
00066 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00067
00068 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00069
00070 private:
00071 static const char* __s_getServerMD5Sum_() { return "f8992e5e349b744f650467490b1d023a"; }
00072 public:
00073 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00074
00075 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00076
00077 private:
00078 static const char* __s_getMessageDefinition_() { return "\n\
00079 \n\
00080 \n\
00081 \n\
00082 UniqueID network\n\
00083 UniqueID start\n\
00084 UniqueID goal\n\
00085 \n\
00086 \n\
00087 ================================================================================\n\
00088 MSG: geographic_msgs/UniqueID\n\
00089 # A universally unique identifier (UUID) for a geographic feature.\n\
00090 #\n\
00091 # http://en.wikipedia.org/wiki/Universally_unique_identifier\n\
00092 # http://tools.ietf.org/html/rfc4122.html\n\
00093 #\n\
00094 # For simplicity and human readability, the UUID is represented as a\n\
00095 # string of hex digits and dashes.\n\
00096 #\n\
00097 # UUID generation is up to the programmer, but the intent is for\n\
00098 # matching features within a domain such as Open Street Map to yield\n\
00099 # the same UUID. The recommended method is RFC 4122 variant 5,\n\
00100 # computing the SHA-1 hash of a URL encoded using the map source. For\n\
00101 # example:\n\
00102 #\n\
00103 # http://openstreetmap.org/node/NUMBER\n\
00104 # http://openstreetmap.org/way/NUMBER\n\
00105 # http://openstreetmap.org/relation/NUMBER\n\
00106 #\n\
00107 # Here NUMBER is the decimal representation of the OSM node, way, or\n\
00108 # relation ID without leading zeros.\n\
00109 #\n\
00110 # Other map sources should use similar conventions.\n\
00111 \n\
00112 string uuid # format: 01234567-89ab-cdef-0123-456789abcdef\n\
00113 \n\
00114 "; }
00115 public:
00116 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00117
00118 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00119
00120 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00121 {
00122 ros::serialization::OStream stream(write_ptr, 1000000000);
00123 ros::serialization::serialize(stream, network);
00124 ros::serialization::serialize(stream, start);
00125 ros::serialization::serialize(stream, goal);
00126 return stream.getData();
00127 }
00128
00129 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00130 {
00131 ros::serialization::IStream stream(read_ptr, 1000000000);
00132 ros::serialization::deserialize(stream, network);
00133 ros::serialization::deserialize(stream, start);
00134 ros::serialization::deserialize(stream, goal);
00135 return stream.getData();
00136 }
00137
00138 ROS_DEPRECATED virtual uint32_t serializationLength() const
00139 {
00140 uint32_t size = 0;
00141 size += ros::serialization::serializationLength(network);
00142 size += ros::serialization::serializationLength(start);
00143 size += ros::serialization::serializationLength(goal);
00144 return size;
00145 }
00146
00147 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > Ptr;
00148 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> const> ConstPtr;
00149 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00150 };
00151 typedef ::geographic_msgs::GetRoutePlanRequest_<std::allocator<void> > GetRoutePlanRequest;
00152
00153 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanRequest> GetRoutePlanRequestPtr;
00154 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanRequest const> GetRoutePlanRequestConstPtr;
00155
00156
00157 template <class ContainerAllocator>
00158 struct GetRoutePlanResponse_ {
00159 typedef GetRoutePlanResponse_<ContainerAllocator> Type;
00160
00161 GetRoutePlanResponse_()
00162 : success(false)
00163 , status()
00164 , plan()
00165 {
00166 }
00167
00168 GetRoutePlanResponse_(const ContainerAllocator& _alloc)
00169 : success(false)
00170 , status(_alloc)
00171 , plan(_alloc)
00172 {
00173 }
00174
00175 typedef uint8_t _success_type;
00176 uint8_t success;
00177
00178 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _status_type;
00179 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > status;
00180
00181 typedef ::geographic_msgs::RoutePath_<ContainerAllocator> _plan_type;
00182 ::geographic_msgs::RoutePath_<ContainerAllocator> plan;
00183
00184
00185 private:
00186 static const char* __s_getDataType_() { return "geographic_msgs/GetRoutePlanResponse"; }
00187 public:
00188 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00189
00190 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00191
00192 private:
00193 static const char* __s_getMD5Sum_() { return "9138a046f33088664fc49a4c34959ac3"; }
00194 public:
00195 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00196
00197 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00198
00199 private:
00200 static const char* __s_getServerMD5Sum_() { return "f8992e5e349b744f650467490b1d023a"; }
00201 public:
00202 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00203
00204 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00205
00206 private:
00207 static const char* __s_getMessageDefinition_() { return "\n\
00208 bool success\n\
00209 string status\n\
00210 \n\
00211 RoutePath plan\n\
00212 \n\
00213 \n\
00214 ================================================================================\n\
00215 MSG: geographic_msgs/RoutePath\n\
00216 # Path through a route network.\n\
00217 #\n\
00218 # A path is a sequence of RouteSegment edges. This information is\n\
00219 # extracted from a RouteNetwork graph. A RoutePath lists the route\n\
00220 # segments needed to reach some chosen goal.\n\
00221 \n\
00222 Header header\n\
00223 \n\
00224 UniqueID network # Route network containing this path\n\
00225 UniqueID[] segments # Sequence of RouteSegment IDs\n\
00226 KeyValue[] props # Key/value properties\n\
00227 \n\
00228 ================================================================================\n\
00229 MSG: std_msgs/Header\n\
00230 # Standard metadata for higher-level stamped data types.\n\
00231 # This is generally used to communicate timestamped data \n\
00232 # in a particular coordinate frame.\n\
00233 # \n\
00234 # sequence ID: consecutively increasing ID \n\
00235 uint32 seq\n\
00236 #Two-integer timestamp that is expressed as:\n\
00237 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00238 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00239 # time-handling sugar is provided by the client library\n\
00240 time stamp\n\
00241 #Frame this data is associated with\n\
00242 # 0: no frame\n\
00243 # 1: global frame\n\
00244 string frame_id\n\
00245 \n\
00246 ================================================================================\n\
00247 MSG: geographic_msgs/UniqueID\n\
00248 # A universally unique identifier (UUID) for a geographic feature.\n\
00249 #\n\
00250 # http://en.wikipedia.org/wiki/Universally_unique_identifier\n\
00251 # http://tools.ietf.org/html/rfc4122.html\n\
00252 #\n\
00253 # For simplicity and human readability, the UUID is represented as a\n\
00254 # string of hex digits and dashes.\n\
00255 #\n\
00256 # UUID generation is up to the programmer, but the intent is for\n\
00257 # matching features within a domain such as Open Street Map to yield\n\
00258 # the same UUID. The recommended method is RFC 4122 variant 5,\n\
00259 # computing the SHA-1 hash of a URL encoded using the map source. For\n\
00260 # example:\n\
00261 #\n\
00262 # http://openstreetmap.org/node/NUMBER\n\
00263 # http://openstreetmap.org/way/NUMBER\n\
00264 # http://openstreetmap.org/relation/NUMBER\n\
00265 #\n\
00266 # Here NUMBER is the decimal representation of the OSM node, way, or\n\
00267 # relation ID without leading zeros.\n\
00268 #\n\
00269 # Other map sources should use similar conventions.\n\
00270 \n\
00271 string uuid # format: 01234567-89ab-cdef-0123-456789abcdef\n\
00272 \n\
00273 ================================================================================\n\
00274 MSG: geographic_msgs/KeyValue\n\
00275 # Geographic map tag (key, value) pair\n\
00276 #\n\
00277 # This is equivalent to diagnostic_msgs/KeyValue, repeated here to\n\
00278 # avoid introducing a trivial stack dependency.\n\
00279 \n\
00280 string key # tag label\n\
00281 string value # corresponding value\n\
00282 \n\
00283 "; }
00284 public:
00285 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00286
00287 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00288
00289 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00290 {
00291 ros::serialization::OStream stream(write_ptr, 1000000000);
00292 ros::serialization::serialize(stream, success);
00293 ros::serialization::serialize(stream, status);
00294 ros::serialization::serialize(stream, plan);
00295 return stream.getData();
00296 }
00297
00298 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00299 {
00300 ros::serialization::IStream stream(read_ptr, 1000000000);
00301 ros::serialization::deserialize(stream, success);
00302 ros::serialization::deserialize(stream, status);
00303 ros::serialization::deserialize(stream, plan);
00304 return stream.getData();
00305 }
00306
00307 ROS_DEPRECATED virtual uint32_t serializationLength() const
00308 {
00309 uint32_t size = 0;
00310 size += ros::serialization::serializationLength(success);
00311 size += ros::serialization::serializationLength(status);
00312 size += ros::serialization::serializationLength(plan);
00313 return size;
00314 }
00315
00316 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > Ptr;
00317 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> const> ConstPtr;
00318 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00319 };
00320 typedef ::geographic_msgs::GetRoutePlanResponse_<std::allocator<void> > GetRoutePlanResponse;
00321
00322 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanResponse> GetRoutePlanResponsePtr;
00323 typedef boost::shared_ptr< ::geographic_msgs::GetRoutePlanResponse const> GetRoutePlanResponseConstPtr;
00324
00325 struct GetRoutePlan
00326 {
00327
00328 typedef GetRoutePlanRequest Request;
00329 typedef GetRoutePlanResponse Response;
00330 Request request;
00331 Response response;
00332
00333 typedef Request RequestType;
00334 typedef Response ResponseType;
00335 };
00336 }
00337
00338 namespace ros
00339 {
00340 namespace message_traits
00341 {
00342 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > : public TrueType {};
00343 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> const> : public TrueType {};
00344 template<class ContainerAllocator>
00345 struct MD5Sum< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > {
00346 static const char* value()
00347 {
00348 return "af4211789dbc36712fbe918874aa9904";
00349 }
00350
00351 static const char* value(const ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> &) { return value(); }
00352 static const uint64_t static_value1 = 0xaf4211789dbc3671ULL;
00353 static const uint64_t static_value2 = 0x2fbe918874aa9904ULL;
00354 };
00355
00356 template<class ContainerAllocator>
00357 struct DataType< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > {
00358 static const char* value()
00359 {
00360 return "geographic_msgs/GetRoutePlanRequest";
00361 }
00362
00363 static const char* value(const ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> &) { return value(); }
00364 };
00365
00366 template<class ContainerAllocator>
00367 struct Definition< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > {
00368 static const char* value()
00369 {
00370 return "\n\
00371 \n\
00372 \n\
00373 \n\
00374 UniqueID network\n\
00375 UniqueID start\n\
00376 UniqueID goal\n\
00377 \n\
00378 \n\
00379 ================================================================================\n\
00380 MSG: geographic_msgs/UniqueID\n\
00381 # A universally unique identifier (UUID) for a geographic feature.\n\
00382 #\n\
00383 # http://en.wikipedia.org/wiki/Universally_unique_identifier\n\
00384 # http://tools.ietf.org/html/rfc4122.html\n\
00385 #\n\
00386 # For simplicity and human readability, the UUID is represented as a\n\
00387 # string of hex digits and dashes.\n\
00388 #\n\
00389 # UUID generation is up to the programmer, but the intent is for\n\
00390 # matching features within a domain such as Open Street Map to yield\n\
00391 # the same UUID. The recommended method is RFC 4122 variant 5,\n\
00392 # computing the SHA-1 hash of a URL encoded using the map source. For\n\
00393 # example:\n\
00394 #\n\
00395 # http://openstreetmap.org/node/NUMBER\n\
00396 # http://openstreetmap.org/way/NUMBER\n\
00397 # http://openstreetmap.org/relation/NUMBER\n\
00398 #\n\
00399 # Here NUMBER is the decimal representation of the OSM node, way, or\n\
00400 # relation ID without leading zeros.\n\
00401 #\n\
00402 # Other map sources should use similar conventions.\n\
00403 \n\
00404 string uuid # format: 01234567-89ab-cdef-0123-456789abcdef\n\
00405 \n\
00406 ";
00407 }
00408
00409 static const char* value(const ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> &) { return value(); }
00410 };
00411
00412 }
00413 }
00414
00415
00416 namespace ros
00417 {
00418 namespace message_traits
00419 {
00420 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > : public TrueType {};
00421 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> const> : public TrueType {};
00422 template<class ContainerAllocator>
00423 struct MD5Sum< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > {
00424 static const char* value()
00425 {
00426 return "9138a046f33088664fc49a4c34959ac3";
00427 }
00428
00429 static const char* value(const ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> &) { return value(); }
00430 static const uint64_t static_value1 = 0x9138a046f3308866ULL;
00431 static const uint64_t static_value2 = 0x4fc49a4c34959ac3ULL;
00432 };
00433
00434 template<class ContainerAllocator>
00435 struct DataType< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > {
00436 static const char* value()
00437 {
00438 return "geographic_msgs/GetRoutePlanResponse";
00439 }
00440
00441 static const char* value(const ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> &) { return value(); }
00442 };
00443
00444 template<class ContainerAllocator>
00445 struct Definition< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > {
00446 static const char* value()
00447 {
00448 return "\n\
00449 bool success\n\
00450 string status\n\
00451 \n\
00452 RoutePath plan\n\
00453 \n\
00454 \n\
00455 ================================================================================\n\
00456 MSG: geographic_msgs/RoutePath\n\
00457 # Path through a route network.\n\
00458 #\n\
00459 # A path is a sequence of RouteSegment edges. This information is\n\
00460 # extracted from a RouteNetwork graph. A RoutePath lists the route\n\
00461 # segments needed to reach some chosen goal.\n\
00462 \n\
00463 Header header\n\
00464 \n\
00465 UniqueID network # Route network containing this path\n\
00466 UniqueID[] segments # Sequence of RouteSegment IDs\n\
00467 KeyValue[] props # Key/value properties\n\
00468 \n\
00469 ================================================================================\n\
00470 MSG: std_msgs/Header\n\
00471 # Standard metadata for higher-level stamped data types.\n\
00472 # This is generally used to communicate timestamped data \n\
00473 # in a particular coordinate frame.\n\
00474 # \n\
00475 # sequence ID: consecutively increasing ID \n\
00476 uint32 seq\n\
00477 #Two-integer timestamp that is expressed as:\n\
00478 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00479 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00480 # time-handling sugar is provided by the client library\n\
00481 time stamp\n\
00482 #Frame this data is associated with\n\
00483 # 0: no frame\n\
00484 # 1: global frame\n\
00485 string frame_id\n\
00486 \n\
00487 ================================================================================\n\
00488 MSG: geographic_msgs/UniqueID\n\
00489 # A universally unique identifier (UUID) for a geographic feature.\n\
00490 #\n\
00491 # http://en.wikipedia.org/wiki/Universally_unique_identifier\n\
00492 # http://tools.ietf.org/html/rfc4122.html\n\
00493 #\n\
00494 # For simplicity and human readability, the UUID is represented as a\n\
00495 # string of hex digits and dashes.\n\
00496 #\n\
00497 # UUID generation is up to the programmer, but the intent is for\n\
00498 # matching features within a domain such as Open Street Map to yield\n\
00499 # the same UUID. The recommended method is RFC 4122 variant 5,\n\
00500 # computing the SHA-1 hash of a URL encoded using the map source. For\n\
00501 # example:\n\
00502 #\n\
00503 # http://openstreetmap.org/node/NUMBER\n\
00504 # http://openstreetmap.org/way/NUMBER\n\
00505 # http://openstreetmap.org/relation/NUMBER\n\
00506 #\n\
00507 # Here NUMBER is the decimal representation of the OSM node, way, or\n\
00508 # relation ID without leading zeros.\n\
00509 #\n\
00510 # Other map sources should use similar conventions.\n\
00511 \n\
00512 string uuid # format: 01234567-89ab-cdef-0123-456789abcdef\n\
00513 \n\
00514 ================================================================================\n\
00515 MSG: geographic_msgs/KeyValue\n\
00516 # Geographic map tag (key, value) pair\n\
00517 #\n\
00518 # This is equivalent to diagnostic_msgs/KeyValue, repeated here to\n\
00519 # avoid introducing a trivial stack dependency.\n\
00520 \n\
00521 string key # tag label\n\
00522 string value # corresponding value\n\
00523 \n\
00524 ";
00525 }
00526
00527 static const char* value(const ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> &) { return value(); }
00528 };
00529
00530 }
00531 }
00532
00533 namespace ros
00534 {
00535 namespace serialization
00536 {
00537
00538 template<class ContainerAllocator> struct Serializer< ::geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> >
00539 {
00540 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00541 {
00542 stream.next(m.network);
00543 stream.next(m.start);
00544 stream.next(m.goal);
00545 }
00546
00547 ROS_DECLARE_ALLINONE_SERIALIZER;
00548 };
00549 }
00550 }
00551
00552
00553 namespace ros
00554 {
00555 namespace serialization
00556 {
00557
00558 template<class ContainerAllocator> struct Serializer< ::geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> >
00559 {
00560 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00561 {
00562 stream.next(m.success);
00563 stream.next(m.status);
00564 stream.next(m.plan);
00565 }
00566
00567 ROS_DECLARE_ALLINONE_SERIALIZER;
00568 };
00569 }
00570 }
00571
00572 namespace ros
00573 {
00574 namespace service_traits
00575 {
00576 template<>
00577 struct MD5Sum<geographic_msgs::GetRoutePlan> {
00578 static const char* value()
00579 {
00580 return "f8992e5e349b744f650467490b1d023a";
00581 }
00582
00583 static const char* value(const geographic_msgs::GetRoutePlan&) { return value(); }
00584 };
00585
00586 template<>
00587 struct DataType<geographic_msgs::GetRoutePlan> {
00588 static const char* value()
00589 {
00590 return "geographic_msgs/GetRoutePlan";
00591 }
00592
00593 static const char* value(const geographic_msgs::GetRoutePlan&) { return value(); }
00594 };
00595
00596 template<class ContainerAllocator>
00597 struct MD5Sum<geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > {
00598 static const char* value()
00599 {
00600 return "f8992e5e349b744f650467490b1d023a";
00601 }
00602
00603 static const char* value(const geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> &) { return value(); }
00604 };
00605
00606 template<class ContainerAllocator>
00607 struct DataType<geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> > {
00608 static const char* value()
00609 {
00610 return "geographic_msgs/GetRoutePlan";
00611 }
00612
00613 static const char* value(const geographic_msgs::GetRoutePlanRequest_<ContainerAllocator> &) { return value(); }
00614 };
00615
00616 template<class ContainerAllocator>
00617 struct MD5Sum<geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > {
00618 static const char* value()
00619 {
00620 return "f8992e5e349b744f650467490b1d023a";
00621 }
00622
00623 static const char* value(const geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> &) { return value(); }
00624 };
00625
00626 template<class ContainerAllocator>
00627 struct DataType<geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> > {
00628 static const char* value()
00629 {
00630 return "geographic_msgs/GetRoutePlan";
00631 }
00632
00633 static const char* value(const geographic_msgs::GetRoutePlanResponse_<ContainerAllocator> &) { return value(); }
00634 };
00635
00636 }
00637 }
00638
00639 #endif // GEOGRAPHIC_MSGS_SERVICE_GETROUTEPLAN_H
00640