Go to the documentation of this file.00001
00002 #ifndef GEOGRAPHIC_MSGS_SERVICE_GETGEOGRAPHICMAP_H
00003 #define GEOGRAPHIC_MSGS_SERVICE_GETGEOGRAPHICMAP_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/BoundingBox.h"
00020
00021
00022 #include "geographic_msgs/GeographicMap.h"
00023
00024 namespace geographic_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct GetGeographicMapRequest_ {
00028 typedef GetGeographicMapRequest_<ContainerAllocator> Type;
00029
00030 GetGeographicMapRequest_()
00031 : url()
00032 , bounds()
00033 {
00034 }
00035
00036 GetGeographicMapRequest_(const ContainerAllocator& _alloc)
00037 : url(_alloc)
00038 , bounds(_alloc)
00039 {
00040 }
00041
00042 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _url_type;
00043 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > url;
00044
00045 typedef ::geographic_msgs::BoundingBox_<ContainerAllocator> _bounds_type;
00046 ::geographic_msgs::BoundingBox_<ContainerAllocator> bounds;
00047
00048
00049 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > Ptr;
00050 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> const> ConstPtr;
00051 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00052 };
00053 typedef ::geographic_msgs::GetGeographicMapRequest_<std::allocator<void> > GetGeographicMapRequest;
00054
00055 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapRequest> GetGeographicMapRequestPtr;
00056 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapRequest const> GetGeographicMapRequestConstPtr;
00057
00058
00059
00060 template <class ContainerAllocator>
00061 struct GetGeographicMapResponse_ {
00062 typedef GetGeographicMapResponse_<ContainerAllocator> Type;
00063
00064 GetGeographicMapResponse_()
00065 : success(false)
00066 , status()
00067 , map()
00068 {
00069 }
00070
00071 GetGeographicMapResponse_(const ContainerAllocator& _alloc)
00072 : success(false)
00073 , status(_alloc)
00074 , map(_alloc)
00075 {
00076 }
00077
00078 typedef uint8_t _success_type;
00079 uint8_t success;
00080
00081 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _status_type;
00082 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > status;
00083
00084 typedef ::geographic_msgs::GeographicMap_<ContainerAllocator> _map_type;
00085 ::geographic_msgs::GeographicMap_<ContainerAllocator> map;
00086
00087
00088 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > Ptr;
00089 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> const> ConstPtr;
00090 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00091 };
00092 typedef ::geographic_msgs::GetGeographicMapResponse_<std::allocator<void> > GetGeographicMapResponse;
00093
00094 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapResponse> GetGeographicMapResponsePtr;
00095 typedef boost::shared_ptr< ::geographic_msgs::GetGeographicMapResponse const> GetGeographicMapResponseConstPtr;
00096
00097
00098 struct GetGeographicMap
00099 {
00100
00101 typedef GetGeographicMapRequest Request;
00102 typedef GetGeographicMapResponse Response;
00103 Request request;
00104 Response response;
00105
00106 typedef Request RequestType;
00107 typedef Response ResponseType;
00108 };
00109 }
00110
00111 namespace ros
00112 {
00113 namespace message_traits
00114 {
00115 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > : public TrueType {};
00116 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> const> : public TrueType {};
00117 template<class ContainerAllocator>
00118 struct MD5Sum< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > {
00119 static const char* value()
00120 {
00121 return "505cc89008cb1745810d2ee4ea646d6e";
00122 }
00123
00124 static const char* value(const ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> &) { return value(); }
00125 static const uint64_t static_value1 = 0x505cc89008cb1745ULL;
00126 static const uint64_t static_value2 = 0x810d2ee4ea646d6eULL;
00127 };
00128
00129 template<class ContainerAllocator>
00130 struct DataType< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > {
00131 static const char* value()
00132 {
00133 return "geographic_msgs/GetGeographicMapRequest";
00134 }
00135
00136 static const char* value(const ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> &) { return value(); }
00137 };
00138
00139 template<class ContainerAllocator>
00140 struct Definition< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > {
00141 static const char* value()
00142 {
00143 return "\n\
00144 \n\
00145 string url\n\
00146 \n\
00147 \n\
00148 \n\
00149 BoundingBox bounds\n\
00150 \n\
00151 \n\
00152 ================================================================================\n\
00153 MSG: geographic_msgs/BoundingBox\n\
00154 # Geographic map bounding box. \n\
00155 #\n\
00156 # The two GeoPoints denote diagonally opposite corners of the box.\n\
00157 #\n\
00158 # If min_pt.latitude is NaN, the bounding box is \"global\", matching\n\
00159 # any valid latitude, longitude and altitude.\n\
00160 #\n\
00161 # If min_pt.altitude is NaN, the bounding box is two-dimensional and\n\
00162 # matches any altitude within the specified latitude and longitude\n\
00163 # range.\n\
00164 \n\
00165 GeoPoint min_pt # lowest and most Southwestern corner\n\
00166 GeoPoint max_pt # highest and most Northeastern corner\n\
00167 \n\
00168 ================================================================================\n\
00169 MSG: geographic_msgs/GeoPoint\n\
00170 # Geographic point, using the WGS 84 reference ellipsoid.\n\
00171 \n\
00172 # Latitude [degrees]. Positive is north of equator; negative is south\n\
00173 # (-90 <= latitude <= +90).\n\
00174 float64 latitude\n\
00175 \n\
00176 # Longitude [degrees]. Positive is east of prime meridian; negative is\n\
00177 # west (-180 <= longitude <= +180). At the poles, latitude is -90 or\n\
00178 # +90, and longitude is irrelevant, but must be in range.\n\
00179 float64 longitude\n\
00180 \n\
00181 # Altitude [m]. Positive is above the WGS 84 ellipsoid (NaN if unspecified).\n\
00182 float64 altitude\n\
00183 \n\
00184 ";
00185 }
00186
00187 static const char* value(const ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> &) { return value(); }
00188 };
00189
00190 }
00191 }
00192
00193
00194 namespace ros
00195 {
00196 namespace message_traits
00197 {
00198 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > : public TrueType {};
00199 template<class ContainerAllocator> struct IsMessage< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> const> : public TrueType {};
00200 template<class ContainerAllocator>
00201 struct MD5Sum< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > {
00202 static const char* value()
00203 {
00204 return "0910332806c65953a4f4252eb780811a";
00205 }
00206
00207 static const char* value(const ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> &) { return value(); }
00208 static const uint64_t static_value1 = 0x0910332806c65953ULL;
00209 static const uint64_t static_value2 = 0xa4f4252eb780811aULL;
00210 };
00211
00212 template<class ContainerAllocator>
00213 struct DataType< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > {
00214 static const char* value()
00215 {
00216 return "geographic_msgs/GetGeographicMapResponse";
00217 }
00218
00219 static const char* value(const ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> &) { return value(); }
00220 };
00221
00222 template<class ContainerAllocator>
00223 struct Definition< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > {
00224 static const char* value()
00225 {
00226 return "\n\
00227 bool success\n\
00228 string status\n\
00229 \n\
00230 \n\
00231 GeographicMap map\n\
00232 \n\
00233 \n\
00234 ================================================================================\n\
00235 MSG: geographic_msgs/GeographicMap\n\
00236 # Geographic map for a specified region.\n\
00237 \n\
00238 Header header # stamp specifies time\n\
00239 # frame_id (normally /map)\n\
00240 \n\
00241 uuid_msgs/UniqueID id # identifier for this map\n\
00242 BoundingBox bounds # 2D bounding box containing map\n\
00243 \n\
00244 WayPoint[] points # way-points\n\
00245 MapFeature[] features # map features\n\
00246 KeyValue[] props # map properties\n\
00247 \n\
00248 ================================================================================\n\
00249 MSG: std_msgs/Header\n\
00250 # Standard metadata for higher-level stamped data types.\n\
00251 # This is generally used to communicate timestamped data \n\
00252 # in a particular coordinate frame.\n\
00253 # \n\
00254 # sequence ID: consecutively increasing ID \n\
00255 uint32 seq\n\
00256 #Two-integer timestamp that is expressed as:\n\
00257 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00258 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00259 # time-handling sugar is provided by the client library\n\
00260 time stamp\n\
00261 #Frame this data is associated with\n\
00262 # 0: no frame\n\
00263 # 1: global frame\n\
00264 string frame_id\n\
00265 \n\
00266 ================================================================================\n\
00267 MSG: uuid_msgs/UniqueID\n\
00268 # A universally unique identifier (UUID).\n\
00269 #\n\
00270 # http://en.wikipedia.org/wiki/Universally_unique_identifier\n\
00271 # http://tools.ietf.org/html/rfc4122.html\n\
00272 \n\
00273 uint8[16] uuid\n\
00274 \n\
00275 ================================================================================\n\
00276 MSG: geographic_msgs/BoundingBox\n\
00277 # Geographic map bounding box. \n\
00278 #\n\
00279 # The two GeoPoints denote diagonally opposite corners of the box.\n\
00280 #\n\
00281 # If min_pt.latitude is NaN, the bounding box is \"global\", matching\n\
00282 # any valid latitude, longitude and altitude.\n\
00283 #\n\
00284 # If min_pt.altitude is NaN, the bounding box is two-dimensional and\n\
00285 # matches any altitude within the specified latitude and longitude\n\
00286 # range.\n\
00287 \n\
00288 GeoPoint min_pt # lowest and most Southwestern corner\n\
00289 GeoPoint max_pt # highest and most Northeastern corner\n\
00290 \n\
00291 ================================================================================\n\
00292 MSG: geographic_msgs/GeoPoint\n\
00293 # Geographic point, using the WGS 84 reference ellipsoid.\n\
00294 \n\
00295 # Latitude [degrees]. Positive is north of equator; negative is south\n\
00296 # (-90 <= latitude <= +90).\n\
00297 float64 latitude\n\
00298 \n\
00299 # Longitude [degrees]. Positive is east of prime meridian; negative is\n\
00300 # west (-180 <= longitude <= +180). At the poles, latitude is -90 or\n\
00301 # +90, and longitude is irrelevant, but must be in range.\n\
00302 float64 longitude\n\
00303 \n\
00304 # Altitude [m]. Positive is above the WGS 84 ellipsoid (NaN if unspecified).\n\
00305 float64 altitude\n\
00306 \n\
00307 ================================================================================\n\
00308 MSG: geographic_msgs/WayPoint\n\
00309 # Way-point element for a geographic map.\n\
00310 \n\
00311 uuid_msgs/UniqueID id # Unique way-point identifier\n\
00312 GeoPoint position # Position relative to WGS 84 ellipsoid\n\
00313 KeyValue[] props # Key/value properties for this point\n\
00314 \n\
00315 ================================================================================\n\
00316 MSG: geographic_msgs/KeyValue\n\
00317 # Geographic map tag (key, value) pair\n\
00318 #\n\
00319 # This is equivalent to diagnostic_msgs/KeyValue, repeated here to\n\
00320 # avoid introducing a trivial stack dependency.\n\
00321 \n\
00322 string key # tag label\n\
00323 string value # corresponding value\n\
00324 \n\
00325 ================================================================================\n\
00326 MSG: geographic_msgs/MapFeature\n\
00327 # Geographic map feature.\n\
00328 #\n\
00329 # A list of WayPoint IDs for features like streets, highways, hiking\n\
00330 # trails, the outlines of buildings and parking lots in sequential\n\
00331 # order.\n\
00332 #\n\
00333 # Feature lists may also contain other feature lists as members.\n\
00334 \n\
00335 uuid_msgs/UniqueID id # Unique feature identifier\n\
00336 uuid_msgs/UniqueID[] components # Sequence of feature components\n\
00337 KeyValue[] props # Key/value properties for this feature\n\
00338 \n\
00339 ";
00340 }
00341
00342 static const char* value(const ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> &) { return value(); }
00343 };
00344
00345 }
00346 }
00347
00348 namespace ros
00349 {
00350 namespace serialization
00351 {
00352
00353 template<class ContainerAllocator> struct Serializer< ::geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> >
00354 {
00355 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00356 {
00357 stream.next(m.url);
00358 stream.next(m.bounds);
00359 }
00360
00361 ROS_DECLARE_ALLINONE_SERIALIZER;
00362 };
00363 }
00364 }
00365
00366
00367 namespace ros
00368 {
00369 namespace serialization
00370 {
00371
00372 template<class ContainerAllocator> struct Serializer< ::geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> >
00373 {
00374 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00375 {
00376 stream.next(m.success);
00377 stream.next(m.status);
00378 stream.next(m.map);
00379 }
00380
00381 ROS_DECLARE_ALLINONE_SERIALIZER;
00382 };
00383 }
00384 }
00385
00386 namespace ros
00387 {
00388 namespace service_traits
00389 {
00390 template<>
00391 struct MD5Sum<geographic_msgs::GetGeographicMap> {
00392 static const char* value()
00393 {
00394 return "c0278e653eee0ad79600510650e7be39";
00395 }
00396
00397 static const char* value(const geographic_msgs::GetGeographicMap&) { return value(); }
00398 };
00399
00400 template<>
00401 struct DataType<geographic_msgs::GetGeographicMap> {
00402 static const char* value()
00403 {
00404 return "geographic_msgs/GetGeographicMap";
00405 }
00406
00407 static const char* value(const geographic_msgs::GetGeographicMap&) { return value(); }
00408 };
00409
00410 template<class ContainerAllocator>
00411 struct MD5Sum<geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > {
00412 static const char* value()
00413 {
00414 return "c0278e653eee0ad79600510650e7be39";
00415 }
00416
00417 static const char* value(const geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> &) { return value(); }
00418 };
00419
00420 template<class ContainerAllocator>
00421 struct DataType<geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> > {
00422 static const char* value()
00423 {
00424 return "geographic_msgs/GetGeographicMap";
00425 }
00426
00427 static const char* value(const geographic_msgs::GetGeographicMapRequest_<ContainerAllocator> &) { return value(); }
00428 };
00429
00430 template<class ContainerAllocator>
00431 struct MD5Sum<geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > {
00432 static const char* value()
00433 {
00434 return "c0278e653eee0ad79600510650e7be39";
00435 }
00436
00437 static const char* value(const geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> &) { return value(); }
00438 };
00439
00440 template<class ContainerAllocator>
00441 struct DataType<geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> > {
00442 static const char* value()
00443 {
00444 return "geographic_msgs/GetGeographicMap";
00445 }
00446
00447 static const char* value(const geographic_msgs::GetGeographicMapResponse_<ContainerAllocator> &) { return value(); }
00448 };
00449
00450 }
00451 }
00452
00453 #endif // GEOGRAPHIC_MSGS_SERVICE_GETGEOGRAPHICMAP_H
00454