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