00001
00002 #ifndef VREP_COMMON_SERVICE_SIMROSGETJOINTSTATE_H
00003 #define VREP_COMMON_SERVICE_SIMROSGETJOINTSTATE_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 "sensor_msgs/JointState.h"
00022
00023 namespace vrep_common
00024 {
00025 template <class ContainerAllocator>
00026 struct simRosGetJointStateRequest_ {
00027 typedef simRosGetJointStateRequest_<ContainerAllocator> Type;
00028
00029 simRosGetJointStateRequest_()
00030 : handle(0)
00031 {
00032 }
00033
00034 simRosGetJointStateRequest_(const ContainerAllocator& _alloc)
00035 : handle(0)
00036 {
00037 }
00038
00039 typedef int32_t _handle_type;
00040 int32_t handle;
00041
00042
00043 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::vrep_common::simRosGetJointStateRequest_<std::allocator<void> > simRosGetJointStateRequest;
00048
00049 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateRequest> simRosGetJointStateRequestPtr;
00050 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateRequest const> simRosGetJointStateRequestConstPtr;
00051
00052
00053 template <class ContainerAllocator>
00054 struct simRosGetJointStateResponse_ {
00055 typedef simRosGetJointStateResponse_<ContainerAllocator> Type;
00056
00057 simRosGetJointStateResponse_()
00058 : result(0)
00059 , state()
00060 {
00061 }
00062
00063 simRosGetJointStateResponse_(const ContainerAllocator& _alloc)
00064 : result(0)
00065 , state(_alloc)
00066 {
00067 }
00068
00069 typedef int32_t _result_type;
00070 int32_t result;
00071
00072 typedef ::sensor_msgs::JointState_<ContainerAllocator> _state_type;
00073 ::sensor_msgs::JointState_<ContainerAllocator> state;
00074
00075
00076 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > Ptr;
00077 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> const> ConstPtr;
00078 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00079 };
00080 typedef ::vrep_common::simRosGetJointStateResponse_<std::allocator<void> > simRosGetJointStateResponse;
00081
00082 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateResponse> simRosGetJointStateResponsePtr;
00083 typedef boost::shared_ptr< ::vrep_common::simRosGetJointStateResponse const> simRosGetJointStateResponseConstPtr;
00084
00085 struct simRosGetJointState
00086 {
00087
00088 typedef simRosGetJointStateRequest Request;
00089 typedef simRosGetJointStateResponse Response;
00090 Request request;
00091 Response response;
00092
00093 typedef Request RequestType;
00094 typedef Response ResponseType;
00095 };
00096 }
00097
00098 namespace ros
00099 {
00100 namespace message_traits
00101 {
00102 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > : public TrueType {};
00103 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> const> : public TrueType {};
00104 template<class ContainerAllocator>
00105 struct MD5Sum< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > {
00106 static const char* value()
00107 {
00108 return "92535b678299d2bdda959704e78c275e";
00109 }
00110
00111 static const char* value(const ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> &) { return value(); }
00112 static const uint64_t static_value1 = 0x92535b678299d2bdULL;
00113 static const uint64_t static_value2 = 0xda959704e78c275eULL;
00114 };
00115
00116 template<class ContainerAllocator>
00117 struct DataType< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > {
00118 static const char* value()
00119 {
00120 return "vrep_common/simRosGetJointStateRequest";
00121 }
00122
00123 static const char* value(const ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> &) { return value(); }
00124 };
00125
00126 template<class ContainerAllocator>
00127 struct Definition< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > {
00128 static const char* value()
00129 {
00130 return "\n\
00131 \n\
00132 \n\
00133 \n\
00134 int32 handle\n\
00135 \n\
00136 ";
00137 }
00138
00139 static const char* value(const ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> &) { return value(); }
00140 };
00141
00142 template<class ContainerAllocator> struct IsFixedSize< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > : public TrueType {};
00143 }
00144 }
00145
00146
00147 namespace ros
00148 {
00149 namespace message_traits
00150 {
00151 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > : public TrueType {};
00152 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> const> : public TrueType {};
00153 template<class ContainerAllocator>
00154 struct MD5Sum< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > {
00155 static const char* value()
00156 {
00157 return "1d460a330c4107107a50f227d148b7d3";
00158 }
00159
00160 static const char* value(const ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> &) { return value(); }
00161 static const uint64_t static_value1 = 0x1d460a330c410710ULL;
00162 static const uint64_t static_value2 = 0x7a50f227d148b7d3ULL;
00163 };
00164
00165 template<class ContainerAllocator>
00166 struct DataType< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > {
00167 static const char* value()
00168 {
00169 return "vrep_common/simRosGetJointStateResponse";
00170 }
00171
00172 static const char* value(const ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> &) { return value(); }
00173 };
00174
00175 template<class ContainerAllocator>
00176 struct Definition< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > {
00177 static const char* value()
00178 {
00179 return "int32 result\n\
00180 sensor_msgs/JointState state\n\
00181 \n\
00182 \n\
00183 ================================================================================\n\
00184 MSG: sensor_msgs/JointState\n\
00185 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00186 #\n\
00187 # The state of each joint (revolute or prismatic) is defined by:\n\
00188 # * the position of the joint (rad or m),\n\
00189 # * the velocity of the joint (rad/s or m/s) and \n\
00190 # * the effort that is applied in the joint (Nm or N).\n\
00191 #\n\
00192 # Each joint is uniquely identified by its name\n\
00193 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00194 # in one message have to be recorded at the same time.\n\
00195 #\n\
00196 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00197 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00198 # effort associated with them, you can leave the effort array empty. \n\
00199 #\n\
00200 # All arrays in this message should have the same size, or be empty.\n\
00201 # This is the only way to uniquely associate the joint name with the correct\n\
00202 # states.\n\
00203 \n\
00204 \n\
00205 Header header\n\
00206 \n\
00207 string[] name\n\
00208 float64[] position\n\
00209 float64[] velocity\n\
00210 float64[] effort\n\
00211 \n\
00212 ================================================================================\n\
00213 MSG: std_msgs/Header\n\
00214 # Standard metadata for higher-level stamped data types.\n\
00215 # This is generally used to communicate timestamped data \n\
00216 # in a particular coordinate frame.\n\
00217 # \n\
00218 # sequence ID: consecutively increasing ID \n\
00219 uint32 seq\n\
00220 #Two-integer timestamp that is expressed as:\n\
00221 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00222 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00223 # time-handling sugar is provided by the client library\n\
00224 time stamp\n\
00225 #Frame this data is associated with\n\
00226 # 0: no frame\n\
00227 # 1: global frame\n\
00228 string frame_id\n\
00229 \n\
00230 ";
00231 }
00232
00233 static const char* value(const ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> &) { return value(); }
00234 };
00235
00236 }
00237 }
00238
00239 namespace ros
00240 {
00241 namespace serialization
00242 {
00243
00244 template<class ContainerAllocator> struct Serializer< ::vrep_common::simRosGetJointStateRequest_<ContainerAllocator> >
00245 {
00246 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00247 {
00248 stream.next(m.handle);
00249 }
00250
00251 ROS_DECLARE_ALLINONE_SERIALIZER;
00252 };
00253 }
00254 }
00255
00256
00257 namespace ros
00258 {
00259 namespace serialization
00260 {
00261
00262 template<class ContainerAllocator> struct Serializer< ::vrep_common::simRosGetJointStateResponse_<ContainerAllocator> >
00263 {
00264 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00265 {
00266 stream.next(m.result);
00267 stream.next(m.state);
00268 }
00269
00270 ROS_DECLARE_ALLINONE_SERIALIZER;
00271 };
00272 }
00273 }
00274
00275 namespace ros
00276 {
00277 namespace service_traits
00278 {
00279 template<>
00280 struct MD5Sum<vrep_common::simRosGetJointState> {
00281 static const char* value()
00282 {
00283 return "e3e87944e85555d62f7a59817ea5aee6";
00284 }
00285
00286 static const char* value(const vrep_common::simRosGetJointState&) { return value(); }
00287 };
00288
00289 template<>
00290 struct DataType<vrep_common::simRosGetJointState> {
00291 static const char* value()
00292 {
00293 return "vrep_common/simRosGetJointState";
00294 }
00295
00296 static const char* value(const vrep_common::simRosGetJointState&) { return value(); }
00297 };
00298
00299 template<class ContainerAllocator>
00300 struct MD5Sum<vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > {
00301 static const char* value()
00302 {
00303 return "e3e87944e85555d62f7a59817ea5aee6";
00304 }
00305
00306 static const char* value(const vrep_common::simRosGetJointStateRequest_<ContainerAllocator> &) { return value(); }
00307 };
00308
00309 template<class ContainerAllocator>
00310 struct DataType<vrep_common::simRosGetJointStateRequest_<ContainerAllocator> > {
00311 static const char* value()
00312 {
00313 return "vrep_common/simRosGetJointState";
00314 }
00315
00316 static const char* value(const vrep_common::simRosGetJointStateRequest_<ContainerAllocator> &) { return value(); }
00317 };
00318
00319 template<class ContainerAllocator>
00320 struct MD5Sum<vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > {
00321 static const char* value()
00322 {
00323 return "e3e87944e85555d62f7a59817ea5aee6";
00324 }
00325
00326 static const char* value(const vrep_common::simRosGetJointStateResponse_<ContainerAllocator> &) { return value(); }
00327 };
00328
00329 template<class ContainerAllocator>
00330 struct DataType<vrep_common::simRosGetJointStateResponse_<ContainerAllocator> > {
00331 static const char* value()
00332 {
00333 return "vrep_common/simRosGetJointState";
00334 }
00335
00336 static const char* value(const vrep_common::simRosGetJointStateResponse_<ContainerAllocator> &) { return value(); }
00337 };
00338
00339 }
00340 }
00341
00342 #endif // VREP_COMMON_SERVICE_SIMROSGETJOINTSTATE_H
00343