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