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