Go to the documentation of this file.00001
00002 #ifndef SRS_OBJECT_DATABASE_MSGS_SERVICE_GETURDF_H
00003 #define SRS_OBJECT_DATABASE_MSGS_SERVICE_GETURDF_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 "srs_object_database_msgs/urdf.h"
00022
00023 namespace srs_object_database_msgs
00024 {
00025 template <class ContainerAllocator>
00026 struct GetUrdfRequest_ {
00027 typedef GetUrdfRequest_<ContainerAllocator> Type;
00028
00029 GetUrdfRequest_()
00030 : model_ids()
00031 {
00032 }
00033
00034 GetUrdfRequest_(const ContainerAllocator& _alloc)
00035 : model_ids(_alloc)
00036 {
00037 }
00038
00039 typedef std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > _model_ids_type;
00040 std::vector<int32_t, typename ContainerAllocator::template rebind<int32_t>::other > model_ids;
00041
00042
00043 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::srs_object_database_msgs::GetUrdfRequest_<std::allocator<void> > GetUrdfRequest;
00048
00049 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfRequest> GetUrdfRequestPtr;
00050 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfRequest const> GetUrdfRequestConstPtr;
00051
00052
00053
00054 template <class ContainerAllocator>
00055 struct GetUrdfResponse_ {
00056 typedef GetUrdfResponse_<ContainerAllocator> Type;
00057
00058 GetUrdfResponse_()
00059 : return_response()
00060 , urdf()
00061 {
00062 }
00063
00064 GetUrdfResponse_(const ContainerAllocator& _alloc)
00065 : return_response(_alloc)
00066 , urdf(_alloc)
00067 {
00068 }
00069
00070 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _return_response_type;
00071 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > return_response;
00072
00073 typedef std::vector< ::srs_object_database_msgs::urdf_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_object_database_msgs::urdf_<ContainerAllocator> >::other > _urdf_type;
00074 std::vector< ::srs_object_database_msgs::urdf_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_object_database_msgs::urdf_<ContainerAllocator> >::other > urdf;
00075
00076
00077 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > Ptr;
00078 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> const> ConstPtr;
00079 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00080 };
00081 typedef ::srs_object_database_msgs::GetUrdfResponse_<std::allocator<void> > GetUrdfResponse;
00082
00083 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfResponse> GetUrdfResponsePtr;
00084 typedef boost::shared_ptr< ::srs_object_database_msgs::GetUrdfResponse const> GetUrdfResponseConstPtr;
00085
00086
00087 struct GetUrdf
00088 {
00089
00090 typedef GetUrdfRequest Request;
00091 typedef GetUrdfResponse Response;
00092 Request request;
00093 Response response;
00094
00095 typedef Request RequestType;
00096 typedef Response ResponseType;
00097 };
00098 }
00099
00100 namespace ros
00101 {
00102 namespace message_traits
00103 {
00104 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > : public TrueType {};
00105 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> const> : public TrueType {};
00106 template<class ContainerAllocator>
00107 struct MD5Sum< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > {
00108 static const char* value()
00109 {
00110 return "80afe6caba30c992d2e7ff6ff0e0d51e";
00111 }
00112
00113 static const char* value(const ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> &) { return value(); }
00114 static const uint64_t static_value1 = 0x80afe6caba30c992ULL;
00115 static const uint64_t static_value2 = 0xd2e7ff6ff0e0d51eULL;
00116 };
00117
00118 template<class ContainerAllocator>
00119 struct DataType< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > {
00120 static const char* value()
00121 {
00122 return "srs_object_database_msgs/GetUrdfRequest";
00123 }
00124
00125 static const char* value(const ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> &) { return value(); }
00126 };
00127
00128 template<class ContainerAllocator>
00129 struct Definition< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > {
00130 static const char* value()
00131 {
00132 return "\n\
00133 \n\
00134 \n\
00135 \n\
00136 int32[] model_ids\n\
00137 \n\
00138 \n\
00139 ";
00140 }
00141
00142 static const char* value(const ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> &) { return value(); }
00143 };
00144
00145 }
00146 }
00147
00148
00149 namespace ros
00150 {
00151 namespace message_traits
00152 {
00153 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > : public TrueType {};
00154 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> const> : public TrueType {};
00155 template<class ContainerAllocator>
00156 struct MD5Sum< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > {
00157 static const char* value()
00158 {
00159 return "18629b80ecc1511309bef0685f2134c3";
00160 }
00161
00162 static const char* value(const ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> &) { return value(); }
00163 static const uint64_t static_value1 = 0x18629b80ecc15113ULL;
00164 static const uint64_t static_value2 = 0x09bef0685f2134c3ULL;
00165 };
00166
00167 template<class ContainerAllocator>
00168 struct DataType< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > {
00169 static const char* value()
00170 {
00171 return "srs_object_database_msgs/GetUrdfResponse";
00172 }
00173
00174 static const char* value(const ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> &) { return value(); }
00175 };
00176
00177 template<class ContainerAllocator>
00178 struct Definition< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > {
00179 static const char* value()
00180 {
00181 return "\n\
00182 \n\
00183 string return_response\n\
00184 \n\
00185 srs_object_database_msgs/urdf[] urdf\n\
00186 \n\
00187 \n\
00188 ================================================================================\n\
00189 MSG: srs_object_database_msgs/urdf\n\
00190 int32 objectId\n\
00191 visualization_msgs/Marker[] markers\n\
00192 ================================================================================\n\
00193 MSG: visualization_msgs/Marker\n\
00194 # See http://www.ros.org/wiki/rviz/DisplayTypes/Marker and http://www.ros.org/wiki/rviz/Tutorials/Markers%3A%20Basic%20Shapes for more information on using this message with rviz\n\
00195 \n\
00196 uint8 ARROW=0\n\
00197 uint8 CUBE=1\n\
00198 uint8 SPHERE=2\n\
00199 uint8 CYLINDER=3\n\
00200 uint8 LINE_STRIP=4\n\
00201 uint8 LINE_LIST=5\n\
00202 uint8 CUBE_LIST=6\n\
00203 uint8 SPHERE_LIST=7\n\
00204 uint8 POINTS=8\n\
00205 uint8 TEXT_VIEW_FACING=9\n\
00206 uint8 MESH_RESOURCE=10\n\
00207 uint8 TRIANGLE_LIST=11\n\
00208 \n\
00209 uint8 ADD=0\n\
00210 uint8 MODIFY=0\n\
00211 uint8 DELETE=2\n\
00212 \n\
00213 Header header # header for time/frame information\n\
00214 string ns # Namespace to place this object in... used in conjunction with id to create a unique name for the object\n\
00215 int32 id # object ID useful in conjunction with the namespace for manipulating and deleting the object later\n\
00216 int32 type # Type of object\n\
00217 int32 action # 0 add/modify an object, 1 (deprecated), 2 deletes an object\n\
00218 geometry_msgs/Pose pose # Pose of the object\n\
00219 geometry_msgs/Vector3 scale # Scale of the object 1,1,1 means default (usually 1 meter square)\n\
00220 std_msgs/ColorRGBA color # Color [0.0-1.0]\n\
00221 duration lifetime # How long the object should last before being automatically deleted. 0 means forever\n\
00222 bool frame_locked # If this marker should be frame-locked, i.e. retransformed into its frame every timestep\n\
00223 \n\
00224 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
00225 geometry_msgs/Point[] points\n\
00226 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
00227 #number of colors must either be 0 or equal to the number of points\n\
00228 #NOTE: alpha is not yet used\n\
00229 std_msgs/ColorRGBA[] colors\n\
00230 \n\
00231 # NOTE: only used for text markers\n\
00232 string text\n\
00233 \n\
00234 # NOTE: only used for MESH_RESOURCE markers\n\
00235 string mesh_resource\n\
00236 bool mesh_use_embedded_materials\n\
00237 \n\
00238 ================================================================================\n\
00239 MSG: std_msgs/Header\n\
00240 # Standard metadata for higher-level stamped data types.\n\
00241 # This is generally used to communicate timestamped data \n\
00242 # in a particular coordinate frame.\n\
00243 # \n\
00244 # sequence ID: consecutively increasing ID \n\
00245 uint32 seq\n\
00246 #Two-integer timestamp that is expressed as:\n\
00247 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00248 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00249 # time-handling sugar is provided by the client library\n\
00250 time stamp\n\
00251 #Frame this data is associated with\n\
00252 # 0: no frame\n\
00253 # 1: global frame\n\
00254 string frame_id\n\
00255 \n\
00256 ================================================================================\n\
00257 MSG: geometry_msgs/Pose\n\
00258 # A representation of pose in free space, composed of postion and orientation. \n\
00259 Point position\n\
00260 Quaternion orientation\n\
00261 \n\
00262 ================================================================================\n\
00263 MSG: geometry_msgs/Point\n\
00264 # This contains the position of a point in free space\n\
00265 float64 x\n\
00266 float64 y\n\
00267 float64 z\n\
00268 \n\
00269 ================================================================================\n\
00270 MSG: geometry_msgs/Quaternion\n\
00271 # This represents an orientation in free space in quaternion form.\n\
00272 \n\
00273 float64 x\n\
00274 float64 y\n\
00275 float64 z\n\
00276 float64 w\n\
00277 \n\
00278 ================================================================================\n\
00279 MSG: geometry_msgs/Vector3\n\
00280 # This represents a vector in free space. \n\
00281 \n\
00282 float64 x\n\
00283 float64 y\n\
00284 float64 z\n\
00285 ================================================================================\n\
00286 MSG: std_msgs/ColorRGBA\n\
00287 float32 r\n\
00288 float32 g\n\
00289 float32 b\n\
00290 float32 a\n\
00291 \n\
00292 ";
00293 }
00294
00295 static const char* value(const ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> &) { return value(); }
00296 };
00297
00298 }
00299 }
00300
00301 namespace ros
00302 {
00303 namespace serialization
00304 {
00305
00306 template<class ContainerAllocator> struct Serializer< ::srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> >
00307 {
00308 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00309 {
00310 stream.next(m.model_ids);
00311 }
00312
00313 ROS_DECLARE_ALLINONE_SERIALIZER;
00314 };
00315 }
00316 }
00317
00318
00319 namespace ros
00320 {
00321 namespace serialization
00322 {
00323
00324 template<class ContainerAllocator> struct Serializer< ::srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> >
00325 {
00326 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00327 {
00328 stream.next(m.return_response);
00329 stream.next(m.urdf);
00330 }
00331
00332 ROS_DECLARE_ALLINONE_SERIALIZER;
00333 };
00334 }
00335 }
00336
00337 namespace ros
00338 {
00339 namespace service_traits
00340 {
00341 template<>
00342 struct MD5Sum<srs_object_database_msgs::GetUrdf> {
00343 static const char* value()
00344 {
00345 return "26b23ebbbc5d4aaeec0ca91a831f050a";
00346 }
00347
00348 static const char* value(const srs_object_database_msgs::GetUrdf&) { return value(); }
00349 };
00350
00351 template<>
00352 struct DataType<srs_object_database_msgs::GetUrdf> {
00353 static const char* value()
00354 {
00355 return "srs_object_database_msgs/GetUrdf";
00356 }
00357
00358 static const char* value(const srs_object_database_msgs::GetUrdf&) { return value(); }
00359 };
00360
00361 template<class ContainerAllocator>
00362 struct MD5Sum<srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > {
00363 static const char* value()
00364 {
00365 return "26b23ebbbc5d4aaeec0ca91a831f050a";
00366 }
00367
00368 static const char* value(const srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> &) { return value(); }
00369 };
00370
00371 template<class ContainerAllocator>
00372 struct DataType<srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> > {
00373 static const char* value()
00374 {
00375 return "srs_object_database_msgs/GetUrdf";
00376 }
00377
00378 static const char* value(const srs_object_database_msgs::GetUrdfRequest_<ContainerAllocator> &) { return value(); }
00379 };
00380
00381 template<class ContainerAllocator>
00382 struct MD5Sum<srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > {
00383 static const char* value()
00384 {
00385 return "26b23ebbbc5d4aaeec0ca91a831f050a";
00386 }
00387
00388 static const char* value(const srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> &) { return value(); }
00389 };
00390
00391 template<class ContainerAllocator>
00392 struct DataType<srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> > {
00393 static const char* value()
00394 {
00395 return "srs_object_database_msgs/GetUrdf";
00396 }
00397
00398 static const char* value(const srs_object_database_msgs::GetUrdfResponse_<ContainerAllocator> &) { return value(); }
00399 };
00400
00401 }
00402 }
00403
00404 #endif // SRS_OBJECT_DATABASE_MSGS_SERVICE_GETURDF_H
00405