00001
00002 #ifndef MANIPULATION_TRANSFORMS_SERVICE_MAPOBJECTTWISTTOEFFECTORS_H
00003 #define MANIPULATION_TRANSFORMS_SERVICE_MAPOBJECTTWISTTOEFFECTORS_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013 #include "ros/service_traits.h"
00014
00015 #include "geometry_msgs/TwistStamped.h"
00016
00017
00018 #include "geometry_msgs/TwistStamped.h"
00019
00020 namespace manipulation_transforms
00021 {
00022 template <class ContainerAllocator>
00023 struct MapObjectTwistToEffectorsRequest_ : public ros::Message
00024 {
00025 typedef MapObjectTwistToEffectorsRequest_<ContainerAllocator> Type;
00026
00027 MapObjectTwistToEffectorsRequest_()
00028 : object_twist()
00029 {
00030 }
00031
00032 MapObjectTwistToEffectorsRequest_(const ContainerAllocator& _alloc)
00033 : object_twist(_alloc)
00034 {
00035 }
00036
00037 typedef ::geometry_msgs::TwistStamped_<ContainerAllocator> _object_twist_type;
00038 ::geometry_msgs::TwistStamped_<ContainerAllocator> object_twist;
00039
00040
00041 private:
00042 static const char* __s_getDataType_() { return "manipulation_transforms/MapObjectTwistToEffectorsRequest"; }
00043 public:
00044 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00045
00046 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00047
00048 private:
00049 static const char* __s_getMD5Sum_() { return "520cb950a1ab872cff62b14155b5a20c"; }
00050 public:
00051 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00052
00053 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00054
00055 private:
00056 static const char* __s_getServerMD5Sum_() { return "1bb5479e5565270d07bd4dd38bdd26c9"; }
00057 public:
00058 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00059
00060 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00061
00062 private:
00063 static const char* __s_getMessageDefinition_() { return "\n\
00064 geometry_msgs/TwistStamped object_twist\n\
00065 \n\
00066 ================================================================================\n\
00067 MSG: geometry_msgs/TwistStamped\n\
00068 # A twist with reference coordinate frame and timestamp\n\
00069 Header header\n\
00070 Twist twist\n\
00071 \n\
00072 ================================================================================\n\
00073 MSG: std_msgs/Header\n\
00074 # Standard metadata for higher-level stamped data types.\n\
00075 # This is generally used to communicate timestamped data \n\
00076 # in a particular coordinate frame.\n\
00077 # \n\
00078 # sequence ID: consecutively increasing ID \n\
00079 uint32 seq\n\
00080 #Two-integer timestamp that is expressed as:\n\
00081 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00082 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00083 # time-handling sugar is provided by the client library\n\
00084 time stamp\n\
00085 #Frame this data is associated with\n\
00086 # 0: no frame\n\
00087 # 1: global frame\n\
00088 string frame_id\n\
00089 \n\
00090 ================================================================================\n\
00091 MSG: geometry_msgs/Twist\n\
00092 # This expresses velocity in free space broken into it's linear and angular parts. \n\
00093 Vector3 linear\n\
00094 Vector3 angular\n\
00095 \n\
00096 ================================================================================\n\
00097 MSG: geometry_msgs/Vector3\n\
00098 # This represents a vector in free space. \n\
00099 \n\
00100 float64 x\n\
00101 float64 y\n\
00102 float64 z\n\
00103 "; }
00104 public:
00105 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00106
00107 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00108
00109 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00110 {
00111 ros::serialization::OStream stream(write_ptr, 1000000000);
00112 ros::serialization::serialize(stream, object_twist);
00113 return stream.getData();
00114 }
00115
00116 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00117 {
00118 ros::serialization::IStream stream(read_ptr, 1000000000);
00119 ros::serialization::deserialize(stream, object_twist);
00120 return stream.getData();
00121 }
00122
00123 ROS_DEPRECATED virtual uint32_t serializationLength() const
00124 {
00125 uint32_t size = 0;
00126 size += ros::serialization::serializationLength(object_twist);
00127 return size;
00128 }
00129
00130 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > Ptr;
00131 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> const> ConstPtr;
00132 };
00133 typedef ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<std::allocator<void> > MapObjectTwistToEffectorsRequest;
00134
00135 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsRequest> MapObjectTwistToEffectorsRequestPtr;
00136 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsRequest const> MapObjectTwistToEffectorsRequestConstPtr;
00137
00138
00139 template <class ContainerAllocator>
00140 struct MapObjectTwistToEffectorsResponse_ : public ros::Message
00141 {
00142 typedef MapObjectTwistToEffectorsResponse_<ContainerAllocator> Type;
00143
00144 MapObjectTwistToEffectorsResponse_()
00145 : effector_twists()
00146 {
00147 }
00148
00149 MapObjectTwistToEffectorsResponse_(const ContainerAllocator& _alloc)
00150 : effector_twists(_alloc)
00151 {
00152 }
00153
00154 typedef std::vector< ::geometry_msgs::TwistStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::TwistStamped_<ContainerAllocator> >::other > _effector_twists_type;
00155 std::vector< ::geometry_msgs::TwistStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::TwistStamped_<ContainerAllocator> >::other > effector_twists;
00156
00157
00158 ROS_DEPRECATED uint32_t get_effector_twists_size() const { return (uint32_t)effector_twists.size(); }
00159 ROS_DEPRECATED void set_effector_twists_size(uint32_t size) { effector_twists.resize((size_t)size); }
00160 ROS_DEPRECATED void get_effector_twists_vec(std::vector< ::geometry_msgs::TwistStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::TwistStamped_<ContainerAllocator> >::other > & vec) const { vec = this->effector_twists; }
00161 ROS_DEPRECATED void set_effector_twists_vec(const std::vector< ::geometry_msgs::TwistStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::TwistStamped_<ContainerAllocator> >::other > & vec) { this->effector_twists = vec; }
00162 private:
00163 static const char* __s_getDataType_() { return "manipulation_transforms/MapObjectTwistToEffectorsResponse"; }
00164 public:
00165 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00166
00167 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00168
00169 private:
00170 static const char* __s_getMD5Sum_() { return "9e6592ec3797ef41e0f2bd288e07c910"; }
00171 public:
00172 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00173
00174 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00175
00176 private:
00177 static const char* __s_getServerMD5Sum_() { return "1bb5479e5565270d07bd4dd38bdd26c9"; }
00178 public:
00179 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00180
00181 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00182
00183 private:
00184 static const char* __s_getMessageDefinition_() { return "\n\
00185 geometry_msgs/TwistStamped[] effector_twists\n\
00186 \n\
00187 \n\
00188 \n\
00189 ================================================================================\n\
00190 MSG: geometry_msgs/TwistStamped\n\
00191 # A twist with reference coordinate frame and timestamp\n\
00192 Header header\n\
00193 Twist twist\n\
00194 \n\
00195 ================================================================================\n\
00196 MSG: std_msgs/Header\n\
00197 # Standard metadata for higher-level stamped data types.\n\
00198 # This is generally used to communicate timestamped data \n\
00199 # in a particular coordinate frame.\n\
00200 # \n\
00201 # sequence ID: consecutively increasing ID \n\
00202 uint32 seq\n\
00203 #Two-integer timestamp that is expressed as:\n\
00204 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00205 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00206 # time-handling sugar is provided by the client library\n\
00207 time stamp\n\
00208 #Frame this data is associated with\n\
00209 # 0: no frame\n\
00210 # 1: global frame\n\
00211 string frame_id\n\
00212 \n\
00213 ================================================================================\n\
00214 MSG: geometry_msgs/Twist\n\
00215 # This expresses velocity in free space broken into it's linear and angular parts. \n\
00216 Vector3 linear\n\
00217 Vector3 angular\n\
00218 \n\
00219 ================================================================================\n\
00220 MSG: geometry_msgs/Vector3\n\
00221 # This represents a vector in free space. \n\
00222 \n\
00223 float64 x\n\
00224 float64 y\n\
00225 float64 z\n\
00226 "; }
00227 public:
00228 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00229
00230 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00231
00232 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00233 {
00234 ros::serialization::OStream stream(write_ptr, 1000000000);
00235 ros::serialization::serialize(stream, effector_twists);
00236 return stream.getData();
00237 }
00238
00239 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00240 {
00241 ros::serialization::IStream stream(read_ptr, 1000000000);
00242 ros::serialization::deserialize(stream, effector_twists);
00243 return stream.getData();
00244 }
00245
00246 ROS_DEPRECATED virtual uint32_t serializationLength() const
00247 {
00248 uint32_t size = 0;
00249 size += ros::serialization::serializationLength(effector_twists);
00250 return size;
00251 }
00252
00253 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > Ptr;
00254 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> const> ConstPtr;
00255 };
00256 typedef ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<std::allocator<void> > MapObjectTwistToEffectorsResponse;
00257
00258 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsResponse> MapObjectTwistToEffectorsResponsePtr;
00259 typedef boost::shared_ptr< ::manipulation_transforms::MapObjectTwistToEffectorsResponse const> MapObjectTwistToEffectorsResponseConstPtr;
00260
00261 struct MapObjectTwistToEffectors
00262 {
00263
00264 typedef MapObjectTwistToEffectorsRequest Request;
00265 typedef MapObjectTwistToEffectorsResponse Response;
00266 Request request;
00267 Response response;
00268
00269 typedef Request RequestType;
00270 typedef Response ResponseType;
00271 };
00272 }
00273
00274 namespace ros
00275 {
00276 namespace message_traits
00277 {
00278 template<class ContainerAllocator>
00279 struct MD5Sum< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > {
00280 static const char* value()
00281 {
00282 return "520cb950a1ab872cff62b14155b5a20c";
00283 }
00284
00285 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> &) { return value(); }
00286 static const uint64_t static_value1 = 0x520cb950a1ab872cULL;
00287 static const uint64_t static_value2 = 0xff62b14155b5a20cULL;
00288 };
00289
00290 template<class ContainerAllocator>
00291 struct DataType< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > {
00292 static const char* value()
00293 {
00294 return "manipulation_transforms/MapObjectTwistToEffectorsRequest";
00295 }
00296
00297 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> &) { return value(); }
00298 };
00299
00300 template<class ContainerAllocator>
00301 struct Definition< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > {
00302 static const char* value()
00303 {
00304 return "\n\
00305 geometry_msgs/TwistStamped object_twist\n\
00306 \n\
00307 ================================================================================\n\
00308 MSG: geometry_msgs/TwistStamped\n\
00309 # A twist with reference coordinate frame and timestamp\n\
00310 Header header\n\
00311 Twist twist\n\
00312 \n\
00313 ================================================================================\n\
00314 MSG: std_msgs/Header\n\
00315 # Standard metadata for higher-level stamped data types.\n\
00316 # This is generally used to communicate timestamped data \n\
00317 # in a particular coordinate frame.\n\
00318 # \n\
00319 # sequence ID: consecutively increasing ID \n\
00320 uint32 seq\n\
00321 #Two-integer timestamp that is expressed as:\n\
00322 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00323 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00324 # time-handling sugar is provided by the client library\n\
00325 time stamp\n\
00326 #Frame this data is associated with\n\
00327 # 0: no frame\n\
00328 # 1: global frame\n\
00329 string frame_id\n\
00330 \n\
00331 ================================================================================\n\
00332 MSG: geometry_msgs/Twist\n\
00333 # This expresses velocity in free space broken into it's linear and angular parts. \n\
00334 Vector3 linear\n\
00335 Vector3 angular\n\
00336 \n\
00337 ================================================================================\n\
00338 MSG: geometry_msgs/Vector3\n\
00339 # This represents a vector in free space. \n\
00340 \n\
00341 float64 x\n\
00342 float64 y\n\
00343 float64 z\n\
00344 ";
00345 }
00346
00347 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> &) { return value(); }
00348 };
00349
00350 }
00351 }
00352
00353
00354 namespace ros
00355 {
00356 namespace message_traits
00357 {
00358 template<class ContainerAllocator>
00359 struct MD5Sum< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > {
00360 static const char* value()
00361 {
00362 return "9e6592ec3797ef41e0f2bd288e07c910";
00363 }
00364
00365 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> &) { return value(); }
00366 static const uint64_t static_value1 = 0x9e6592ec3797ef41ULL;
00367 static const uint64_t static_value2 = 0xe0f2bd288e07c910ULL;
00368 };
00369
00370 template<class ContainerAllocator>
00371 struct DataType< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > {
00372 static const char* value()
00373 {
00374 return "manipulation_transforms/MapObjectTwistToEffectorsResponse";
00375 }
00376
00377 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> &) { return value(); }
00378 };
00379
00380 template<class ContainerAllocator>
00381 struct Definition< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > {
00382 static const char* value()
00383 {
00384 return "\n\
00385 geometry_msgs/TwistStamped[] effector_twists\n\
00386 \n\
00387 \n\
00388 \n\
00389 ================================================================================\n\
00390 MSG: geometry_msgs/TwistStamped\n\
00391 # A twist with reference coordinate frame and timestamp\n\
00392 Header header\n\
00393 Twist twist\n\
00394 \n\
00395 ================================================================================\n\
00396 MSG: std_msgs/Header\n\
00397 # Standard metadata for higher-level stamped data types.\n\
00398 # This is generally used to communicate timestamped data \n\
00399 # in a particular coordinate frame.\n\
00400 # \n\
00401 # sequence ID: consecutively increasing ID \n\
00402 uint32 seq\n\
00403 #Two-integer timestamp that is expressed as:\n\
00404 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00405 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00406 # time-handling sugar is provided by the client library\n\
00407 time stamp\n\
00408 #Frame this data is associated with\n\
00409 # 0: no frame\n\
00410 # 1: global frame\n\
00411 string frame_id\n\
00412 \n\
00413 ================================================================================\n\
00414 MSG: geometry_msgs/Twist\n\
00415 # This expresses velocity in free space broken into it's linear and angular parts. \n\
00416 Vector3 linear\n\
00417 Vector3 angular\n\
00418 \n\
00419 ================================================================================\n\
00420 MSG: geometry_msgs/Vector3\n\
00421 # This represents a vector in free space. \n\
00422 \n\
00423 float64 x\n\
00424 float64 y\n\
00425 float64 z\n\
00426 ";
00427 }
00428
00429 static const char* value(const ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> &) { return value(); }
00430 };
00431
00432 }
00433 }
00434
00435 namespace ros
00436 {
00437 namespace serialization
00438 {
00439
00440 template<class ContainerAllocator> struct Serializer< ::manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> >
00441 {
00442 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00443 {
00444 stream.next(m.object_twist);
00445 }
00446
00447 ROS_DECLARE_ALLINONE_SERIALIZER;
00448 };
00449 }
00450 }
00451
00452
00453 namespace ros
00454 {
00455 namespace serialization
00456 {
00457
00458 template<class ContainerAllocator> struct Serializer< ::manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> >
00459 {
00460 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00461 {
00462 stream.next(m.effector_twists);
00463 }
00464
00465 ROS_DECLARE_ALLINONE_SERIALIZER;
00466 };
00467 }
00468 }
00469
00470 namespace ros
00471 {
00472 namespace service_traits
00473 {
00474 template<>
00475 struct MD5Sum<manipulation_transforms::MapObjectTwistToEffectors> {
00476 static const char* value()
00477 {
00478 return "1bb5479e5565270d07bd4dd38bdd26c9";
00479 }
00480
00481 static const char* value(const manipulation_transforms::MapObjectTwistToEffectors&) { return value(); }
00482 };
00483
00484 template<>
00485 struct DataType<manipulation_transforms::MapObjectTwistToEffectors> {
00486 static const char* value()
00487 {
00488 return "manipulation_transforms/MapObjectTwistToEffectors";
00489 }
00490
00491 static const char* value(const manipulation_transforms::MapObjectTwistToEffectors&) { return value(); }
00492 };
00493
00494 template<class ContainerAllocator>
00495 struct MD5Sum<manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > {
00496 static const char* value()
00497 {
00498 return "1bb5479e5565270d07bd4dd38bdd26c9";
00499 }
00500
00501 static const char* value(const manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> &) { return value(); }
00502 };
00503
00504 template<class ContainerAllocator>
00505 struct DataType<manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> > {
00506 static const char* value()
00507 {
00508 return "manipulation_transforms/MapObjectTwistToEffectors";
00509 }
00510
00511 static const char* value(const manipulation_transforms::MapObjectTwistToEffectorsRequest_<ContainerAllocator> &) { return value(); }
00512 };
00513
00514 template<class ContainerAllocator>
00515 struct MD5Sum<manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > {
00516 static const char* value()
00517 {
00518 return "1bb5479e5565270d07bd4dd38bdd26c9";
00519 }
00520
00521 static const char* value(const manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> &) { return value(); }
00522 };
00523
00524 template<class ContainerAllocator>
00525 struct DataType<manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> > {
00526 static const char* value()
00527 {
00528 return "manipulation_transforms/MapObjectTwistToEffectors";
00529 }
00530
00531 static const char* value(const manipulation_transforms::MapObjectTwistToEffectorsResponse_<ContainerAllocator> &) { return value(); }
00532 };
00533
00534 }
00535 }
00536
00537 #endif // MANIPULATION_TRANSFORMS_SERVICE_MAPOBJECTTWISTTOEFFECTORS_H
00538