00001
00002 #ifndef VREP_COMMON_SERVICE_SIMROSGETOBJECTPOSE_H
00003 #define VREP_COMMON_SERVICE_SIMROSGETOBJECTPOSE_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 "geometry_msgs/PoseStamped.h"
00022
00023 namespace vrep_common
00024 {
00025 template <class ContainerAllocator>
00026 struct simRosGetObjectPoseRequest_ {
00027 typedef simRosGetObjectPoseRequest_<ContainerAllocator> Type;
00028
00029 simRosGetObjectPoseRequest_()
00030 : handle(0)
00031 , relativeToObjectHandle(0)
00032 {
00033 }
00034
00035 simRosGetObjectPoseRequest_(const ContainerAllocator& _alloc)
00036 : handle(0)
00037 , relativeToObjectHandle(0)
00038 {
00039 }
00040
00041 typedef int32_t _handle_type;
00042 int32_t handle;
00043
00044 typedef int32_t _relativeToObjectHandle_type;
00045 int32_t relativeToObjectHandle;
00046
00047
00048 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > Ptr;
00049 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> const> ConstPtr;
00050 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00051 };
00052 typedef ::vrep_common::simRosGetObjectPoseRequest_<std::allocator<void> > simRosGetObjectPoseRequest;
00053
00054 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseRequest> simRosGetObjectPoseRequestPtr;
00055 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseRequest const> simRosGetObjectPoseRequestConstPtr;
00056
00057
00058 template <class ContainerAllocator>
00059 struct simRosGetObjectPoseResponse_ {
00060 typedef simRosGetObjectPoseResponse_<ContainerAllocator> Type;
00061
00062 simRosGetObjectPoseResponse_()
00063 : result(0)
00064 , pose()
00065 {
00066 }
00067
00068 simRosGetObjectPoseResponse_(const ContainerAllocator& _alloc)
00069 : result(0)
00070 , pose(_alloc)
00071 {
00072 }
00073
00074 typedef int32_t _result_type;
00075 int32_t result;
00076
00077 typedef ::geometry_msgs::PoseStamped_<ContainerAllocator> _pose_type;
00078 ::geometry_msgs::PoseStamped_<ContainerAllocator> pose;
00079
00080
00081 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > Ptr;
00082 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> const> ConstPtr;
00083 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00084 };
00085 typedef ::vrep_common::simRosGetObjectPoseResponse_<std::allocator<void> > simRosGetObjectPoseResponse;
00086
00087 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseResponse> simRosGetObjectPoseResponsePtr;
00088 typedef boost::shared_ptr< ::vrep_common::simRosGetObjectPoseResponse const> simRosGetObjectPoseResponseConstPtr;
00089
00090 struct simRosGetObjectPose
00091 {
00092
00093 typedef simRosGetObjectPoseRequest Request;
00094 typedef simRosGetObjectPoseResponse Response;
00095 Request request;
00096 Response response;
00097
00098 typedef Request RequestType;
00099 typedef Response ResponseType;
00100 };
00101 }
00102
00103 namespace ros
00104 {
00105 namespace message_traits
00106 {
00107 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > : public TrueType {};
00108 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> const> : public TrueType {};
00109 template<class ContainerAllocator>
00110 struct MD5Sum< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > {
00111 static const char* value()
00112 {
00113 return "f089c181599d2dcbd1172f3eff51abb2";
00114 }
00115
00116 static const char* value(const ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> &) { return value(); }
00117 static const uint64_t static_value1 = 0xf089c181599d2dcbULL;
00118 static const uint64_t static_value2 = 0xd1172f3eff51abb2ULL;
00119 };
00120
00121 template<class ContainerAllocator>
00122 struct DataType< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > {
00123 static const char* value()
00124 {
00125 return "vrep_common/simRosGetObjectPoseRequest";
00126 }
00127
00128 static const char* value(const ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> &) { return value(); }
00129 };
00130
00131 template<class ContainerAllocator>
00132 struct Definition< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > {
00133 static const char* value()
00134 {
00135 return "\n\
00136 \n\
00137 \n\
00138 \n\
00139 int32 handle\n\
00140 int32 relativeToObjectHandle\n\
00141 \n\
00142 ";
00143 }
00144
00145 static const char* value(const ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> &) { return value(); }
00146 };
00147
00148 template<class ContainerAllocator> struct IsFixedSize< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > : public TrueType {};
00149 }
00150 }
00151
00152
00153 namespace ros
00154 {
00155 namespace message_traits
00156 {
00157 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > : public TrueType {};
00158 template<class ContainerAllocator> struct IsMessage< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> const> : public TrueType {};
00159 template<class ContainerAllocator>
00160 struct MD5Sum< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > {
00161 static const char* value()
00162 {
00163 return "beb984372af50548a529c62446caa7d8";
00164 }
00165
00166 static const char* value(const ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> &) { return value(); }
00167 static const uint64_t static_value1 = 0xbeb984372af50548ULL;
00168 static const uint64_t static_value2 = 0xa529c62446caa7d8ULL;
00169 };
00170
00171 template<class ContainerAllocator>
00172 struct DataType< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > {
00173 static const char* value()
00174 {
00175 return "vrep_common/simRosGetObjectPoseResponse";
00176 }
00177
00178 static const char* value(const ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> &) { return value(); }
00179 };
00180
00181 template<class ContainerAllocator>
00182 struct Definition< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > {
00183 static const char* value()
00184 {
00185 return "int32 result\n\
00186 geometry_msgs/PoseStamped pose\n\
00187 \n\
00188 \n\
00189 ================================================================================\n\
00190 MSG: geometry_msgs/PoseStamped\n\
00191 # A Pose with reference coordinate frame and timestamp\n\
00192 Header header\n\
00193 Pose pose\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/Pose\n\
00215 # A representation of pose in free space, composed of postion and orientation. \n\
00216 Point position\n\
00217 Quaternion orientation\n\
00218 \n\
00219 ================================================================================\n\
00220 MSG: geometry_msgs/Point\n\
00221 # This contains the position of a point in free space\n\
00222 float64 x\n\
00223 float64 y\n\
00224 float64 z\n\
00225 \n\
00226 ================================================================================\n\
00227 MSG: geometry_msgs/Quaternion\n\
00228 # This represents an orientation in free space in quaternion form.\n\
00229 \n\
00230 float64 x\n\
00231 float64 y\n\
00232 float64 z\n\
00233 float64 w\n\
00234 \n\
00235 ";
00236 }
00237
00238 static const char* value(const ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> &) { return value(); }
00239 };
00240
00241 }
00242 }
00243
00244 namespace ros
00245 {
00246 namespace serialization
00247 {
00248
00249 template<class ContainerAllocator> struct Serializer< ::vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> >
00250 {
00251 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00252 {
00253 stream.next(m.handle);
00254 stream.next(m.relativeToObjectHandle);
00255 }
00256
00257 ROS_DECLARE_ALLINONE_SERIALIZER;
00258 };
00259 }
00260 }
00261
00262
00263 namespace ros
00264 {
00265 namespace serialization
00266 {
00267
00268 template<class ContainerAllocator> struct Serializer< ::vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> >
00269 {
00270 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00271 {
00272 stream.next(m.result);
00273 stream.next(m.pose);
00274 }
00275
00276 ROS_DECLARE_ALLINONE_SERIALIZER;
00277 };
00278 }
00279 }
00280
00281 namespace ros
00282 {
00283 namespace service_traits
00284 {
00285 template<>
00286 struct MD5Sum<vrep_common::simRosGetObjectPose> {
00287 static const char* value()
00288 {
00289 return "dcc153fe8e4754d793983e414eb1b664";
00290 }
00291
00292 static const char* value(const vrep_common::simRosGetObjectPose&) { return value(); }
00293 };
00294
00295 template<>
00296 struct DataType<vrep_common::simRosGetObjectPose> {
00297 static const char* value()
00298 {
00299 return "vrep_common/simRosGetObjectPose";
00300 }
00301
00302 static const char* value(const vrep_common::simRosGetObjectPose&) { return value(); }
00303 };
00304
00305 template<class ContainerAllocator>
00306 struct MD5Sum<vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > {
00307 static const char* value()
00308 {
00309 return "dcc153fe8e4754d793983e414eb1b664";
00310 }
00311
00312 static const char* value(const vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> &) { return value(); }
00313 };
00314
00315 template<class ContainerAllocator>
00316 struct DataType<vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> > {
00317 static const char* value()
00318 {
00319 return "vrep_common/simRosGetObjectPose";
00320 }
00321
00322 static const char* value(const vrep_common::simRosGetObjectPoseRequest_<ContainerAllocator> &) { return value(); }
00323 };
00324
00325 template<class ContainerAllocator>
00326 struct MD5Sum<vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > {
00327 static const char* value()
00328 {
00329 return "dcc153fe8e4754d793983e414eb1b664";
00330 }
00331
00332 static const char* value(const vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> &) { return value(); }
00333 };
00334
00335 template<class ContainerAllocator>
00336 struct DataType<vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> > {
00337 static const char* value()
00338 {
00339 return "vrep_common/simRosGetObjectPose";
00340 }
00341
00342 static const char* value(const vrep_common::simRosGetObjectPoseResponse_<ContainerAllocator> &) { return value(); }
00343 };
00344
00345 }
00346 }
00347
00348 #endif // VREP_COMMON_SERVICE_SIMROSGETOBJECTPOSE_H
00349