$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-pr2_object_manipulation/doc_stacks/2013-03-05_12-10-38.333207/pr2_object_manipulation/manipulation/pr2_grasp_adjust/srv/GraspAdjust.srv */ 00002 #ifndef PR2_GRASP_ADJUST_SERVICE_GRASPADJUST_H 00003 #define PR2_GRASP_ADJUST_SERVICE_GRASPADJUST_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 #include "geometry_msgs/PoseStamped.h" 00020 #include "geometry_msgs/Vector3.h" 00021 00022 00023 #include "geometry_msgs/PoseStamped.h" 00024 #include "object_manipulation_msgs/ManipulationResult.h" 00025 00026 namespace pr2_grasp_adjust 00027 { 00028 template <class ContainerAllocator> 00029 struct GraspAdjustRequest_ { 00030 typedef GraspAdjustRequest_<ContainerAllocator> Type; 00031 00032 GraspAdjustRequest_() 00033 : grasp_pose() 00034 , roi_dims() 00035 , search_mode(0) 00036 { 00037 } 00038 00039 GraspAdjustRequest_(const ContainerAllocator& _alloc) 00040 : grasp_pose(_alloc) 00041 , roi_dims(_alloc) 00042 , search_mode(0) 00043 { 00044 } 00045 00046 typedef ::geometry_msgs::PoseStamped_<ContainerAllocator> _grasp_pose_type; 00047 ::geometry_msgs::PoseStamped_<ContainerAllocator> grasp_pose; 00048 00049 typedef ::geometry_msgs::Vector3_<ContainerAllocator> _roi_dims_type; 00050 ::geometry_msgs::Vector3_<ContainerAllocator> roi_dims; 00051 00052 typedef uint8_t _search_mode_type; 00053 uint8_t search_mode; 00054 00055 enum { GLOBAL_SEARCH = 0 }; 00056 enum { LOCAL_SEARCH = 1 }; 00057 enum { SINGLE_POSE = 2 }; 00058 00059 private: 00060 static const char* __s_getDataType_() { return "pr2_grasp_adjust/GraspAdjustRequest"; } 00061 public: 00062 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00063 00064 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00065 00066 private: 00067 static const char* __s_getMD5Sum_() { return "e7ccb113bffaf7f7554b005b509b114a"; } 00068 public: 00069 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00070 00071 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00072 00073 private: 00074 static const char* __s_getServerMD5Sum_() { return "155f94ed302ff095096df9b37ecc7886"; } 00075 public: 00076 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00077 00078 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00079 00080 private: 00081 static const char* __s_getMessageDefinition_() { return "geometry_msgs/PoseStamped grasp_pose\n\ 00082 geometry_msgs/Vector3 roi_dims\n\ 00083 uint8 search_mode\n\ 00084 \n\ 00085 int32 GLOBAL_SEARCH = 0\n\ 00086 int32 LOCAL_SEARCH = 1\n\ 00087 int32 SINGLE_POSE = 2\n\ 00088 \n\ 00089 \n\ 00090 ================================================================================\n\ 00091 MSG: geometry_msgs/PoseStamped\n\ 00092 # A Pose with reference coordinate frame and timestamp\n\ 00093 Header header\n\ 00094 Pose pose\n\ 00095 \n\ 00096 ================================================================================\n\ 00097 MSG: std_msgs/Header\n\ 00098 # Standard metadata for higher-level stamped data types.\n\ 00099 # This is generally used to communicate timestamped data \n\ 00100 # in a particular coordinate frame.\n\ 00101 # \n\ 00102 # sequence ID: consecutively increasing ID \n\ 00103 uint32 seq\n\ 00104 #Two-integer timestamp that is expressed as:\n\ 00105 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00106 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00107 # time-handling sugar is provided by the client library\n\ 00108 time stamp\n\ 00109 #Frame this data is associated with\n\ 00110 # 0: no frame\n\ 00111 # 1: global frame\n\ 00112 string frame_id\n\ 00113 \n\ 00114 ================================================================================\n\ 00115 MSG: geometry_msgs/Pose\n\ 00116 # A representation of pose in free space, composed of postion and orientation. \n\ 00117 Point position\n\ 00118 Quaternion orientation\n\ 00119 \n\ 00120 ================================================================================\n\ 00121 MSG: geometry_msgs/Point\n\ 00122 # This contains the position of a point in free space\n\ 00123 float64 x\n\ 00124 float64 y\n\ 00125 float64 z\n\ 00126 \n\ 00127 ================================================================================\n\ 00128 MSG: geometry_msgs/Quaternion\n\ 00129 # This represents an orientation in free space in quaternion form.\n\ 00130 \n\ 00131 float64 x\n\ 00132 float64 y\n\ 00133 float64 z\n\ 00134 float64 w\n\ 00135 \n\ 00136 ================================================================================\n\ 00137 MSG: geometry_msgs/Vector3\n\ 00138 # This represents a vector in free space. \n\ 00139 \n\ 00140 float64 x\n\ 00141 float64 y\n\ 00142 float64 z\n\ 00143 "; } 00144 public: 00145 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00146 00147 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00148 00149 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00150 { 00151 ros::serialization::OStream stream(write_ptr, 1000000000); 00152 ros::serialization::serialize(stream, grasp_pose); 00153 ros::serialization::serialize(stream, roi_dims); 00154 ros::serialization::serialize(stream, search_mode); 00155 return stream.getData(); 00156 } 00157 00158 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00159 { 00160 ros::serialization::IStream stream(read_ptr, 1000000000); 00161 ros::serialization::deserialize(stream, grasp_pose); 00162 ros::serialization::deserialize(stream, roi_dims); 00163 ros::serialization::deserialize(stream, search_mode); 00164 return stream.getData(); 00165 } 00166 00167 ROS_DEPRECATED virtual uint32_t serializationLength() const 00168 { 00169 uint32_t size = 0; 00170 size += ros::serialization::serializationLength(grasp_pose); 00171 size += ros::serialization::serializationLength(roi_dims); 00172 size += ros::serialization::serializationLength(search_mode); 00173 return size; 00174 } 00175 00176 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > Ptr; 00177 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> const> ConstPtr; 00178 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00179 }; // struct GraspAdjustRequest 00180 typedef ::pr2_grasp_adjust::GraspAdjustRequest_<std::allocator<void> > GraspAdjustRequest; 00181 00182 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustRequest> GraspAdjustRequestPtr; 00183 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustRequest const> GraspAdjustRequestConstPtr; 00184 00185 00186 template <class ContainerAllocator> 00187 struct GraspAdjustResponse_ { 00188 typedef GraspAdjustResponse_<ContainerAllocator> Type; 00189 00190 GraspAdjustResponse_() 00191 : grasp_poses() 00192 , pose_scores() 00193 , gripper_openings() 00194 , result() 00195 { 00196 } 00197 00198 GraspAdjustResponse_(const ContainerAllocator& _alloc) 00199 : grasp_poses(_alloc) 00200 , pose_scores(_alloc) 00201 , gripper_openings(_alloc) 00202 , result(_alloc) 00203 { 00204 } 00205 00206 typedef std::vector< ::geometry_msgs::PoseStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::PoseStamped_<ContainerAllocator> >::other > _grasp_poses_type; 00207 std::vector< ::geometry_msgs::PoseStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::PoseStamped_<ContainerAllocator> >::other > grasp_poses; 00208 00209 typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other > _pose_scores_type; 00210 std::vector<double, typename ContainerAllocator::template rebind<double>::other > pose_scores; 00211 00212 typedef std::vector<float, typename ContainerAllocator::template rebind<float>::other > _gripper_openings_type; 00213 std::vector<float, typename ContainerAllocator::template rebind<float>::other > gripper_openings; 00214 00215 typedef ::object_manipulation_msgs::ManipulationResult_<ContainerAllocator> _result_type; 00216 ::object_manipulation_msgs::ManipulationResult_<ContainerAllocator> result; 00217 00218 00219 ROS_DEPRECATED uint32_t get_grasp_poses_size() const { return (uint32_t)grasp_poses.size(); } 00220 ROS_DEPRECATED void set_grasp_poses_size(uint32_t size) { grasp_poses.resize((size_t)size); } 00221 ROS_DEPRECATED void get_grasp_poses_vec(std::vector< ::geometry_msgs::PoseStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::PoseStamped_<ContainerAllocator> >::other > & vec) const { vec = this->grasp_poses; } 00222 ROS_DEPRECATED void set_grasp_poses_vec(const std::vector< ::geometry_msgs::PoseStamped_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::PoseStamped_<ContainerAllocator> >::other > & vec) { this->grasp_poses = vec; } 00223 ROS_DEPRECATED uint32_t get_pose_scores_size() const { return (uint32_t)pose_scores.size(); } 00224 ROS_DEPRECATED void set_pose_scores_size(uint32_t size) { pose_scores.resize((size_t)size); } 00225 ROS_DEPRECATED void get_pose_scores_vec(std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) const { vec = this->pose_scores; } 00226 ROS_DEPRECATED void set_pose_scores_vec(const std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) { this->pose_scores = vec; } 00227 ROS_DEPRECATED uint32_t get_gripper_openings_size() const { return (uint32_t)gripper_openings.size(); } 00228 ROS_DEPRECATED void set_gripper_openings_size(uint32_t size) { gripper_openings.resize((size_t)size); } 00229 ROS_DEPRECATED void get_gripper_openings_vec(std::vector<float, typename ContainerAllocator::template rebind<float>::other > & vec) const { vec = this->gripper_openings; } 00230 ROS_DEPRECATED void set_gripper_openings_vec(const std::vector<float, typename ContainerAllocator::template rebind<float>::other > & vec) { this->gripper_openings = vec; } 00231 private: 00232 static const char* __s_getDataType_() { return "pr2_grasp_adjust/GraspAdjustResponse"; } 00233 public: 00234 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00235 00236 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00237 00238 private: 00239 static const char* __s_getMD5Sum_() { return "8204d8a3e105f84787abc62e550e0312"; } 00240 public: 00241 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00242 00243 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00244 00245 private: 00246 static const char* __s_getServerMD5Sum_() { return "155f94ed302ff095096df9b37ecc7886"; } 00247 public: 00248 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00249 00250 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00251 00252 private: 00253 static const char* __s_getMessageDefinition_() { return "geometry_msgs/PoseStamped[] grasp_poses\n\ 00254 float64[] pose_scores\n\ 00255 float32[] gripper_openings\n\ 00256 \n\ 00257 object_manipulation_msgs/ManipulationResult result\n\ 00258 \n\ 00259 \n\ 00260 \n\ 00261 ================================================================================\n\ 00262 MSG: geometry_msgs/PoseStamped\n\ 00263 # A Pose with reference coordinate frame and timestamp\n\ 00264 Header header\n\ 00265 Pose pose\n\ 00266 \n\ 00267 ================================================================================\n\ 00268 MSG: std_msgs/Header\n\ 00269 # Standard metadata for higher-level stamped data types.\n\ 00270 # This is generally used to communicate timestamped data \n\ 00271 # in a particular coordinate frame.\n\ 00272 # \n\ 00273 # sequence ID: consecutively increasing ID \n\ 00274 uint32 seq\n\ 00275 #Two-integer timestamp that is expressed as:\n\ 00276 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00277 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00278 # time-handling sugar is provided by the client library\n\ 00279 time stamp\n\ 00280 #Frame this data is associated with\n\ 00281 # 0: no frame\n\ 00282 # 1: global frame\n\ 00283 string frame_id\n\ 00284 \n\ 00285 ================================================================================\n\ 00286 MSG: geometry_msgs/Pose\n\ 00287 # A representation of pose in free space, composed of postion and orientation. \n\ 00288 Point position\n\ 00289 Quaternion orientation\n\ 00290 \n\ 00291 ================================================================================\n\ 00292 MSG: geometry_msgs/Point\n\ 00293 # This contains the position of a point in free space\n\ 00294 float64 x\n\ 00295 float64 y\n\ 00296 float64 z\n\ 00297 \n\ 00298 ================================================================================\n\ 00299 MSG: geometry_msgs/Quaternion\n\ 00300 # This represents an orientation in free space in quaternion form.\n\ 00301 \n\ 00302 float64 x\n\ 00303 float64 y\n\ 00304 float64 z\n\ 00305 float64 w\n\ 00306 \n\ 00307 ================================================================================\n\ 00308 MSG: object_manipulation_msgs/ManipulationResult\n\ 00309 # Result codes for manipulation tasks\n\ 00310 \n\ 00311 # task completed as expected\n\ 00312 # generally means you can proceed as planned\n\ 00313 int32 SUCCESS = 1\n\ 00314 \n\ 00315 # task not possible (e.g. out of reach or obstacles in the way)\n\ 00316 # generally means that the world was not disturbed, so you can try another task\n\ 00317 int32 UNFEASIBLE = -1\n\ 00318 \n\ 00319 # task was thought possible, but failed due to unexpected events during execution\n\ 00320 # it is likely that the world was disturbed, so you are encouraged to refresh\n\ 00321 # your sensed world model before proceeding to another task\n\ 00322 int32 FAILED = -2\n\ 00323 \n\ 00324 # a lower level error prevented task completion (e.g. joint controller not responding)\n\ 00325 # generally requires human attention\n\ 00326 int32 ERROR = -3\n\ 00327 \n\ 00328 # means that at some point during execution we ended up in a state that the collision-aware\n\ 00329 # arm navigation module will not move out of. The world was likely not disturbed, but you \n\ 00330 # probably need a new collision map to move the arm out of the stuck position\n\ 00331 int32 ARM_MOVEMENT_PREVENTED = -4\n\ 00332 \n\ 00333 # specific to grasp actions\n\ 00334 # the object was grasped successfully, but the lift attempt could not achieve the minimum lift distance requested\n\ 00335 # it is likely that the collision environment will see collisions between the hand/object and the support surface\n\ 00336 int32 LIFT_FAILED = -5\n\ 00337 \n\ 00338 # specific to place actions\n\ 00339 # the object was placed successfully, but the retreat attempt could not achieve the minimum retreat distance requested\n\ 00340 # it is likely that the collision environment will see collisions between the hand and the object\n\ 00341 int32 RETREAT_FAILED = -6\n\ 00342 \n\ 00343 # indicates that somewhere along the line a human said \"wait, stop, this is bad, go back and do something else\"\n\ 00344 int32 CANCELLED = -7\n\ 00345 \n\ 00346 # the actual value of this error code\n\ 00347 int32 value\n\ 00348 \n\ 00349 "; } 00350 public: 00351 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00352 00353 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00354 00355 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00356 { 00357 ros::serialization::OStream stream(write_ptr, 1000000000); 00358 ros::serialization::serialize(stream, grasp_poses); 00359 ros::serialization::serialize(stream, pose_scores); 00360 ros::serialization::serialize(stream, gripper_openings); 00361 ros::serialization::serialize(stream, result); 00362 return stream.getData(); 00363 } 00364 00365 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00366 { 00367 ros::serialization::IStream stream(read_ptr, 1000000000); 00368 ros::serialization::deserialize(stream, grasp_poses); 00369 ros::serialization::deserialize(stream, pose_scores); 00370 ros::serialization::deserialize(stream, gripper_openings); 00371 ros::serialization::deserialize(stream, result); 00372 return stream.getData(); 00373 } 00374 00375 ROS_DEPRECATED virtual uint32_t serializationLength() const 00376 { 00377 uint32_t size = 0; 00378 size += ros::serialization::serializationLength(grasp_poses); 00379 size += ros::serialization::serializationLength(pose_scores); 00380 size += ros::serialization::serializationLength(gripper_openings); 00381 size += ros::serialization::serializationLength(result); 00382 return size; 00383 } 00384 00385 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > Ptr; 00386 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> const> ConstPtr; 00387 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00388 }; // struct GraspAdjustResponse 00389 typedef ::pr2_grasp_adjust::GraspAdjustResponse_<std::allocator<void> > GraspAdjustResponse; 00390 00391 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustResponse> GraspAdjustResponsePtr; 00392 typedef boost::shared_ptr< ::pr2_grasp_adjust::GraspAdjustResponse const> GraspAdjustResponseConstPtr; 00393 00394 struct GraspAdjust 00395 { 00396 00397 typedef GraspAdjustRequest Request; 00398 typedef GraspAdjustResponse Response; 00399 Request request; 00400 Response response; 00401 00402 typedef Request RequestType; 00403 typedef Response ResponseType; 00404 }; // struct GraspAdjust 00405 } // namespace pr2_grasp_adjust 00406 00407 namespace ros 00408 { 00409 namespace message_traits 00410 { 00411 template<class ContainerAllocator> struct IsMessage< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > : public TrueType {}; 00412 template<class ContainerAllocator> struct IsMessage< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> const> : public TrueType {}; 00413 template<class ContainerAllocator> 00414 struct MD5Sum< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > { 00415 static const char* value() 00416 { 00417 return "e7ccb113bffaf7f7554b005b509b114a"; 00418 } 00419 00420 static const char* value(const ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> &) { return value(); } 00421 static const uint64_t static_value1 = 0xe7ccb113bffaf7f7ULL; 00422 static const uint64_t static_value2 = 0x554b005b509b114aULL; 00423 }; 00424 00425 template<class ContainerAllocator> 00426 struct DataType< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > { 00427 static const char* value() 00428 { 00429 return "pr2_grasp_adjust/GraspAdjustRequest"; 00430 } 00431 00432 static const char* value(const ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> &) { return value(); } 00433 }; 00434 00435 template<class ContainerAllocator> 00436 struct Definition< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > { 00437 static const char* value() 00438 { 00439 return "geometry_msgs/PoseStamped grasp_pose\n\ 00440 geometry_msgs/Vector3 roi_dims\n\ 00441 uint8 search_mode\n\ 00442 \n\ 00443 int32 GLOBAL_SEARCH = 0\n\ 00444 int32 LOCAL_SEARCH = 1\n\ 00445 int32 SINGLE_POSE = 2\n\ 00446 \n\ 00447 \n\ 00448 ================================================================================\n\ 00449 MSG: geometry_msgs/PoseStamped\n\ 00450 # A Pose with reference coordinate frame and timestamp\n\ 00451 Header header\n\ 00452 Pose pose\n\ 00453 \n\ 00454 ================================================================================\n\ 00455 MSG: std_msgs/Header\n\ 00456 # Standard metadata for higher-level stamped data types.\n\ 00457 # This is generally used to communicate timestamped data \n\ 00458 # in a particular coordinate frame.\n\ 00459 # \n\ 00460 # sequence ID: consecutively increasing ID \n\ 00461 uint32 seq\n\ 00462 #Two-integer timestamp that is expressed as:\n\ 00463 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00464 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00465 # time-handling sugar is provided by the client library\n\ 00466 time stamp\n\ 00467 #Frame this data is associated with\n\ 00468 # 0: no frame\n\ 00469 # 1: global frame\n\ 00470 string frame_id\n\ 00471 \n\ 00472 ================================================================================\n\ 00473 MSG: geometry_msgs/Pose\n\ 00474 # A representation of pose in free space, composed of postion and orientation. \n\ 00475 Point position\n\ 00476 Quaternion orientation\n\ 00477 \n\ 00478 ================================================================================\n\ 00479 MSG: geometry_msgs/Point\n\ 00480 # This contains the position of a point in free space\n\ 00481 float64 x\n\ 00482 float64 y\n\ 00483 float64 z\n\ 00484 \n\ 00485 ================================================================================\n\ 00486 MSG: geometry_msgs/Quaternion\n\ 00487 # This represents an orientation in free space in quaternion form.\n\ 00488 \n\ 00489 float64 x\n\ 00490 float64 y\n\ 00491 float64 z\n\ 00492 float64 w\n\ 00493 \n\ 00494 ================================================================================\n\ 00495 MSG: geometry_msgs/Vector3\n\ 00496 # This represents a vector in free space. \n\ 00497 \n\ 00498 float64 x\n\ 00499 float64 y\n\ 00500 float64 z\n\ 00501 "; 00502 } 00503 00504 static const char* value(const ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> &) { return value(); } 00505 }; 00506 00507 } // namespace message_traits 00508 } // namespace ros 00509 00510 00511 namespace ros 00512 { 00513 namespace message_traits 00514 { 00515 template<class ContainerAllocator> struct IsMessage< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > : public TrueType {}; 00516 template<class ContainerAllocator> struct IsMessage< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> const> : public TrueType {}; 00517 template<class ContainerAllocator> 00518 struct MD5Sum< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > { 00519 static const char* value() 00520 { 00521 return "8204d8a3e105f84787abc62e550e0312"; 00522 } 00523 00524 static const char* value(const ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> &) { return value(); } 00525 static const uint64_t static_value1 = 0x8204d8a3e105f847ULL; 00526 static const uint64_t static_value2 = 0x87abc62e550e0312ULL; 00527 }; 00528 00529 template<class ContainerAllocator> 00530 struct DataType< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > { 00531 static const char* value() 00532 { 00533 return "pr2_grasp_adjust/GraspAdjustResponse"; 00534 } 00535 00536 static const char* value(const ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> &) { return value(); } 00537 }; 00538 00539 template<class ContainerAllocator> 00540 struct Definition< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > { 00541 static const char* value() 00542 { 00543 return "geometry_msgs/PoseStamped[] grasp_poses\n\ 00544 float64[] pose_scores\n\ 00545 float32[] gripper_openings\n\ 00546 \n\ 00547 object_manipulation_msgs/ManipulationResult result\n\ 00548 \n\ 00549 \n\ 00550 \n\ 00551 ================================================================================\n\ 00552 MSG: geometry_msgs/PoseStamped\n\ 00553 # A Pose with reference coordinate frame and timestamp\n\ 00554 Header header\n\ 00555 Pose pose\n\ 00556 \n\ 00557 ================================================================================\n\ 00558 MSG: std_msgs/Header\n\ 00559 # Standard metadata for higher-level stamped data types.\n\ 00560 # This is generally used to communicate timestamped data \n\ 00561 # in a particular coordinate frame.\n\ 00562 # \n\ 00563 # sequence ID: consecutively increasing ID \n\ 00564 uint32 seq\n\ 00565 #Two-integer timestamp that is expressed as:\n\ 00566 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00567 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00568 # time-handling sugar is provided by the client library\n\ 00569 time stamp\n\ 00570 #Frame this data is associated with\n\ 00571 # 0: no frame\n\ 00572 # 1: global frame\n\ 00573 string frame_id\n\ 00574 \n\ 00575 ================================================================================\n\ 00576 MSG: geometry_msgs/Pose\n\ 00577 # A representation of pose in free space, composed of postion and orientation. \n\ 00578 Point position\n\ 00579 Quaternion orientation\n\ 00580 \n\ 00581 ================================================================================\n\ 00582 MSG: geometry_msgs/Point\n\ 00583 # This contains the position of a point in free space\n\ 00584 float64 x\n\ 00585 float64 y\n\ 00586 float64 z\n\ 00587 \n\ 00588 ================================================================================\n\ 00589 MSG: geometry_msgs/Quaternion\n\ 00590 # This represents an orientation in free space in quaternion form.\n\ 00591 \n\ 00592 float64 x\n\ 00593 float64 y\n\ 00594 float64 z\n\ 00595 float64 w\n\ 00596 \n\ 00597 ================================================================================\n\ 00598 MSG: object_manipulation_msgs/ManipulationResult\n\ 00599 # Result codes for manipulation tasks\n\ 00600 \n\ 00601 # task completed as expected\n\ 00602 # generally means you can proceed as planned\n\ 00603 int32 SUCCESS = 1\n\ 00604 \n\ 00605 # task not possible (e.g. out of reach or obstacles in the way)\n\ 00606 # generally means that the world was not disturbed, so you can try another task\n\ 00607 int32 UNFEASIBLE = -1\n\ 00608 \n\ 00609 # task was thought possible, but failed due to unexpected events during execution\n\ 00610 # it is likely that the world was disturbed, so you are encouraged to refresh\n\ 00611 # your sensed world model before proceeding to another task\n\ 00612 int32 FAILED = -2\n\ 00613 \n\ 00614 # a lower level error prevented task completion (e.g. joint controller not responding)\n\ 00615 # generally requires human attention\n\ 00616 int32 ERROR = -3\n\ 00617 \n\ 00618 # means that at some point during execution we ended up in a state that the collision-aware\n\ 00619 # arm navigation module will not move out of. The world was likely not disturbed, but you \n\ 00620 # probably need a new collision map to move the arm out of the stuck position\n\ 00621 int32 ARM_MOVEMENT_PREVENTED = -4\n\ 00622 \n\ 00623 # specific to grasp actions\n\ 00624 # the object was grasped successfully, but the lift attempt could not achieve the minimum lift distance requested\n\ 00625 # it is likely that the collision environment will see collisions between the hand/object and the support surface\n\ 00626 int32 LIFT_FAILED = -5\n\ 00627 \n\ 00628 # specific to place actions\n\ 00629 # the object was placed successfully, but the retreat attempt could not achieve the minimum retreat distance requested\n\ 00630 # it is likely that the collision environment will see collisions between the hand and the object\n\ 00631 int32 RETREAT_FAILED = -6\n\ 00632 \n\ 00633 # indicates that somewhere along the line a human said \"wait, stop, this is bad, go back and do something else\"\n\ 00634 int32 CANCELLED = -7\n\ 00635 \n\ 00636 # the actual value of this error code\n\ 00637 int32 value\n\ 00638 \n\ 00639 "; 00640 } 00641 00642 static const char* value(const ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> &) { return value(); } 00643 }; 00644 00645 } // namespace message_traits 00646 } // namespace ros 00647 00648 namespace ros 00649 { 00650 namespace serialization 00651 { 00652 00653 template<class ContainerAllocator> struct Serializer< ::pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > 00654 { 00655 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00656 { 00657 stream.next(m.grasp_pose); 00658 stream.next(m.roi_dims); 00659 stream.next(m.search_mode); 00660 } 00661 00662 ROS_DECLARE_ALLINONE_SERIALIZER; 00663 }; // struct GraspAdjustRequest_ 00664 } // namespace serialization 00665 } // namespace ros 00666 00667 00668 namespace ros 00669 { 00670 namespace serialization 00671 { 00672 00673 template<class ContainerAllocator> struct Serializer< ::pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > 00674 { 00675 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00676 { 00677 stream.next(m.grasp_poses); 00678 stream.next(m.pose_scores); 00679 stream.next(m.gripper_openings); 00680 stream.next(m.result); 00681 } 00682 00683 ROS_DECLARE_ALLINONE_SERIALIZER; 00684 }; // struct GraspAdjustResponse_ 00685 } // namespace serialization 00686 } // namespace ros 00687 00688 namespace ros 00689 { 00690 namespace service_traits 00691 { 00692 template<> 00693 struct MD5Sum<pr2_grasp_adjust::GraspAdjust> { 00694 static const char* value() 00695 { 00696 return "155f94ed302ff095096df9b37ecc7886"; 00697 } 00698 00699 static const char* value(const pr2_grasp_adjust::GraspAdjust&) { return value(); } 00700 }; 00701 00702 template<> 00703 struct DataType<pr2_grasp_adjust::GraspAdjust> { 00704 static const char* value() 00705 { 00706 return "pr2_grasp_adjust/GraspAdjust"; 00707 } 00708 00709 static const char* value(const pr2_grasp_adjust::GraspAdjust&) { return value(); } 00710 }; 00711 00712 template<class ContainerAllocator> 00713 struct MD5Sum<pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > { 00714 static const char* value() 00715 { 00716 return "155f94ed302ff095096df9b37ecc7886"; 00717 } 00718 00719 static const char* value(const pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> &) { return value(); } 00720 }; 00721 00722 template<class ContainerAllocator> 00723 struct DataType<pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> > { 00724 static const char* value() 00725 { 00726 return "pr2_grasp_adjust/GraspAdjust"; 00727 } 00728 00729 static const char* value(const pr2_grasp_adjust::GraspAdjustRequest_<ContainerAllocator> &) { return value(); } 00730 }; 00731 00732 template<class ContainerAllocator> 00733 struct MD5Sum<pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > { 00734 static const char* value() 00735 { 00736 return "155f94ed302ff095096df9b37ecc7886"; 00737 } 00738 00739 static const char* value(const pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> &) { return value(); } 00740 }; 00741 00742 template<class ContainerAllocator> 00743 struct DataType<pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> > { 00744 static const char* value() 00745 { 00746 return "pr2_grasp_adjust/GraspAdjust"; 00747 } 00748 00749 static const char* value(const pr2_grasp_adjust::GraspAdjustResponse_<ContainerAllocator> &) { return value(); } 00750 }; 00751 00752 } // namespace service_traits 00753 } // namespace ros 00754 00755 #endif // PR2_GRASP_ADJUST_SERVICE_GRASPADJUST_H 00756