00001
00002 #ifndef HOUSEHOLD_OBJECTS_DATABASE_MSGS_SERVICE_GETMODELSCANS_H
00003 #define HOUSEHOLD_OBJECTS_DATABASE_MSGS_SERVICE_GETMODELSCANS_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 "household_objects_database_msgs/DatabaseReturnCode.h"
00022 #include "household_objects_database_msgs/DatabaseScan.h"
00023
00024 namespace household_objects_database_msgs
00025 {
00026 template <class ContainerAllocator>
00027 struct GetModelScansRequest_ {
00028 typedef GetModelScansRequest_<ContainerAllocator> Type;
00029
00030 GetModelScansRequest_()
00031 : model_id(0)
00032 , scan_source()
00033 {
00034 }
00035
00036 GetModelScansRequest_(const ContainerAllocator& _alloc)
00037 : model_id(0)
00038 , scan_source(_alloc)
00039 {
00040 }
00041
00042 typedef int32_t _model_id_type;
00043 int32_t model_id;
00044
00045 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _scan_source_type;
00046 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > scan_source;
00047
00048
00049 private:
00050 static const char* __s_getDataType_() { return "household_objects_database_msgs/GetModelScansRequest"; }
00051 public:
00052 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00053
00054 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00055
00056 private:
00057 static const char* __s_getMD5Sum_() { return "4f31b0f27ba251f6d1f17eafced83cb7"; }
00058 public:
00059 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00060
00061 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00062
00063 private:
00064 static const char* __s_getServerMD5Sum_() { return "8e98ddfab8ff8e5fb3a60b1cd7645437"; }
00065 public:
00066 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00067
00068 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00069
00070 private:
00071 static const char* __s_getMessageDefinition_() { return "\n\
00072 \n\
00073 \n\
00074 int32 model_id\n\
00075 \n\
00076 \n\
00077 string scan_source\n\
00078 \n\
00079 \n\
00080 "; }
00081 public:
00082 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00083
00084 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00085
00086 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00087 {
00088 ros::serialization::OStream stream(write_ptr, 1000000000);
00089 ros::serialization::serialize(stream, model_id);
00090 ros::serialization::serialize(stream, scan_source);
00091 return stream.getData();
00092 }
00093
00094 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00095 {
00096 ros::serialization::IStream stream(read_ptr, 1000000000);
00097 ros::serialization::deserialize(stream, model_id);
00098 ros::serialization::deserialize(stream, scan_source);
00099 return stream.getData();
00100 }
00101
00102 ROS_DEPRECATED virtual uint32_t serializationLength() const
00103 {
00104 uint32_t size = 0;
00105 size += ros::serialization::serializationLength(model_id);
00106 size += ros::serialization::serializationLength(scan_source);
00107 return size;
00108 }
00109
00110 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > Ptr;
00111 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> const> ConstPtr;
00112 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00113 };
00114 typedef ::household_objects_database_msgs::GetModelScansRequest_<std::allocator<void> > GetModelScansRequest;
00115
00116 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansRequest> GetModelScansRequestPtr;
00117 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansRequest const> GetModelScansRequestConstPtr;
00118
00119
00120 template <class ContainerAllocator>
00121 struct GetModelScansResponse_ {
00122 typedef GetModelScansResponse_<ContainerAllocator> Type;
00123
00124 GetModelScansResponse_()
00125 : return_code()
00126 , matching_scans()
00127 {
00128 }
00129
00130 GetModelScansResponse_(const ContainerAllocator& _alloc)
00131 : return_code(_alloc)
00132 , matching_scans(_alloc)
00133 {
00134 }
00135
00136 typedef ::household_objects_database_msgs::DatabaseReturnCode_<ContainerAllocator> _return_code_type;
00137 ::household_objects_database_msgs::DatabaseReturnCode_<ContainerAllocator> return_code;
00138
00139 typedef std::vector< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> >::other > _matching_scans_type;
00140 std::vector< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> >::other > matching_scans;
00141
00142
00143 ROS_DEPRECATED uint32_t get_matching_scans_size() const { return (uint32_t)matching_scans.size(); }
00144 ROS_DEPRECATED void set_matching_scans_size(uint32_t size) { matching_scans.resize((size_t)size); }
00145 ROS_DEPRECATED void get_matching_scans_vec(std::vector< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> >::other > & vec) const { vec = this->matching_scans; }
00146 ROS_DEPRECATED void set_matching_scans_vec(const std::vector< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::household_objects_database_msgs::DatabaseScan_<ContainerAllocator> >::other > & vec) { this->matching_scans = vec; }
00147 private:
00148 static const char* __s_getDataType_() { return "household_objects_database_msgs/GetModelScansResponse"; }
00149 public:
00150 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00151
00152 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00153
00154 private:
00155 static const char* __s_getMD5Sum_() { return "8d1bb6e95c26a5d891987d9d9195e958"; }
00156 public:
00157 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00158
00159 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00160
00161 private:
00162 static const char* __s_getServerMD5Sum_() { return "8e98ddfab8ff8e5fb3a60b1cd7645437"; }
00163 public:
00164 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00165
00166 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00167
00168 private:
00169 static const char* __s_getMessageDefinition_() { return "\n\
00170 \n\
00171 DatabaseReturnCode return_code\n\
00172 \n\
00173 \n\
00174 DatabaseScan[] matching_scans\n\
00175 \n\
00176 ================================================================================\n\
00177 MSG: household_objects_database_msgs/DatabaseReturnCode\n\
00178 # return codes for database-related services\n\
00179 \n\
00180 int32 UNKNOWN_ERROR = 1\n\
00181 int32 DATABASE_NOT_CONNECTED = 2\n\
00182 int32 DATABASE_QUERY_ERROR = 3\n\
00183 int32 SUCCESS = -1\n\
00184 \n\
00185 int32 code\n\
00186 ================================================================================\n\
00187 MSG: household_objects_database_msgs/DatabaseScan\n\
00188 # Contains the location of a stored point cloud scan of an object, \n\
00189 # as well as additional metadata about that scan \n\
00190 \n\
00191 # the database id of the model\n\
00192 int32 model_id\n\
00193 \n\
00194 # the location of the bag file storing the scan\n\
00195 string bagfile_location\n\
00196 \n\
00197 # the source of the scan (e.g. simulation)\n\
00198 string scan_source\n\
00199 \n\
00200 # the ground truth pose of the object that was scanned\n\
00201 geometry_msgs/PoseStamped pose\n\
00202 \n\
00203 # the topic that the points in the bag are published on\n\
00204 string cloud_topic\n\
00205 ================================================================================\n\
00206 MSG: geometry_msgs/PoseStamped\n\
00207 # A Pose with reference coordinate frame and timestamp\n\
00208 Header header\n\
00209 Pose pose\n\
00210 \n\
00211 ================================================================================\n\
00212 MSG: std_msgs/Header\n\
00213 # Standard metadata for higher-level stamped data types.\n\
00214 # This is generally used to communicate timestamped data \n\
00215 # in a particular coordinate frame.\n\
00216 # \n\
00217 # sequence ID: consecutively increasing ID \n\
00218 uint32 seq\n\
00219 #Two-integer timestamp that is expressed as:\n\
00220 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00221 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00222 # time-handling sugar is provided by the client library\n\
00223 time stamp\n\
00224 #Frame this data is associated with\n\
00225 # 0: no frame\n\
00226 # 1: global frame\n\
00227 string frame_id\n\
00228 \n\
00229 ================================================================================\n\
00230 MSG: geometry_msgs/Pose\n\
00231 # A representation of pose in free space, composed of postion and orientation. \n\
00232 Point position\n\
00233 Quaternion orientation\n\
00234 \n\
00235 ================================================================================\n\
00236 MSG: geometry_msgs/Point\n\
00237 # This contains the position of a point in free space\n\
00238 float64 x\n\
00239 float64 y\n\
00240 float64 z\n\
00241 \n\
00242 ================================================================================\n\
00243 MSG: geometry_msgs/Quaternion\n\
00244 # This represents an orientation in free space in quaternion form.\n\
00245 \n\
00246 float64 x\n\
00247 float64 y\n\
00248 float64 z\n\
00249 float64 w\n\
00250 \n\
00251 "; }
00252 public:
00253 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00254
00255 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00256
00257 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00258 {
00259 ros::serialization::OStream stream(write_ptr, 1000000000);
00260 ros::serialization::serialize(stream, return_code);
00261 ros::serialization::serialize(stream, matching_scans);
00262 return stream.getData();
00263 }
00264
00265 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00266 {
00267 ros::serialization::IStream stream(read_ptr, 1000000000);
00268 ros::serialization::deserialize(stream, return_code);
00269 ros::serialization::deserialize(stream, matching_scans);
00270 return stream.getData();
00271 }
00272
00273 ROS_DEPRECATED virtual uint32_t serializationLength() const
00274 {
00275 uint32_t size = 0;
00276 size += ros::serialization::serializationLength(return_code);
00277 size += ros::serialization::serializationLength(matching_scans);
00278 return size;
00279 }
00280
00281 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > Ptr;
00282 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> const> ConstPtr;
00283 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00284 };
00285 typedef ::household_objects_database_msgs::GetModelScansResponse_<std::allocator<void> > GetModelScansResponse;
00286
00287 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansResponse> GetModelScansResponsePtr;
00288 typedef boost::shared_ptr< ::household_objects_database_msgs::GetModelScansResponse const> GetModelScansResponseConstPtr;
00289
00290 struct GetModelScans
00291 {
00292
00293 typedef GetModelScansRequest Request;
00294 typedef GetModelScansResponse Response;
00295 Request request;
00296 Response response;
00297
00298 typedef Request RequestType;
00299 typedef Response ResponseType;
00300 };
00301 }
00302
00303 namespace ros
00304 {
00305 namespace message_traits
00306 {
00307 template<class ContainerAllocator> struct IsMessage< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > : public TrueType {};
00308 template<class ContainerAllocator> struct IsMessage< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> const> : public TrueType {};
00309 template<class ContainerAllocator>
00310 struct MD5Sum< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > {
00311 static const char* value()
00312 {
00313 return "4f31b0f27ba251f6d1f17eafced83cb7";
00314 }
00315
00316 static const char* value(const ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> &) { return value(); }
00317 static const uint64_t static_value1 = 0x4f31b0f27ba251f6ULL;
00318 static const uint64_t static_value2 = 0xd1f17eafced83cb7ULL;
00319 };
00320
00321 template<class ContainerAllocator>
00322 struct DataType< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > {
00323 static const char* value()
00324 {
00325 return "household_objects_database_msgs/GetModelScansRequest";
00326 }
00327
00328 static const char* value(const ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> &) { return value(); }
00329 };
00330
00331 template<class ContainerAllocator>
00332 struct Definition< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > {
00333 static const char* value()
00334 {
00335 return "\n\
00336 \n\
00337 \n\
00338 int32 model_id\n\
00339 \n\
00340 \n\
00341 string scan_source\n\
00342 \n\
00343 \n\
00344 ";
00345 }
00346
00347 static const char* value(const ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> &) { return value(); }
00348 };
00349
00350 }
00351 }
00352
00353
00354 namespace ros
00355 {
00356 namespace message_traits
00357 {
00358 template<class ContainerAllocator> struct IsMessage< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > : public TrueType {};
00359 template<class ContainerAllocator> struct IsMessage< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> const> : public TrueType {};
00360 template<class ContainerAllocator>
00361 struct MD5Sum< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > {
00362 static const char* value()
00363 {
00364 return "8d1bb6e95c26a5d891987d9d9195e958";
00365 }
00366
00367 static const char* value(const ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> &) { return value(); }
00368 static const uint64_t static_value1 = 0x8d1bb6e95c26a5d8ULL;
00369 static const uint64_t static_value2 = 0x91987d9d9195e958ULL;
00370 };
00371
00372 template<class ContainerAllocator>
00373 struct DataType< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > {
00374 static const char* value()
00375 {
00376 return "household_objects_database_msgs/GetModelScansResponse";
00377 }
00378
00379 static const char* value(const ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> &) { return value(); }
00380 };
00381
00382 template<class ContainerAllocator>
00383 struct Definition< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > {
00384 static const char* value()
00385 {
00386 return "\n\
00387 \n\
00388 DatabaseReturnCode return_code\n\
00389 \n\
00390 \n\
00391 DatabaseScan[] matching_scans\n\
00392 \n\
00393 ================================================================================\n\
00394 MSG: household_objects_database_msgs/DatabaseReturnCode\n\
00395 # return codes for database-related services\n\
00396 \n\
00397 int32 UNKNOWN_ERROR = 1\n\
00398 int32 DATABASE_NOT_CONNECTED = 2\n\
00399 int32 DATABASE_QUERY_ERROR = 3\n\
00400 int32 SUCCESS = -1\n\
00401 \n\
00402 int32 code\n\
00403 ================================================================================\n\
00404 MSG: household_objects_database_msgs/DatabaseScan\n\
00405 # Contains the location of a stored point cloud scan of an object, \n\
00406 # as well as additional metadata about that scan \n\
00407 \n\
00408 # the database id of the model\n\
00409 int32 model_id\n\
00410 \n\
00411 # the location of the bag file storing the scan\n\
00412 string bagfile_location\n\
00413 \n\
00414 # the source of the scan (e.g. simulation)\n\
00415 string scan_source\n\
00416 \n\
00417 # the ground truth pose of the object that was scanned\n\
00418 geometry_msgs/PoseStamped pose\n\
00419 \n\
00420 # the topic that the points in the bag are published on\n\
00421 string cloud_topic\n\
00422 ================================================================================\n\
00423 MSG: geometry_msgs/PoseStamped\n\
00424 # A Pose with reference coordinate frame and timestamp\n\
00425 Header header\n\
00426 Pose pose\n\
00427 \n\
00428 ================================================================================\n\
00429 MSG: std_msgs/Header\n\
00430 # Standard metadata for higher-level stamped data types.\n\
00431 # This is generally used to communicate timestamped data \n\
00432 # in a particular coordinate frame.\n\
00433 # \n\
00434 # sequence ID: consecutively increasing ID \n\
00435 uint32 seq\n\
00436 #Two-integer timestamp that is expressed as:\n\
00437 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00438 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00439 # time-handling sugar is provided by the client library\n\
00440 time stamp\n\
00441 #Frame this data is associated with\n\
00442 # 0: no frame\n\
00443 # 1: global frame\n\
00444 string frame_id\n\
00445 \n\
00446 ================================================================================\n\
00447 MSG: geometry_msgs/Pose\n\
00448 # A representation of pose in free space, composed of postion and orientation. \n\
00449 Point position\n\
00450 Quaternion orientation\n\
00451 \n\
00452 ================================================================================\n\
00453 MSG: geometry_msgs/Point\n\
00454 # This contains the position of a point in free space\n\
00455 float64 x\n\
00456 float64 y\n\
00457 float64 z\n\
00458 \n\
00459 ================================================================================\n\
00460 MSG: geometry_msgs/Quaternion\n\
00461 # This represents an orientation in free space in quaternion form.\n\
00462 \n\
00463 float64 x\n\
00464 float64 y\n\
00465 float64 z\n\
00466 float64 w\n\
00467 \n\
00468 ";
00469 }
00470
00471 static const char* value(const ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> &) { return value(); }
00472 };
00473
00474 }
00475 }
00476
00477 namespace ros
00478 {
00479 namespace serialization
00480 {
00481
00482 template<class ContainerAllocator> struct Serializer< ::household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> >
00483 {
00484 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00485 {
00486 stream.next(m.model_id);
00487 stream.next(m.scan_source);
00488 }
00489
00490 ROS_DECLARE_ALLINONE_SERIALIZER;
00491 };
00492 }
00493 }
00494
00495
00496 namespace ros
00497 {
00498 namespace serialization
00499 {
00500
00501 template<class ContainerAllocator> struct Serializer< ::household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> >
00502 {
00503 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00504 {
00505 stream.next(m.return_code);
00506 stream.next(m.matching_scans);
00507 }
00508
00509 ROS_DECLARE_ALLINONE_SERIALIZER;
00510 };
00511 }
00512 }
00513
00514 namespace ros
00515 {
00516 namespace service_traits
00517 {
00518 template<>
00519 struct MD5Sum<household_objects_database_msgs::GetModelScans> {
00520 static const char* value()
00521 {
00522 return "8e98ddfab8ff8e5fb3a60b1cd7645437";
00523 }
00524
00525 static const char* value(const household_objects_database_msgs::GetModelScans&) { return value(); }
00526 };
00527
00528 template<>
00529 struct DataType<household_objects_database_msgs::GetModelScans> {
00530 static const char* value()
00531 {
00532 return "household_objects_database_msgs/GetModelScans";
00533 }
00534
00535 static const char* value(const household_objects_database_msgs::GetModelScans&) { return value(); }
00536 };
00537
00538 template<class ContainerAllocator>
00539 struct MD5Sum<household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > {
00540 static const char* value()
00541 {
00542 return "8e98ddfab8ff8e5fb3a60b1cd7645437";
00543 }
00544
00545 static const char* value(const household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> &) { return value(); }
00546 };
00547
00548 template<class ContainerAllocator>
00549 struct DataType<household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> > {
00550 static const char* value()
00551 {
00552 return "household_objects_database_msgs/GetModelScans";
00553 }
00554
00555 static const char* value(const household_objects_database_msgs::GetModelScansRequest_<ContainerAllocator> &) { return value(); }
00556 };
00557
00558 template<class ContainerAllocator>
00559 struct MD5Sum<household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > {
00560 static const char* value()
00561 {
00562 return "8e98ddfab8ff8e5fb3a60b1cd7645437";
00563 }
00564
00565 static const char* value(const household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> &) { return value(); }
00566 };
00567
00568 template<class ContainerAllocator>
00569 struct DataType<household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> > {
00570 static const char* value()
00571 {
00572 return "household_objects_database_msgs/GetModelScans";
00573 }
00574
00575 static const char* value(const household_objects_database_msgs::GetModelScansResponse_<ContainerAllocator> &) { return value(); }
00576 };
00577
00578 }
00579 }
00580
00581 #endif // HOUSEHOLD_OBJECTS_DATABASE_MSGS_SERVICE_GETMODELSCANS_H
00582