Go to the documentation of this file.00001
00002 #ifndef R2_MSGS_SERVICE_SERVO_H
00003 #define R2_MSGS_SERVICE_SERVO_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
00022 namespace r2_msgs
00023 {
00024 template <class ContainerAllocator>
00025 struct ServoRequest_ {
00026 typedef ServoRequest_<ContainerAllocator> Type;
00027
00028 ServoRequest_()
00029 : joint()
00030 , state(false)
00031 {
00032 }
00033
00034 ServoRequest_(const ContainerAllocator& _alloc)
00035 : joint(_alloc)
00036 , state(false)
00037 {
00038 }
00039
00040 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _joint_type;
00041 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > joint;
00042
00043 typedef uint8_t _state_type;
00044 uint8_t state;
00045
00046
00047 typedef boost::shared_ptr< ::r2_msgs::ServoRequest_<ContainerAllocator> > Ptr;
00048 typedef boost::shared_ptr< ::r2_msgs::ServoRequest_<ContainerAllocator> const> ConstPtr;
00049 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00050 };
00051 typedef ::r2_msgs::ServoRequest_<std::allocator<void> > ServoRequest;
00052
00053 typedef boost::shared_ptr< ::r2_msgs::ServoRequest> ServoRequestPtr;
00054 typedef boost::shared_ptr< ::r2_msgs::ServoRequest const> ServoRequestConstPtr;
00055
00056
00057
00058 template <class ContainerAllocator>
00059 struct ServoResponse_ {
00060 typedef ServoResponse_<ContainerAllocator> Type;
00061
00062 ServoResponse_()
00063 : status(0)
00064 {
00065 }
00066
00067 ServoResponse_(const ContainerAllocator& _alloc)
00068 : status(0)
00069 {
00070 }
00071
00072 typedef int32_t _status_type;
00073 int32_t status;
00074
00075
00076 typedef boost::shared_ptr< ::r2_msgs::ServoResponse_<ContainerAllocator> > Ptr;
00077 typedef boost::shared_ptr< ::r2_msgs::ServoResponse_<ContainerAllocator> const> ConstPtr;
00078 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00079 };
00080 typedef ::r2_msgs::ServoResponse_<std::allocator<void> > ServoResponse;
00081
00082 typedef boost::shared_ptr< ::r2_msgs::ServoResponse> ServoResponsePtr;
00083 typedef boost::shared_ptr< ::r2_msgs::ServoResponse const> ServoResponseConstPtr;
00084
00085
00086 struct Servo
00087 {
00088
00089 typedef ServoRequest Request;
00090 typedef ServoResponse Response;
00091 Request request;
00092 Response response;
00093
00094 typedef Request RequestType;
00095 typedef Response ResponseType;
00096 };
00097 }
00098
00099 namespace ros
00100 {
00101 namespace message_traits
00102 {
00103 template<class ContainerAllocator> struct IsMessage< ::r2_msgs::ServoRequest_<ContainerAllocator> > : public TrueType {};
00104 template<class ContainerAllocator> struct IsMessage< ::r2_msgs::ServoRequest_<ContainerAllocator> const> : public TrueType {};
00105 template<class ContainerAllocator>
00106 struct MD5Sum< ::r2_msgs::ServoRequest_<ContainerAllocator> > {
00107 static const char* value()
00108 {
00109 return "84ae688f7219fea2850abe26519fc2d0";
00110 }
00111
00112 static const char* value(const ::r2_msgs::ServoRequest_<ContainerAllocator> &) { return value(); }
00113 static const uint64_t static_value1 = 0x84ae688f7219fea2ULL;
00114 static const uint64_t static_value2 = 0x850abe26519fc2d0ULL;
00115 };
00116
00117 template<class ContainerAllocator>
00118 struct DataType< ::r2_msgs::ServoRequest_<ContainerAllocator> > {
00119 static const char* value()
00120 {
00121 return "r2_msgs/ServoRequest";
00122 }
00123
00124 static const char* value(const ::r2_msgs::ServoRequest_<ContainerAllocator> &) { return value(); }
00125 };
00126
00127 template<class ContainerAllocator>
00128 struct Definition< ::r2_msgs::ServoRequest_<ContainerAllocator> > {
00129 static const char* value()
00130 {
00131 return "string joint\n\
00132 bool state\n\
00133 \n\
00134 ";
00135 }
00136
00137 static const char* value(const ::r2_msgs::ServoRequest_<ContainerAllocator> &) { return value(); }
00138 };
00139
00140 }
00141 }
00142
00143
00144 namespace ros
00145 {
00146 namespace message_traits
00147 {
00148 template<class ContainerAllocator> struct IsMessage< ::r2_msgs::ServoResponse_<ContainerAllocator> > : public TrueType {};
00149 template<class ContainerAllocator> struct IsMessage< ::r2_msgs::ServoResponse_<ContainerAllocator> const> : public TrueType {};
00150 template<class ContainerAllocator>
00151 struct MD5Sum< ::r2_msgs::ServoResponse_<ContainerAllocator> > {
00152 static const char* value()
00153 {
00154 return "86791dcf1de997ec7de5a0de7e4dcfcc";
00155 }
00156
00157 static const char* value(const ::r2_msgs::ServoResponse_<ContainerAllocator> &) { return value(); }
00158 static const uint64_t static_value1 = 0x86791dcf1de997ecULL;
00159 static const uint64_t static_value2 = 0x7de5a0de7e4dcfccULL;
00160 };
00161
00162 template<class ContainerAllocator>
00163 struct DataType< ::r2_msgs::ServoResponse_<ContainerAllocator> > {
00164 static const char* value()
00165 {
00166 return "r2_msgs/ServoResponse";
00167 }
00168
00169 static const char* value(const ::r2_msgs::ServoResponse_<ContainerAllocator> &) { return value(); }
00170 };
00171
00172 template<class ContainerAllocator>
00173 struct Definition< ::r2_msgs::ServoResponse_<ContainerAllocator> > {
00174 static const char* value()
00175 {
00176 return "int32 status\n\
00177 \n\
00178 \n\
00179 ";
00180 }
00181
00182 static const char* value(const ::r2_msgs::ServoResponse_<ContainerAllocator> &) { return value(); }
00183 };
00184
00185 template<class ContainerAllocator> struct IsFixedSize< ::r2_msgs::ServoResponse_<ContainerAllocator> > : public TrueType {};
00186 }
00187 }
00188
00189 namespace ros
00190 {
00191 namespace serialization
00192 {
00193
00194 template<class ContainerAllocator> struct Serializer< ::r2_msgs::ServoRequest_<ContainerAllocator> >
00195 {
00196 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00197 {
00198 stream.next(m.joint);
00199 stream.next(m.state);
00200 }
00201
00202 ROS_DECLARE_ALLINONE_SERIALIZER;
00203 };
00204 }
00205 }
00206
00207
00208 namespace ros
00209 {
00210 namespace serialization
00211 {
00212
00213 template<class ContainerAllocator> struct Serializer< ::r2_msgs::ServoResponse_<ContainerAllocator> >
00214 {
00215 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00216 {
00217 stream.next(m.status);
00218 }
00219
00220 ROS_DECLARE_ALLINONE_SERIALIZER;
00221 };
00222 }
00223 }
00224
00225 namespace ros
00226 {
00227 namespace service_traits
00228 {
00229 template<>
00230 struct MD5Sum<r2_msgs::Servo> {
00231 static const char* value()
00232 {
00233 return "e20c77f9e16ee3e6c3b899e416826344";
00234 }
00235
00236 static const char* value(const r2_msgs::Servo&) { return value(); }
00237 };
00238
00239 template<>
00240 struct DataType<r2_msgs::Servo> {
00241 static const char* value()
00242 {
00243 return "r2_msgs/Servo";
00244 }
00245
00246 static const char* value(const r2_msgs::Servo&) { return value(); }
00247 };
00248
00249 template<class ContainerAllocator>
00250 struct MD5Sum<r2_msgs::ServoRequest_<ContainerAllocator> > {
00251 static const char* value()
00252 {
00253 return "e20c77f9e16ee3e6c3b899e416826344";
00254 }
00255
00256 static const char* value(const r2_msgs::ServoRequest_<ContainerAllocator> &) { return value(); }
00257 };
00258
00259 template<class ContainerAllocator>
00260 struct DataType<r2_msgs::ServoRequest_<ContainerAllocator> > {
00261 static const char* value()
00262 {
00263 return "r2_msgs/Servo";
00264 }
00265
00266 static const char* value(const r2_msgs::ServoRequest_<ContainerAllocator> &) { return value(); }
00267 };
00268
00269 template<class ContainerAllocator>
00270 struct MD5Sum<r2_msgs::ServoResponse_<ContainerAllocator> > {
00271 static const char* value()
00272 {
00273 return "e20c77f9e16ee3e6c3b899e416826344";
00274 }
00275
00276 static const char* value(const r2_msgs::ServoResponse_<ContainerAllocator> &) { return value(); }
00277 };
00278
00279 template<class ContainerAllocator>
00280 struct DataType<r2_msgs::ServoResponse_<ContainerAllocator> > {
00281 static const char* value()
00282 {
00283 return "r2_msgs/Servo";
00284 }
00285
00286 static const char* value(const r2_msgs::ServoResponse_<ContainerAllocator> &) { return value(); }
00287 };
00288
00289 }
00290 }
00291
00292 #endif // R2_MSGS_SERVICE_SERVO_H
00293