Go to the documentation of this file.00001
00002 #ifndef KINEMATICS_MSGS_SERVICE_GETKINEMATICSOLVERINFO_H
00003 #define KINEMATICS_MSGS_SERVICE_GETKINEMATICSOLVERINFO_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 "kinematics_msgs/KinematicSolverInfo.h"
00022
00023 namespace kinematics_msgs
00024 {
00025 template <class ContainerAllocator>
00026 struct GetKinematicSolverInfoRequest_ {
00027 typedef GetKinematicSolverInfoRequest_<ContainerAllocator> Type;
00028
00029 GetKinematicSolverInfoRequest_()
00030 {
00031 }
00032
00033 GetKinematicSolverInfoRequest_(const ContainerAllocator& _alloc)
00034 {
00035 }
00036
00037
00038 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > Ptr;
00039 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> const> ConstPtr;
00040 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00041 };
00042 typedef ::kinematics_msgs::GetKinematicSolverInfoRequest_<std::allocator<void> > GetKinematicSolverInfoRequest;
00043
00044 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoRequest> GetKinematicSolverInfoRequestPtr;
00045 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoRequest const> GetKinematicSolverInfoRequestConstPtr;
00046
00047
00048
00049 template <class ContainerAllocator>
00050 struct GetKinematicSolverInfoResponse_ {
00051 typedef GetKinematicSolverInfoResponse_<ContainerAllocator> Type;
00052
00053 GetKinematicSolverInfoResponse_()
00054 : kinematic_solver_info()
00055 {
00056 }
00057
00058 GetKinematicSolverInfoResponse_(const ContainerAllocator& _alloc)
00059 : kinematic_solver_info(_alloc)
00060 {
00061 }
00062
00063 typedef ::kinematics_msgs::KinematicSolverInfo_<ContainerAllocator> _kinematic_solver_info_type;
00064 ::kinematics_msgs::KinematicSolverInfo_<ContainerAllocator> kinematic_solver_info;
00065
00066
00067 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > Ptr;
00068 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> const> ConstPtr;
00069 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00070 };
00071 typedef ::kinematics_msgs::GetKinematicSolverInfoResponse_<std::allocator<void> > GetKinematicSolverInfoResponse;
00072
00073 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoResponse> GetKinematicSolverInfoResponsePtr;
00074 typedef boost::shared_ptr< ::kinematics_msgs::GetKinematicSolverInfoResponse const> GetKinematicSolverInfoResponseConstPtr;
00075
00076
00077 struct GetKinematicSolverInfo
00078 {
00079
00080 typedef GetKinematicSolverInfoRequest Request;
00081 typedef GetKinematicSolverInfoResponse Response;
00082 Request request;
00083 Response response;
00084
00085 typedef Request RequestType;
00086 typedef Response ResponseType;
00087 };
00088 }
00089
00090 namespace ros
00091 {
00092 namespace message_traits
00093 {
00094 template<class ContainerAllocator> struct IsMessage< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > : public TrueType {};
00095 template<class ContainerAllocator> struct IsMessage< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> const> : public TrueType {};
00096 template<class ContainerAllocator>
00097 struct MD5Sum< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > {
00098 static const char* value()
00099 {
00100 return "d41d8cd98f00b204e9800998ecf8427e";
00101 }
00102
00103 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> &) { return value(); }
00104 static const uint64_t static_value1 = 0xd41d8cd98f00b204ULL;
00105 static const uint64_t static_value2 = 0xe9800998ecf8427eULL;
00106 };
00107
00108 template<class ContainerAllocator>
00109 struct DataType< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > {
00110 static const char* value()
00111 {
00112 return "kinematics_msgs/GetKinematicSolverInfoRequest";
00113 }
00114
00115 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> &) { return value(); }
00116 };
00117
00118 template<class ContainerAllocator>
00119 struct Definition< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > {
00120 static const char* value()
00121 {
00122 return "\n\
00123 \n\
00124 ";
00125 }
00126
00127 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> &) { return value(); }
00128 };
00129
00130 template<class ContainerAllocator> struct IsFixedSize< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > : public TrueType {};
00131 }
00132 }
00133
00134
00135 namespace ros
00136 {
00137 namespace message_traits
00138 {
00139 template<class ContainerAllocator> struct IsMessage< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > : public TrueType {};
00140 template<class ContainerAllocator> struct IsMessage< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> const> : public TrueType {};
00141 template<class ContainerAllocator>
00142 struct MD5Sum< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > {
00143 static const char* value()
00144 {
00145 return "9b591d98efeb66095c1b33a70221cab5";
00146 }
00147
00148 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> &) { return value(); }
00149 static const uint64_t static_value1 = 0x9b591d98efeb6609ULL;
00150 static const uint64_t static_value2 = 0x5c1b33a70221cab5ULL;
00151 };
00152
00153 template<class ContainerAllocator>
00154 struct DataType< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > {
00155 static const char* value()
00156 {
00157 return "kinematics_msgs/GetKinematicSolverInfoResponse";
00158 }
00159
00160 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> &) { return value(); }
00161 };
00162
00163 template<class ContainerAllocator>
00164 struct Definition< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > {
00165 static const char* value()
00166 {
00167 return "kinematics_msgs/KinematicSolverInfo kinematic_solver_info\n\
00168 \n\
00169 ================================================================================\n\
00170 MSG: kinematics_msgs/KinematicSolverInfo\n\
00171 # A list of joints in the kinematic tree\n\
00172 string[] joint_names\n\
00173 # A list of joint limits corresponding to the joint names\n\
00174 arm_navigation_msgs/JointLimits[] limits\n\
00175 # A list of links that the kinematics node provides solutions for\n\
00176 string[] link_names\n\
00177 \n\
00178 ================================================================================\n\
00179 MSG: arm_navigation_msgs/JointLimits\n\
00180 # This message contains information about limits of a particular joint (or control dimension)\n\
00181 string joint_name\n\
00182 \n\
00183 # true if the joint has position limits\n\
00184 bool has_position_limits\n\
00185 \n\
00186 # min and max position limits\n\
00187 float64 min_position\n\
00188 float64 max_position\n\
00189 \n\
00190 # true if joint has velocity limits\n\
00191 bool has_velocity_limits\n\
00192 \n\
00193 # max velocity limit\n\
00194 float64 max_velocity\n\
00195 # min_velocity is assumed to be -max_velocity\n\
00196 \n\
00197 # true if joint has acceleration limits\n\
00198 bool has_acceleration_limits\n\
00199 # max acceleration limit\n\
00200 float64 max_acceleration\n\
00201 # min_acceleration is assumed to be -max_acceleration\n\
00202 \n\
00203 ";
00204 }
00205
00206 static const char* value(const ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> &) { return value(); }
00207 };
00208
00209 }
00210 }
00211
00212 namespace ros
00213 {
00214 namespace serialization
00215 {
00216
00217 template<class ContainerAllocator> struct Serializer< ::kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> >
00218 {
00219 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00220 {
00221 }
00222
00223 ROS_DECLARE_ALLINONE_SERIALIZER;
00224 };
00225 }
00226 }
00227
00228
00229 namespace ros
00230 {
00231 namespace serialization
00232 {
00233
00234 template<class ContainerAllocator> struct Serializer< ::kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> >
00235 {
00236 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00237 {
00238 stream.next(m.kinematic_solver_info);
00239 }
00240
00241 ROS_DECLARE_ALLINONE_SERIALIZER;
00242 };
00243 }
00244 }
00245
00246 namespace ros
00247 {
00248 namespace service_traits
00249 {
00250 template<>
00251 struct MD5Sum<kinematics_msgs::GetKinematicSolverInfo> {
00252 static const char* value()
00253 {
00254 return "9b591d98efeb66095c1b33a70221cab5";
00255 }
00256
00257 static const char* value(const kinematics_msgs::GetKinematicSolverInfo&) { return value(); }
00258 };
00259
00260 template<>
00261 struct DataType<kinematics_msgs::GetKinematicSolverInfo> {
00262 static const char* value()
00263 {
00264 return "kinematics_msgs/GetKinematicSolverInfo";
00265 }
00266
00267 static const char* value(const kinematics_msgs::GetKinematicSolverInfo&) { return value(); }
00268 };
00269
00270 template<class ContainerAllocator>
00271 struct MD5Sum<kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > {
00272 static const char* value()
00273 {
00274 return "9b591d98efeb66095c1b33a70221cab5";
00275 }
00276
00277 static const char* value(const kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> &) { return value(); }
00278 };
00279
00280 template<class ContainerAllocator>
00281 struct DataType<kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> > {
00282 static const char* value()
00283 {
00284 return "kinematics_msgs/GetKinematicSolverInfo";
00285 }
00286
00287 static const char* value(const kinematics_msgs::GetKinematicSolverInfoRequest_<ContainerAllocator> &) { return value(); }
00288 };
00289
00290 template<class ContainerAllocator>
00291 struct MD5Sum<kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > {
00292 static const char* value()
00293 {
00294 return "9b591d98efeb66095c1b33a70221cab5";
00295 }
00296
00297 static const char* value(const kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> &) { return value(); }
00298 };
00299
00300 template<class ContainerAllocator>
00301 struct DataType<kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> > {
00302 static const char* value()
00303 {
00304 return "kinematics_msgs/GetKinematicSolverInfo";
00305 }
00306
00307 static const char* value(const kinematics_msgs::GetKinematicSolverInfoResponse_<ContainerAllocator> &) { return value(); }
00308 };
00309
00310 }
00311 }
00312
00313 #endif // KINEMATICS_MSGS_SERVICE_GETKINEMATICSOLVERINFO_H
00314