Go to the documentation of this file.00001
00002 #ifndef SRS_OBJECT_DATABASE_MSGS_SERVICE_GETSURF_H
00003 #define SRS_OBJECT_DATABASE_MSGS_SERVICE_GETSURF_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/surf.h"
00022
00023 namespace srs_object_database_msgs
00024 {
00025 template <class ContainerAllocator>
00026 struct GetSurfRequest_ {
00027 typedef GetSurfRequest_<ContainerAllocator> Type;
00028
00029 GetSurfRequest_()
00030 : model_ids()
00031 {
00032 }
00033
00034 GetSurfRequest_(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::GetSurfRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::srs_object_database_msgs::GetSurfRequest_<std::allocator<void> > GetSurfRequest;
00048
00049 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfRequest> GetSurfRequestPtr;
00050 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfRequest const> GetSurfRequestConstPtr;
00051
00052
00053
00054 template <class ContainerAllocator>
00055 struct GetSurfResponse_ {
00056 typedef GetSurfResponse_<ContainerAllocator> Type;
00057
00058 GetSurfResponse_()
00059 : return_response()
00060 , msg()
00061 {
00062 }
00063
00064 GetSurfResponse_(const ContainerAllocator& _alloc)
00065 : return_response(_alloc)
00066 , msg(_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::surf_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_object_database_msgs::surf_<ContainerAllocator> >::other > _msg_type;
00074 std::vector< ::srs_object_database_msgs::surf_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::srs_object_database_msgs::surf_<ContainerAllocator> >::other > msg;
00075
00076
00077 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > Ptr;
00078 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> const> ConstPtr;
00079 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00080 };
00081 typedef ::srs_object_database_msgs::GetSurfResponse_<std::allocator<void> > GetSurfResponse;
00082
00083 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfResponse> GetSurfResponsePtr;
00084 typedef boost::shared_ptr< ::srs_object_database_msgs::GetSurfResponse const> GetSurfResponseConstPtr;
00085
00086
00087 struct GetSurf
00088 {
00089
00090 typedef GetSurfRequest Request;
00091 typedef GetSurfResponse 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::GetSurfRequest_<ContainerAllocator> > : public TrueType {};
00105 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> const> : public TrueType {};
00106 template<class ContainerAllocator>
00107 struct MD5Sum< ::srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> > {
00108 static const char* value()
00109 {
00110 return "80afe6caba30c992d2e7ff6ff0e0d51e";
00111 }
00112
00113 static const char* value(const ::srs_object_database_msgs::GetSurfRequest_<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::GetSurfRequest_<ContainerAllocator> > {
00120 static const char* value()
00121 {
00122 return "srs_object_database_msgs/GetSurfRequest";
00123 }
00124
00125 static const char* value(const ::srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> &) { return value(); }
00126 };
00127
00128 template<class ContainerAllocator>
00129 struct Definition< ::srs_object_database_msgs::GetSurfRequest_<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::GetSurfRequest_<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::GetSurfResponse_<ContainerAllocator> > : public TrueType {};
00154 template<class ContainerAllocator> struct IsMessage< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> const> : public TrueType {};
00155 template<class ContainerAllocator>
00156 struct MD5Sum< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > {
00157 static const char* value()
00158 {
00159 return "f488db1c5c99c7e7e3059cfcb562df9f";
00160 }
00161
00162 static const char* value(const ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> &) { return value(); }
00163 static const uint64_t static_value1 = 0xf488db1c5c99c7e7ULL;
00164 static const uint64_t static_value2 = 0xe3059cfcb562df9fULL;
00165 };
00166
00167 template<class ContainerAllocator>
00168 struct DataType< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > {
00169 static const char* value()
00170 {
00171 return "srs_object_database_msgs/GetSurfResponse";
00172 }
00173
00174 static const char* value(const ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> &) { return value(); }
00175 };
00176
00177 template<class ContainerAllocator>
00178 struct Definition< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > {
00179 static const char* value()
00180 {
00181 return "\n\
00182 \n\
00183 string return_response\n\
00184 \n\
00185 srs_object_database_msgs/surf[] msg\n\
00186 \n\
00187 \n\
00188 ================================================================================\n\
00189 MSG: srs_object_database_msgs/surf\n\
00190 int32 objectId\n\
00191 sensor_msgs/PointCloud2 surf\n\
00192 sensor_msgs/PointCloud2 bounding_box\n\
00193 geometry_msgs/Pose coord_frame\n\
00194 \n\
00195 ================================================================================\n\
00196 MSG: sensor_msgs/PointCloud2\n\
00197 # This message holds a collection of N-dimensional points, which may\n\
00198 # contain additional information such as normals, intensity, etc. The\n\
00199 # point data is stored as a binary blob, its layout described by the\n\
00200 # contents of the \"fields\" array.\n\
00201 \n\
00202 # The point cloud data may be organized 2d (image-like) or 1d\n\
00203 # (unordered). Point clouds organized as 2d images may be produced by\n\
00204 # camera depth sensors such as stereo or time-of-flight.\n\
00205 \n\
00206 # Time of sensor data acquisition, and the coordinate frame ID (for 3d\n\
00207 # points).\n\
00208 Header header\n\
00209 \n\
00210 # 2D structure of the point cloud. If the cloud is unordered, height is\n\
00211 # 1 and width is the length of the point cloud.\n\
00212 uint32 height\n\
00213 uint32 width\n\
00214 \n\
00215 # Describes the channels and their layout in the binary data blob.\n\
00216 PointField[] fields\n\
00217 \n\
00218 bool is_bigendian # Is this data bigendian?\n\
00219 uint32 point_step # Length of a point in bytes\n\
00220 uint32 row_step # Length of a row in bytes\n\
00221 uint8[] data # Actual point data, size is (row_step*height)\n\
00222 \n\
00223 bool is_dense # True if there are no invalid points\n\
00224 \n\
00225 ================================================================================\n\
00226 MSG: std_msgs/Header\n\
00227 # Standard metadata for higher-level stamped data types.\n\
00228 # This is generally used to communicate timestamped data \n\
00229 # in a particular coordinate frame.\n\
00230 # \n\
00231 # sequence ID: consecutively increasing ID \n\
00232 uint32 seq\n\
00233 #Two-integer timestamp that is expressed as:\n\
00234 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00235 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00236 # time-handling sugar is provided by the client library\n\
00237 time stamp\n\
00238 #Frame this data is associated with\n\
00239 # 0: no frame\n\
00240 # 1: global frame\n\
00241 string frame_id\n\
00242 \n\
00243 ================================================================================\n\
00244 MSG: sensor_msgs/PointField\n\
00245 # This message holds the description of one point entry in the\n\
00246 # PointCloud2 message format.\n\
00247 uint8 INT8 = 1\n\
00248 uint8 UINT8 = 2\n\
00249 uint8 INT16 = 3\n\
00250 uint8 UINT16 = 4\n\
00251 uint8 INT32 = 5\n\
00252 uint8 UINT32 = 6\n\
00253 uint8 FLOAT32 = 7\n\
00254 uint8 FLOAT64 = 8\n\
00255 \n\
00256 string name # Name of field\n\
00257 uint32 offset # Offset from start of point struct\n\
00258 uint8 datatype # Datatype enumeration, see above\n\
00259 uint32 count # How many elements in the field\n\
00260 \n\
00261 ================================================================================\n\
00262 MSG: geometry_msgs/Pose\n\
00263 # A representation of pose in free space, composed of postion and orientation. \n\
00264 Point position\n\
00265 Quaternion orientation\n\
00266 \n\
00267 ================================================================================\n\
00268 MSG: geometry_msgs/Point\n\
00269 # This contains the position of a point in free space\n\
00270 float64 x\n\
00271 float64 y\n\
00272 float64 z\n\
00273 \n\
00274 ================================================================================\n\
00275 MSG: geometry_msgs/Quaternion\n\
00276 # This represents an orientation in free space in quaternion form.\n\
00277 \n\
00278 float64 x\n\
00279 float64 y\n\
00280 float64 z\n\
00281 float64 w\n\
00282 \n\
00283 ";
00284 }
00285
00286 static const char* value(const ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> &) { return value(); }
00287 };
00288
00289 }
00290 }
00291
00292 namespace ros
00293 {
00294 namespace serialization
00295 {
00296
00297 template<class ContainerAllocator> struct Serializer< ::srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> >
00298 {
00299 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00300 {
00301 stream.next(m.model_ids);
00302 }
00303
00304 ROS_DECLARE_ALLINONE_SERIALIZER;
00305 };
00306 }
00307 }
00308
00309
00310 namespace ros
00311 {
00312 namespace serialization
00313 {
00314
00315 template<class ContainerAllocator> struct Serializer< ::srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> >
00316 {
00317 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00318 {
00319 stream.next(m.return_response);
00320 stream.next(m.msg);
00321 }
00322
00323 ROS_DECLARE_ALLINONE_SERIALIZER;
00324 };
00325 }
00326 }
00327
00328 namespace ros
00329 {
00330 namespace service_traits
00331 {
00332 template<>
00333 struct MD5Sum<srs_object_database_msgs::GetSurf> {
00334 static const char* value()
00335 {
00336 return "8a26dac6ca309ec59818b968ea146378";
00337 }
00338
00339 static const char* value(const srs_object_database_msgs::GetSurf&) { return value(); }
00340 };
00341
00342 template<>
00343 struct DataType<srs_object_database_msgs::GetSurf> {
00344 static const char* value()
00345 {
00346 return "srs_object_database_msgs/GetSurf";
00347 }
00348
00349 static const char* value(const srs_object_database_msgs::GetSurf&) { return value(); }
00350 };
00351
00352 template<class ContainerAllocator>
00353 struct MD5Sum<srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> > {
00354 static const char* value()
00355 {
00356 return "8a26dac6ca309ec59818b968ea146378";
00357 }
00358
00359 static const char* value(const srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> &) { return value(); }
00360 };
00361
00362 template<class ContainerAllocator>
00363 struct DataType<srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> > {
00364 static const char* value()
00365 {
00366 return "srs_object_database_msgs/GetSurf";
00367 }
00368
00369 static const char* value(const srs_object_database_msgs::GetSurfRequest_<ContainerAllocator> &) { return value(); }
00370 };
00371
00372 template<class ContainerAllocator>
00373 struct MD5Sum<srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > {
00374 static const char* value()
00375 {
00376 return "8a26dac6ca309ec59818b968ea146378";
00377 }
00378
00379 static const char* value(const srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> &) { return value(); }
00380 };
00381
00382 template<class ContainerAllocator>
00383 struct DataType<srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> > {
00384 static const char* value()
00385 {
00386 return "srs_object_database_msgs/GetSurf";
00387 }
00388
00389 static const char* value(const srs_object_database_msgs::GetSurfResponse_<ContainerAllocator> &) { return value(); }
00390 };
00391
00392 }
00393 }
00394
00395 #endif // SRS_OBJECT_DATABASE_MSGS_SERVICE_GETSURF_H
00396