Go to the documentation of this file.00001
00002 #ifndef COB_FOOTPRINT_OBSERVER_SERVICE_GETFOOTPRINT_H
00003 #define COB_FOOTPRINT_OBSERVER_SERVICE_GETFOOTPRINT_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/PolygonStamped.h"
00022 #include "std_msgs/Bool.h"
00023
00024 namespace cob_footprint_observer
00025 {
00026 template <class ContainerAllocator>
00027 struct GetFootprintRequest_ {
00028 typedef GetFootprintRequest_<ContainerAllocator> Type;
00029
00030 GetFootprintRequest_()
00031 {
00032 }
00033
00034 GetFootprintRequest_(const ContainerAllocator& _alloc)
00035 {
00036 }
00037
00038
00039 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > Ptr;
00040 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> const> ConstPtr;
00041 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00042 };
00043 typedef ::cob_footprint_observer::GetFootprintRequest_<std::allocator<void> > GetFootprintRequest;
00044
00045 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintRequest> GetFootprintRequestPtr;
00046 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintRequest const> GetFootprintRequestConstPtr;
00047
00048
00049 template <class ContainerAllocator>
00050 struct GetFootprintResponse_ {
00051 typedef GetFootprintResponse_<ContainerAllocator> Type;
00052
00053 GetFootprintResponse_()
00054 : footprint()
00055 , success()
00056 {
00057 }
00058
00059 GetFootprintResponse_(const ContainerAllocator& _alloc)
00060 : footprint(_alloc)
00061 , success(_alloc)
00062 {
00063 }
00064
00065 typedef ::geometry_msgs::PolygonStamped_<ContainerAllocator> _footprint_type;
00066 ::geometry_msgs::PolygonStamped_<ContainerAllocator> footprint;
00067
00068 typedef ::std_msgs::Bool_<ContainerAllocator> _success_type;
00069 ::std_msgs::Bool_<ContainerAllocator> success;
00070
00071
00072 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > Ptr;
00073 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> const> ConstPtr;
00074 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00075 };
00076 typedef ::cob_footprint_observer::GetFootprintResponse_<std::allocator<void> > GetFootprintResponse;
00077
00078 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintResponse> GetFootprintResponsePtr;
00079 typedef boost::shared_ptr< ::cob_footprint_observer::GetFootprintResponse const> GetFootprintResponseConstPtr;
00080
00081 struct GetFootprint
00082 {
00083
00084 typedef GetFootprintRequest Request;
00085 typedef GetFootprintResponse 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< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > : public TrueType {};
00099 template<class ContainerAllocator> struct IsMessage< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> const> : public TrueType {};
00100 template<class ContainerAllocator>
00101 struct MD5Sum< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > {
00102 static const char* value()
00103 {
00104 return "d41d8cd98f00b204e9800998ecf8427e";
00105 }
00106
00107 static const char* value(const ::cob_footprint_observer::GetFootprintRequest_<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< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > {
00114 static const char* value()
00115 {
00116 return "cob_footprint_observer/GetFootprintRequest";
00117 }
00118
00119 static const char* value(const ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> &) { return value(); }
00120 };
00121
00122 template<class ContainerAllocator>
00123 struct Definition< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > {
00124 static const char* value()
00125 {
00126 return "\n\
00127 ";
00128 }
00129
00130 static const char* value(const ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> &) { return value(); }
00131 };
00132
00133 template<class ContainerAllocator> struct IsFixedSize< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > : public TrueType {};
00134 }
00135 }
00136
00137
00138 namespace ros
00139 {
00140 namespace message_traits
00141 {
00142 template<class ContainerAllocator> struct IsMessage< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > : public TrueType {};
00143 template<class ContainerAllocator> struct IsMessage< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> const> : public TrueType {};
00144 template<class ContainerAllocator>
00145 struct MD5Sum< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > {
00146 static const char* value()
00147 {
00148 return "f40d48f5ad16c4c6dbedafd967306675";
00149 }
00150
00151 static const char* value(const ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> &) { return value(); }
00152 static const uint64_t static_value1 = 0xf40d48f5ad16c4c6ULL;
00153 static const uint64_t static_value2 = 0xdbedafd967306675ULL;
00154 };
00155
00156 template<class ContainerAllocator>
00157 struct DataType< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > {
00158 static const char* value()
00159 {
00160 return "cob_footprint_observer/GetFootprintResponse";
00161 }
00162
00163 static const char* value(const ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> &) { return value(); }
00164 };
00165
00166 template<class ContainerAllocator>
00167 struct Definition< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > {
00168 static const char* value()
00169 {
00170 return "geometry_msgs/PolygonStamped footprint\n\
00171 std_msgs/Bool success\n\
00172 \n\
00173 \n\
00174 ================================================================================\n\
00175 MSG: geometry_msgs/PolygonStamped\n\
00176 # This represents a Polygon with reference coordinate frame and timestamp\n\
00177 Header header\n\
00178 Polygon polygon\n\
00179 \n\
00180 ================================================================================\n\
00181 MSG: std_msgs/Header\n\
00182 # Standard metadata for higher-level stamped data types.\n\
00183 # This is generally used to communicate timestamped data \n\
00184 # in a particular coordinate frame.\n\
00185 # \n\
00186 # sequence ID: consecutively increasing ID \n\
00187 uint32 seq\n\
00188 #Two-integer timestamp that is expressed as:\n\
00189 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00190 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00191 # time-handling sugar is provided by the client library\n\
00192 time stamp\n\
00193 #Frame this data is associated with\n\
00194 # 0: no frame\n\
00195 # 1: global frame\n\
00196 string frame_id\n\
00197 \n\
00198 ================================================================================\n\
00199 MSG: geometry_msgs/Polygon\n\
00200 #A specification of a polygon where the first and last points are assumed to be connected\n\
00201 Point32[] points\n\
00202 \n\
00203 ================================================================================\n\
00204 MSG: geometry_msgs/Point32\n\
00205 # This contains the position of a point in free space(with 32 bits of precision).\n\
00206 # It is recommeded to use Point wherever possible instead of Point32. \n\
00207 # \n\
00208 # This recommendation is to promote interoperability. \n\
00209 #\n\
00210 # This message is designed to take up less space when sending\n\
00211 # lots of points at once, as in the case of a PointCloud. \n\
00212 \n\
00213 float32 x\n\
00214 float32 y\n\
00215 float32 z\n\
00216 ================================================================================\n\
00217 MSG: std_msgs/Bool\n\
00218 bool data\n\
00219 ";
00220 }
00221
00222 static const char* value(const ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> &) { return value(); }
00223 };
00224
00225 }
00226 }
00227
00228 namespace ros
00229 {
00230 namespace serialization
00231 {
00232
00233 template<class ContainerAllocator> struct Serializer< ::cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> >
00234 {
00235 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00236 {
00237 }
00238
00239 ROS_DECLARE_ALLINONE_SERIALIZER;
00240 };
00241 }
00242 }
00243
00244
00245 namespace ros
00246 {
00247 namespace serialization
00248 {
00249
00250 template<class ContainerAllocator> struct Serializer< ::cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> >
00251 {
00252 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00253 {
00254 stream.next(m.footprint);
00255 stream.next(m.success);
00256 }
00257
00258 ROS_DECLARE_ALLINONE_SERIALIZER;
00259 };
00260 }
00261 }
00262
00263 namespace ros
00264 {
00265 namespace service_traits
00266 {
00267 template<>
00268 struct MD5Sum<cob_footprint_observer::GetFootprint> {
00269 static const char* value()
00270 {
00271 return "f40d48f5ad16c4c6dbedafd967306675";
00272 }
00273
00274 static const char* value(const cob_footprint_observer::GetFootprint&) { return value(); }
00275 };
00276
00277 template<>
00278 struct DataType<cob_footprint_observer::GetFootprint> {
00279 static const char* value()
00280 {
00281 return "cob_footprint_observer/GetFootprint";
00282 }
00283
00284 static const char* value(const cob_footprint_observer::GetFootprint&) { return value(); }
00285 };
00286
00287 template<class ContainerAllocator>
00288 struct MD5Sum<cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > {
00289 static const char* value()
00290 {
00291 return "f40d48f5ad16c4c6dbedafd967306675";
00292 }
00293
00294 static const char* value(const cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> &) { return value(); }
00295 };
00296
00297 template<class ContainerAllocator>
00298 struct DataType<cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> > {
00299 static const char* value()
00300 {
00301 return "cob_footprint_observer/GetFootprint";
00302 }
00303
00304 static const char* value(const cob_footprint_observer::GetFootprintRequest_<ContainerAllocator> &) { return value(); }
00305 };
00306
00307 template<class ContainerAllocator>
00308 struct MD5Sum<cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > {
00309 static const char* value()
00310 {
00311 return "f40d48f5ad16c4c6dbedafd967306675";
00312 }
00313
00314 static const char* value(const cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> &) { return value(); }
00315 };
00316
00317 template<class ContainerAllocator>
00318 struct DataType<cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> > {
00319 static const char* value()
00320 {
00321 return "cob_footprint_observer/GetFootprint";
00322 }
00323
00324 static const char* value(const cob_footprint_observer::GetFootprintResponse_<ContainerAllocator> &) { return value(); }
00325 };
00326
00327 }
00328 }
00329
00330 #endif // COB_FOOTPRINT_OBSERVER_SERVICE_GETFOOTPRINT_H
00331