00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-shadow_robot/doc_stacks/2014-01-03_11-55-43.997996/shadow_robot/sr_robot_msgs/srv/ChangeMotorSystemControls.srv */ 00002 #ifndef SR_ROBOT_MSGS_SERVICE_CHANGEMOTORSYSTEMCONTROLS_H 00003 #define SR_ROBOT_MSGS_SERVICE_CHANGEMOTORSYSTEMCONTROLS_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 "sr_robot_msgs/MotorSystemControls.h" 00020 00021 00022 00023 namespace sr_robot_msgs 00024 { 00025 template <class ContainerAllocator> 00026 struct ChangeMotorSystemControlsRequest_ { 00027 typedef ChangeMotorSystemControlsRequest_<ContainerAllocator> Type; 00028 00029 ChangeMotorSystemControlsRequest_() 00030 : motor_system_controls() 00031 { 00032 } 00033 00034 ChangeMotorSystemControlsRequest_(const ContainerAllocator& _alloc) 00035 : motor_system_controls(_alloc) 00036 { 00037 } 00038 00039 typedef std::vector< ::sr_robot_msgs::MotorSystemControls_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::sr_robot_msgs::MotorSystemControls_<ContainerAllocator> >::other > _motor_system_controls_type; 00040 std::vector< ::sr_robot_msgs::MotorSystemControls_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::sr_robot_msgs::MotorSystemControls_<ContainerAllocator> >::other > motor_system_controls; 00041 00042 00043 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > Ptr; 00044 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> const> ConstPtr; 00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00046 }; // struct ChangeMotorSystemControlsRequest 00047 typedef ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<std::allocator<void> > ChangeMotorSystemControlsRequest; 00048 00049 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsRequest> ChangeMotorSystemControlsRequestPtr; 00050 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsRequest const> ChangeMotorSystemControlsRequestConstPtr; 00051 00052 00053 template <class ContainerAllocator> 00054 struct ChangeMotorSystemControlsResponse_ { 00055 typedef ChangeMotorSystemControlsResponse_<ContainerAllocator> Type; 00056 00057 ChangeMotorSystemControlsResponse_() 00058 : result(0) 00059 { 00060 } 00061 00062 ChangeMotorSystemControlsResponse_(const ContainerAllocator& _alloc) 00063 : result(0) 00064 { 00065 } 00066 00067 typedef int8_t _result_type; 00068 int8_t result; 00069 00070 enum { SUCCESS = 0 }; 00071 enum { MOTOR_ID_OUT_OF_RANGE = -1 }; 00072 00073 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > Ptr; 00074 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> const> ConstPtr; 00075 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00076 }; // struct ChangeMotorSystemControlsResponse 00077 typedef ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<std::allocator<void> > ChangeMotorSystemControlsResponse; 00078 00079 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsResponse> ChangeMotorSystemControlsResponsePtr; 00080 typedef boost::shared_ptr< ::sr_robot_msgs::ChangeMotorSystemControlsResponse const> ChangeMotorSystemControlsResponseConstPtr; 00081 00082 struct ChangeMotorSystemControls 00083 { 00084 00085 typedef ChangeMotorSystemControlsRequest Request; 00086 typedef ChangeMotorSystemControlsResponse Response; 00087 Request request; 00088 Response response; 00089 00090 typedef Request RequestType; 00091 typedef Response ResponseType; 00092 }; // struct ChangeMotorSystemControls 00093 } // namespace sr_robot_msgs 00094 00095 namespace ros 00096 { 00097 namespace message_traits 00098 { 00099 template<class ContainerAllocator> struct IsMessage< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > : public TrueType {}; 00100 template<class ContainerAllocator> struct IsMessage< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> const> : public TrueType {}; 00101 template<class ContainerAllocator> 00102 struct MD5Sum< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > { 00103 static const char* value() 00104 { 00105 return "6458c2239125c960f4d1ef4d23696a1e"; 00106 } 00107 00108 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> &) { return value(); } 00109 static const uint64_t static_value1 = 0x6458c2239125c960ULL; 00110 static const uint64_t static_value2 = 0xf4d1ef4d23696a1eULL; 00111 }; 00112 00113 template<class ContainerAllocator> 00114 struct DataType< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > { 00115 static const char* value() 00116 { 00117 return "sr_robot_msgs/ChangeMotorSystemControlsRequest"; 00118 } 00119 00120 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> &) { return value(); } 00121 }; 00122 00123 template<class ContainerAllocator> 00124 struct Definition< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > { 00125 static const char* value() 00126 { 00127 return "MotorSystemControls[] motor_system_controls\n\ 00128 \n\ 00129 ================================================================================\n\ 00130 MSG: sr_robot_msgs/MotorSystemControls\n\ 00131 int8 motor_id # the id of the motor you want to control\n\ 00132 \n\ 00133 bool enable_backlash_compensation # switch on/off backlash compensation at the motor level\n\ 00134 bool increase_sgl_tracking # increment the tracking value for the left gauge\n\ 00135 bool decrease_sgl_tracking # decrement the tracking value for the left gauge\n\ 00136 bool increase_sgr_tracking # increment the tracking value for the right gauge\n\ 00137 bool decrease_sgr_tracking # decrement the tracking value for the right gauge\n\ 00138 bool initiate_jiggling # starts jiggling the given motor\n\ 00139 bool write_config_to_eeprom # write the current configuration to the eeprom\n\ 00140 "; 00141 } 00142 00143 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> &) { return value(); } 00144 }; 00145 00146 } // namespace message_traits 00147 } // namespace ros 00148 00149 00150 namespace ros 00151 { 00152 namespace message_traits 00153 { 00154 template<class ContainerAllocator> struct IsMessage< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > : public TrueType {}; 00155 template<class ContainerAllocator> struct IsMessage< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> const> : public TrueType {}; 00156 template<class ContainerAllocator> 00157 struct MD5Sum< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > { 00158 static const char* value() 00159 { 00160 return "5dade9e97a517a3f230ed76028e54c71"; 00161 } 00162 00163 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> &) { return value(); } 00164 static const uint64_t static_value1 = 0x5dade9e97a517a3fULL; 00165 static const uint64_t static_value2 = 0x230ed76028e54c71ULL; 00166 }; 00167 00168 template<class ContainerAllocator> 00169 struct DataType< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > { 00170 static const char* value() 00171 { 00172 return "sr_robot_msgs/ChangeMotorSystemControlsResponse"; 00173 } 00174 00175 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> &) { return value(); } 00176 }; 00177 00178 template<class ContainerAllocator> 00179 struct Definition< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > { 00180 static const char* value() 00181 { 00182 return "int8 result\n\ 00183 \n\ 00184 int8 SUCCESS=0\n\ 00185 int8 MOTOR_ID_OUT_OF_RANGE=-1\n\ 00186 \n\ 00187 "; 00188 } 00189 00190 static const char* value(const ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> &) { return value(); } 00191 }; 00192 00193 template<class ContainerAllocator> struct IsFixedSize< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > : public TrueType {}; 00194 } // namespace message_traits 00195 } // namespace ros 00196 00197 namespace ros 00198 { 00199 namespace serialization 00200 { 00201 00202 template<class ContainerAllocator> struct Serializer< ::sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > 00203 { 00204 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00205 { 00206 stream.next(m.motor_system_controls); 00207 } 00208 00209 ROS_DECLARE_ALLINONE_SERIALIZER; 00210 }; // struct ChangeMotorSystemControlsRequest_ 00211 } // namespace serialization 00212 } // namespace ros 00213 00214 00215 namespace ros 00216 { 00217 namespace serialization 00218 { 00219 00220 template<class ContainerAllocator> struct Serializer< ::sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > 00221 { 00222 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00223 { 00224 stream.next(m.result); 00225 } 00226 00227 ROS_DECLARE_ALLINONE_SERIALIZER; 00228 }; // struct ChangeMotorSystemControlsResponse_ 00229 } // namespace serialization 00230 } // namespace ros 00231 00232 namespace ros 00233 { 00234 namespace service_traits 00235 { 00236 template<> 00237 struct MD5Sum<sr_robot_msgs::ChangeMotorSystemControls> { 00238 static const char* value() 00239 { 00240 return "d953bca2f568403b8e2c3f41c87d9ac4"; 00241 } 00242 00243 static const char* value(const sr_robot_msgs::ChangeMotorSystemControls&) { return value(); } 00244 }; 00245 00246 template<> 00247 struct DataType<sr_robot_msgs::ChangeMotorSystemControls> { 00248 static const char* value() 00249 { 00250 return "sr_robot_msgs/ChangeMotorSystemControls"; 00251 } 00252 00253 static const char* value(const sr_robot_msgs::ChangeMotorSystemControls&) { return value(); } 00254 }; 00255 00256 template<class ContainerAllocator> 00257 struct MD5Sum<sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > { 00258 static const char* value() 00259 { 00260 return "d953bca2f568403b8e2c3f41c87d9ac4"; 00261 } 00262 00263 static const char* value(const sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> &) { return value(); } 00264 }; 00265 00266 template<class ContainerAllocator> 00267 struct DataType<sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> > { 00268 static const char* value() 00269 { 00270 return "sr_robot_msgs/ChangeMotorSystemControls"; 00271 } 00272 00273 static const char* value(const sr_robot_msgs::ChangeMotorSystemControlsRequest_<ContainerAllocator> &) { return value(); } 00274 }; 00275 00276 template<class ContainerAllocator> 00277 struct MD5Sum<sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > { 00278 static const char* value() 00279 { 00280 return "d953bca2f568403b8e2c3f41c87d9ac4"; 00281 } 00282 00283 static const char* value(const sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> &) { return value(); } 00284 }; 00285 00286 template<class ContainerAllocator> 00287 struct DataType<sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> > { 00288 static const char* value() 00289 { 00290 return "sr_robot_msgs/ChangeMotorSystemControls"; 00291 } 00292 00293 static const char* value(const sr_robot_msgs::ChangeMotorSystemControlsResponse_<ContainerAllocator> &) { return value(); } 00294 }; 00295 00296 } // namespace service_traits 00297 } // namespace ros 00298 00299 #endif // SR_ROBOT_MSGS_SERVICE_CHANGEMOTORSYSTEMCONTROLS_H 00300