Go to the documentation of this file.00001
00002 #ifndef HUMANOID_NAV_MSGS_SERVICE_CLIPFOOTSTEP_H
00003 #define HUMANOID_NAV_MSGS_SERVICE_CLIPFOOTSTEP_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 "humanoid_nav_msgs/StepTarget.h"
00020
00021
00022 #include "humanoid_nav_msgs/StepTarget.h"
00023
00024 namespace humanoid_nav_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct ClipFootstepRequest_ {
00028 typedef ClipFootstepRequest_<ContainerAllocator> Type;
00029
00030 ClipFootstepRequest_()
00031 : step()
00032 {
00033 }
00034
00035 ClipFootstepRequest_(const ContainerAllocator& _alloc)
00036 : step(_alloc)
00037 {
00038 }
00039
00040 typedef ::humanoid_nav_msgs::StepTarget_<ContainerAllocator> _step_type;
00041 ::humanoid_nav_msgs::StepTarget_<ContainerAllocator> step;
00042
00043
00044 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > Ptr;
00045 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> const> ConstPtr;
00046 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00047 };
00048 typedef ::humanoid_nav_msgs::ClipFootstepRequest_<std::allocator<void> > ClipFootstepRequest;
00049
00050 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepRequest> ClipFootstepRequestPtr;
00051 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepRequest const> ClipFootstepRequestConstPtr;
00052
00053
00054 template <class ContainerAllocator>
00055 struct ClipFootstepResponse_ {
00056 typedef ClipFootstepResponse_<ContainerAllocator> Type;
00057
00058 ClipFootstepResponse_()
00059 : step()
00060 {
00061 }
00062
00063 ClipFootstepResponse_(const ContainerAllocator& _alloc)
00064 : step(_alloc)
00065 {
00066 }
00067
00068 typedef ::humanoid_nav_msgs::StepTarget_<ContainerAllocator> _step_type;
00069 ::humanoid_nav_msgs::StepTarget_<ContainerAllocator> step;
00070
00071
00072 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > Ptr;
00073 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> const> ConstPtr;
00074 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00075 };
00076 typedef ::humanoid_nav_msgs::ClipFootstepResponse_<std::allocator<void> > ClipFootstepResponse;
00077
00078 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepResponse> ClipFootstepResponsePtr;
00079 typedef boost::shared_ptr< ::humanoid_nav_msgs::ClipFootstepResponse const> ClipFootstepResponseConstPtr;
00080
00081 struct ClipFootstep
00082 {
00083
00084 typedef ClipFootstepRequest Request;
00085 typedef ClipFootstepResponse 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< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > : public TrueType {};
00099 template<class ContainerAllocator> struct IsMessage< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> const> : public TrueType {};
00100 template<class ContainerAllocator>
00101 struct MD5Sum< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > {
00102 static const char* value()
00103 {
00104 return "f22cfce442b381849d82602383b052c7";
00105 }
00106
00107 static const char* value(const ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> &) { return value(); }
00108 static const uint64_t static_value1 = 0xf22cfce442b38184ULL;
00109 static const uint64_t static_value2 = 0x9d82602383b052c7ULL;
00110 };
00111
00112 template<class ContainerAllocator>
00113 struct DataType< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > {
00114 static const char* value()
00115 {
00116 return "humanoid_nav_msgs/ClipFootstepRequest";
00117 }
00118
00119 static const char* value(const ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> &) { return value(); }
00120 };
00121
00122 template<class ContainerAllocator>
00123 struct Definition< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > {
00124 static const char* value()
00125 {
00126 return "StepTarget step\n\
00127 \n\
00128 ================================================================================\n\
00129 MSG: humanoid_nav_msgs/StepTarget\n\
00130 # Target for a single stepping motion of a humanoid's leg\n\
00131 \n\
00132 geometry_msgs/Pose2D pose # step pose as relative offset to last leg\n\
00133 uint8 leg # which leg to use (left/right, see below)\n\
00134 \n\
00135 uint8 right=0 # right leg constant\n\
00136 uint8 left=1 # left leg constant\n\
00137 \n\
00138 ================================================================================\n\
00139 MSG: geometry_msgs/Pose2D\n\
00140 # This expresses a position and orientation on a 2D manifold.\n\
00141 \n\
00142 float64 x\n\
00143 float64 y\n\
00144 float64 theta\n\
00145 ";
00146 }
00147
00148 static const char* value(const ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> &) { return value(); }
00149 };
00150
00151 template<class ContainerAllocator> struct IsFixedSize< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > : public TrueType {};
00152 }
00153 }
00154
00155
00156 namespace ros
00157 {
00158 namespace message_traits
00159 {
00160 template<class ContainerAllocator> struct IsMessage< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > : public TrueType {};
00161 template<class ContainerAllocator> struct IsMessage< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> const> : public TrueType {};
00162 template<class ContainerAllocator>
00163 struct MD5Sum< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > {
00164 static const char* value()
00165 {
00166 return "f22cfce442b381849d82602383b052c7";
00167 }
00168
00169 static const char* value(const ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> &) { return value(); }
00170 static const uint64_t static_value1 = 0xf22cfce442b38184ULL;
00171 static const uint64_t static_value2 = 0x9d82602383b052c7ULL;
00172 };
00173
00174 template<class ContainerAllocator>
00175 struct DataType< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > {
00176 static const char* value()
00177 {
00178 return "humanoid_nav_msgs/ClipFootstepResponse";
00179 }
00180
00181 static const char* value(const ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> &) { return value(); }
00182 };
00183
00184 template<class ContainerAllocator>
00185 struct Definition< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > {
00186 static const char* value()
00187 {
00188 return "StepTarget step\n\
00189 \n\
00190 \n\
00191 ================================================================================\n\
00192 MSG: humanoid_nav_msgs/StepTarget\n\
00193 # Target for a single stepping motion of a humanoid's leg\n\
00194 \n\
00195 geometry_msgs/Pose2D pose # step pose as relative offset to last leg\n\
00196 uint8 leg # which leg to use (left/right, see below)\n\
00197 \n\
00198 uint8 right=0 # right leg constant\n\
00199 uint8 left=1 # left leg constant\n\
00200 \n\
00201 ================================================================================\n\
00202 MSG: geometry_msgs/Pose2D\n\
00203 # This expresses a position and orientation on a 2D manifold.\n\
00204 \n\
00205 float64 x\n\
00206 float64 y\n\
00207 float64 theta\n\
00208 ";
00209 }
00210
00211 static const char* value(const ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> &) { return value(); }
00212 };
00213
00214 template<class ContainerAllocator> struct IsFixedSize< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > : public TrueType {};
00215 }
00216 }
00217
00218 namespace ros
00219 {
00220 namespace serialization
00221 {
00222
00223 template<class ContainerAllocator> struct Serializer< ::humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> >
00224 {
00225 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00226 {
00227 stream.next(m.step);
00228 }
00229
00230 ROS_DECLARE_ALLINONE_SERIALIZER;
00231 };
00232 }
00233 }
00234
00235
00236 namespace ros
00237 {
00238 namespace serialization
00239 {
00240
00241 template<class ContainerAllocator> struct Serializer< ::humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> >
00242 {
00243 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00244 {
00245 stream.next(m.step);
00246 }
00247
00248 ROS_DECLARE_ALLINONE_SERIALIZER;
00249 };
00250 }
00251 }
00252
00253 namespace ros
00254 {
00255 namespace service_traits
00256 {
00257 template<>
00258 struct MD5Sum<humanoid_nav_msgs::ClipFootstep> {
00259 static const char* value()
00260 {
00261 return "394ac576028f40af6569704f845b86a1";
00262 }
00263
00264 static const char* value(const humanoid_nav_msgs::ClipFootstep&) { return value(); }
00265 };
00266
00267 template<>
00268 struct DataType<humanoid_nav_msgs::ClipFootstep> {
00269 static const char* value()
00270 {
00271 return "humanoid_nav_msgs/ClipFootstep";
00272 }
00273
00274 static const char* value(const humanoid_nav_msgs::ClipFootstep&) { return value(); }
00275 };
00276
00277 template<class ContainerAllocator>
00278 struct MD5Sum<humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > {
00279 static const char* value()
00280 {
00281 return "394ac576028f40af6569704f845b86a1";
00282 }
00283
00284 static const char* value(const humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> &) { return value(); }
00285 };
00286
00287 template<class ContainerAllocator>
00288 struct DataType<humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> > {
00289 static const char* value()
00290 {
00291 return "humanoid_nav_msgs/ClipFootstep";
00292 }
00293
00294 static const char* value(const humanoid_nav_msgs::ClipFootstepRequest_<ContainerAllocator> &) { return value(); }
00295 };
00296
00297 template<class ContainerAllocator>
00298 struct MD5Sum<humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > {
00299 static const char* value()
00300 {
00301 return "394ac576028f40af6569704f845b86a1";
00302 }
00303
00304 static const char* value(const humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> &) { return value(); }
00305 };
00306
00307 template<class ContainerAllocator>
00308 struct DataType<humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> > {
00309 static const char* value()
00310 {
00311 return "humanoid_nav_msgs/ClipFootstep";
00312 }
00313
00314 static const char* value(const humanoid_nav_msgs::ClipFootstepResponse_<ContainerAllocator> &) { return value(); }
00315 };
00316
00317 }
00318 }
00319
00320 #endif // HUMANOID_NAV_MSGS_SERVICE_CLIPFOOTSTEP_H
00321