$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-arm_navigation/doc_stacks/2013-03-01_14-05-03.553953/arm_navigation/arm_navigation_msgs/srv/SetPlanningSceneDiff.srv */ 00002 #ifndef ARM_NAVIGATION_MSGS_SERVICE_SETPLANNINGSCENEDIFF_H 00003 #define ARM_NAVIGATION_MSGS_SERVICE_SETPLANNINGSCENEDIFF_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 "arm_navigation_msgs/PlanningScene.h" 00020 #include "arm_navigation_msgs/OrderedCollisionOperations.h" 00021 00022 00023 #include "arm_navigation_msgs/PlanningScene.h" 00024 00025 namespace arm_navigation_msgs 00026 { 00027 template <class ContainerAllocator> 00028 struct SetPlanningSceneDiffRequest_ { 00029 typedef SetPlanningSceneDiffRequest_<ContainerAllocator> Type; 00030 00031 SetPlanningSceneDiffRequest_() 00032 : planning_scene_diff() 00033 , operations() 00034 { 00035 } 00036 00037 SetPlanningSceneDiffRequest_(const ContainerAllocator& _alloc) 00038 : planning_scene_diff(_alloc) 00039 , operations(_alloc) 00040 { 00041 } 00042 00043 typedef ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> _planning_scene_diff_type; 00044 ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> planning_scene_diff; 00045 00046 typedef ::arm_navigation_msgs::OrderedCollisionOperations_<ContainerAllocator> _operations_type; 00047 ::arm_navigation_msgs::OrderedCollisionOperations_<ContainerAllocator> operations; 00048 00049 00050 private: 00051 static const char* __s_getDataType_() { return "arm_navigation_msgs/SetPlanningSceneDiffRequest"; } 00052 public: 00053 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00054 00055 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00056 00057 private: 00058 static const char* __s_getMD5Sum_() { return "67ad55e9bed9c8f21dfb4b9b1ca8df7d"; } 00059 public: 00060 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00061 00062 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00063 00064 private: 00065 static const char* __s_getServerMD5Sum_() { return "0a7b07718e4e5c5d35740c730509a151"; } 00066 public: 00067 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00068 00069 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00070 00071 private: 00072 static const char* __s_getMessageDefinition_() { return "\n\ 00073 \n\ 00074 \n\ 00075 PlanningScene planning_scene_diff\n\ 00076 \n\ 00077 \n\ 00078 arm_navigation_msgs/OrderedCollisionOperations operations\n\ 00079 \n\ 00080 ================================================================================\n\ 00081 MSG: arm_navigation_msgs/PlanningScene\n\ 00082 #full robot state\n\ 00083 arm_navigation_msgs/RobotState robot_state\n\ 00084 \n\ 00085 #additional frames for duplicating tf\n\ 00086 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\ 00087 \n\ 00088 #full allowed collision matrix\n\ 00089 AllowedCollisionMatrix allowed_collision_matrix\n\ 00090 \n\ 00091 #allowed contacts\n\ 00092 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\ 00093 \n\ 00094 #all link paddings\n\ 00095 arm_navigation_msgs/LinkPadding[] link_padding\n\ 00096 \n\ 00097 #collision objects\n\ 00098 arm_navigation_msgs/CollisionObject[] collision_objects\n\ 00099 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\ 00100 \n\ 00101 #the collision map\n\ 00102 arm_navigation_msgs/CollisionMap collision_map\n\ 00103 \n\ 00104 ================================================================================\n\ 00105 MSG: arm_navigation_msgs/RobotState\n\ 00106 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 00107 sensor_msgs/JointState joint_state\n\ 00108 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 00109 \n\ 00110 ================================================================================\n\ 00111 MSG: sensor_msgs/JointState\n\ 00112 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 00113 #\n\ 00114 # The state of each joint (revolute or prismatic) is defined by:\n\ 00115 # * the position of the joint (rad or m),\n\ 00116 # * the velocity of the joint (rad/s or m/s) and \n\ 00117 # * the effort that is applied in the joint (Nm or N).\n\ 00118 #\n\ 00119 # Each joint is uniquely identified by its name\n\ 00120 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 00121 # in one message have to be recorded at the same time.\n\ 00122 #\n\ 00123 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 00124 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 00125 # effort associated with them, you can leave the effort array empty. \n\ 00126 #\n\ 00127 # All arrays in this message should have the same size, or be empty.\n\ 00128 # This is the only way to uniquely associate the joint name with the correct\n\ 00129 # states.\n\ 00130 \n\ 00131 \n\ 00132 Header header\n\ 00133 \n\ 00134 string[] name\n\ 00135 float64[] position\n\ 00136 float64[] velocity\n\ 00137 float64[] effort\n\ 00138 \n\ 00139 ================================================================================\n\ 00140 MSG: std_msgs/Header\n\ 00141 # Standard metadata for higher-level stamped data types.\n\ 00142 # This is generally used to communicate timestamped data \n\ 00143 # in a particular coordinate frame.\n\ 00144 # \n\ 00145 # sequence ID: consecutively increasing ID \n\ 00146 uint32 seq\n\ 00147 #Two-integer timestamp that is expressed as:\n\ 00148 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00149 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00150 # time-handling sugar is provided by the client library\n\ 00151 time stamp\n\ 00152 #Frame this data is associated with\n\ 00153 # 0: no frame\n\ 00154 # 1: global frame\n\ 00155 string frame_id\n\ 00156 \n\ 00157 ================================================================================\n\ 00158 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 00159 #A representation of a multi-dof joint state\n\ 00160 time stamp\n\ 00161 string[] joint_names\n\ 00162 string[] frame_ids\n\ 00163 string[] child_frame_ids\n\ 00164 geometry_msgs/Pose[] poses\n\ 00165 \n\ 00166 ================================================================================\n\ 00167 MSG: geometry_msgs/Pose\n\ 00168 # A representation of pose in free space, composed of postion and orientation. \n\ 00169 Point position\n\ 00170 Quaternion orientation\n\ 00171 \n\ 00172 ================================================================================\n\ 00173 MSG: geometry_msgs/Point\n\ 00174 # This contains the position of a point in free space\n\ 00175 float64 x\n\ 00176 float64 y\n\ 00177 float64 z\n\ 00178 \n\ 00179 ================================================================================\n\ 00180 MSG: geometry_msgs/Quaternion\n\ 00181 # This represents an orientation in free space in quaternion form.\n\ 00182 \n\ 00183 float64 x\n\ 00184 float64 y\n\ 00185 float64 z\n\ 00186 float64 w\n\ 00187 \n\ 00188 ================================================================================\n\ 00189 MSG: geometry_msgs/TransformStamped\n\ 00190 # This expresses a transform from coordinate frame header.frame_id\n\ 00191 # to the coordinate frame child_frame_id\n\ 00192 #\n\ 00193 # This message is mostly used by the \n\ 00194 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\ 00195 # See it's documentation for more information.\n\ 00196 \n\ 00197 Header header\n\ 00198 string child_frame_id # the frame id of the child frame\n\ 00199 Transform transform\n\ 00200 \n\ 00201 ================================================================================\n\ 00202 MSG: geometry_msgs/Transform\n\ 00203 # This represents the transform between two coordinate frames in free space.\n\ 00204 \n\ 00205 Vector3 translation\n\ 00206 Quaternion rotation\n\ 00207 \n\ 00208 ================================================================================\n\ 00209 MSG: geometry_msgs/Vector3\n\ 00210 # This represents a vector in free space. \n\ 00211 \n\ 00212 float64 x\n\ 00213 float64 y\n\ 00214 float64 z\n\ 00215 ================================================================================\n\ 00216 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\ 00217 # the list of link names in the matrix\n\ 00218 string[] link_names\n\ 00219 \n\ 00220 # the individual entries in the allowed collision matrix\n\ 00221 # symmetric, with same order as link_names\n\ 00222 AllowedCollisionEntry[] entries\n\ 00223 \n\ 00224 ================================================================================\n\ 00225 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\ 00226 # whether or not collision checking is enabled\n\ 00227 bool[] enabled\n\ 00228 \n\ 00229 ================================================================================\n\ 00230 MSG: arm_navigation_msgs/AllowedContactSpecification\n\ 00231 # The names of the regions\n\ 00232 string name\n\ 00233 \n\ 00234 # The shape of the region in the environment\n\ 00235 arm_navigation_msgs/Shape shape\n\ 00236 \n\ 00237 # The pose of the space defining the region\n\ 00238 geometry_msgs/PoseStamped pose_stamped\n\ 00239 \n\ 00240 # The set of links that will be allowed to have penetration contact within this region\n\ 00241 string[] link_names\n\ 00242 \n\ 00243 # The maximum penetration depth allowed for every link\n\ 00244 float64 penetration_depth\n\ 00245 \n\ 00246 ================================================================================\n\ 00247 MSG: arm_navigation_msgs/Shape\n\ 00248 byte SPHERE=0\n\ 00249 byte BOX=1\n\ 00250 byte CYLINDER=2\n\ 00251 byte MESH=3\n\ 00252 \n\ 00253 byte type\n\ 00254 \n\ 00255 \n\ 00256 #### define sphere, box, cylinder ####\n\ 00257 # the origin of each shape is considered at the shape's center\n\ 00258 \n\ 00259 # for sphere\n\ 00260 # radius := dimensions[0]\n\ 00261 \n\ 00262 # for cylinder\n\ 00263 # radius := dimensions[0]\n\ 00264 # length := dimensions[1]\n\ 00265 # the length is along the Z axis\n\ 00266 \n\ 00267 # for box\n\ 00268 # size_x := dimensions[0]\n\ 00269 # size_y := dimensions[1]\n\ 00270 # size_z := dimensions[2]\n\ 00271 float64[] dimensions\n\ 00272 \n\ 00273 \n\ 00274 #### define mesh ####\n\ 00275 \n\ 00276 # list of triangles; triangle k is defined by tre vertices located\n\ 00277 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\ 00278 int32[] triangles\n\ 00279 geometry_msgs/Point[] vertices\n\ 00280 \n\ 00281 ================================================================================\n\ 00282 MSG: geometry_msgs/PoseStamped\n\ 00283 # A Pose with reference coordinate frame and timestamp\n\ 00284 Header header\n\ 00285 Pose pose\n\ 00286 \n\ 00287 ================================================================================\n\ 00288 MSG: arm_navigation_msgs/LinkPadding\n\ 00289 #name for the link\n\ 00290 string link_name\n\ 00291 \n\ 00292 # padding to apply to the link\n\ 00293 float64 padding\n\ 00294 \n\ 00295 ================================================================================\n\ 00296 MSG: arm_navigation_msgs/CollisionObject\n\ 00297 # a header, used for interpreting the poses\n\ 00298 Header header\n\ 00299 \n\ 00300 # the id of the object\n\ 00301 string id\n\ 00302 \n\ 00303 # The padding used for filtering points near the object.\n\ 00304 # This does not affect collision checking for the object. \n\ 00305 # Set to negative to get zero padding.\n\ 00306 float32 padding\n\ 00307 \n\ 00308 #This contains what is to be done with the object\n\ 00309 CollisionObjectOperation operation\n\ 00310 \n\ 00311 #the shapes associated with the object\n\ 00312 arm_navigation_msgs/Shape[] shapes\n\ 00313 \n\ 00314 #the poses associated with the shapes - will be transformed using the header\n\ 00315 geometry_msgs/Pose[] poses\n\ 00316 \n\ 00317 ================================================================================\n\ 00318 MSG: arm_navigation_msgs/CollisionObjectOperation\n\ 00319 #Puts the object into the environment\n\ 00320 #or updates the object if already added\n\ 00321 byte ADD=0\n\ 00322 \n\ 00323 #Removes the object from the environment entirely\n\ 00324 byte REMOVE=1\n\ 00325 \n\ 00326 #Only valid within the context of a CollisionAttachedObject message\n\ 00327 #Will be ignored if sent with an CollisionObject message\n\ 00328 #Takes an attached object, detaches from the attached link\n\ 00329 #But adds back in as regular object\n\ 00330 byte DETACH_AND_ADD_AS_OBJECT=2\n\ 00331 \n\ 00332 #Only valid within the context of a CollisionAttachedObject message\n\ 00333 #Will be ignored if sent with an CollisionObject message\n\ 00334 #Takes current object in the environment and removes it as\n\ 00335 #a regular object\n\ 00336 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\ 00337 \n\ 00338 # Byte code for operation\n\ 00339 byte operation\n\ 00340 \n\ 00341 ================================================================================\n\ 00342 MSG: arm_navigation_msgs/AttachedCollisionObject\n\ 00343 # The CollisionObject will be attached with a fixed joint to this link\n\ 00344 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\ 00345 # is set to REMOVE will remove all attached bodies attached to any object\n\ 00346 string link_name\n\ 00347 \n\ 00348 #Reserved for indicating that all attached objects should be removed\n\ 00349 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\ 00350 \n\ 00351 #This contains the actual shapes and poses for the CollisionObject\n\ 00352 #to be attached to the link\n\ 00353 #If action is remove and no object.id is set, all objects\n\ 00354 #attached to the link indicated by link_name will be removed\n\ 00355 CollisionObject object\n\ 00356 \n\ 00357 # The set of links that the attached objects are allowed to touch\n\ 00358 # by default - the link_name is included by default\n\ 00359 string[] touch_links\n\ 00360 \n\ 00361 ================================================================================\n\ 00362 MSG: arm_navigation_msgs/CollisionMap\n\ 00363 #header for interpreting box positions\n\ 00364 Header header\n\ 00365 \n\ 00366 #boxes for use in collision testing\n\ 00367 OrientedBoundingBox[] boxes\n\ 00368 \n\ 00369 ================================================================================\n\ 00370 MSG: arm_navigation_msgs/OrientedBoundingBox\n\ 00371 #the center of the box\n\ 00372 geometry_msgs/Point32 center\n\ 00373 \n\ 00374 #the extents of the box, assuming the center is at the point\n\ 00375 geometry_msgs/Point32 extents\n\ 00376 \n\ 00377 #the axis of the box\n\ 00378 geometry_msgs/Point32 axis\n\ 00379 \n\ 00380 #the angle of rotation around the axis\n\ 00381 float32 angle\n\ 00382 \n\ 00383 ================================================================================\n\ 00384 MSG: geometry_msgs/Point32\n\ 00385 # This contains the position of a point in free space(with 32 bits of precision).\n\ 00386 # It is recommeded to use Point wherever possible instead of Point32. \n\ 00387 # \n\ 00388 # This recommendation is to promote interoperability. \n\ 00389 #\n\ 00390 # This message is designed to take up less space when sending\n\ 00391 # lots of points at once, as in the case of a PointCloud. \n\ 00392 \n\ 00393 float32 x\n\ 00394 float32 y\n\ 00395 float32 z\n\ 00396 ================================================================================\n\ 00397 MSG: arm_navigation_msgs/OrderedCollisionOperations\n\ 00398 # A set of collision operations that will be performed in the order they are specified\n\ 00399 CollisionOperation[] collision_operations\n\ 00400 ================================================================================\n\ 00401 MSG: arm_navigation_msgs/CollisionOperation\n\ 00402 # A definition of a collision operation\n\ 00403 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\ 00404 # between the gripper and all objects in the collision space\n\ 00405 \n\ 00406 string object1\n\ 00407 string object2\n\ 00408 string COLLISION_SET_ALL=\"all\"\n\ 00409 string COLLISION_SET_OBJECTS=\"objects\"\n\ 00410 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\ 00411 \n\ 00412 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\ 00413 float64 penetration_distance\n\ 00414 \n\ 00415 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\ 00416 int32 operation\n\ 00417 int32 DISABLE=0\n\ 00418 int32 ENABLE=1\n\ 00419 \n\ 00420 "; } 00421 public: 00422 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00423 00424 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00425 00426 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00427 { 00428 ros::serialization::OStream stream(write_ptr, 1000000000); 00429 ros::serialization::serialize(stream, planning_scene_diff); 00430 ros::serialization::serialize(stream, operations); 00431 return stream.getData(); 00432 } 00433 00434 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00435 { 00436 ros::serialization::IStream stream(read_ptr, 1000000000); 00437 ros::serialization::deserialize(stream, planning_scene_diff); 00438 ros::serialization::deserialize(stream, operations); 00439 return stream.getData(); 00440 } 00441 00442 ROS_DEPRECATED virtual uint32_t serializationLength() const 00443 { 00444 uint32_t size = 0; 00445 size += ros::serialization::serializationLength(planning_scene_diff); 00446 size += ros::serialization::serializationLength(operations); 00447 return size; 00448 } 00449 00450 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > Ptr; 00451 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> const> ConstPtr; 00452 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00453 }; // struct SetPlanningSceneDiffRequest 00454 typedef ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<std::allocator<void> > SetPlanningSceneDiffRequest; 00455 00456 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffRequest> SetPlanningSceneDiffRequestPtr; 00457 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffRequest const> SetPlanningSceneDiffRequestConstPtr; 00458 00459 00460 template <class ContainerAllocator> 00461 struct SetPlanningSceneDiffResponse_ { 00462 typedef SetPlanningSceneDiffResponse_<ContainerAllocator> Type; 00463 00464 SetPlanningSceneDiffResponse_() 00465 : planning_scene() 00466 { 00467 } 00468 00469 SetPlanningSceneDiffResponse_(const ContainerAllocator& _alloc) 00470 : planning_scene(_alloc) 00471 { 00472 } 00473 00474 typedef ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> _planning_scene_type; 00475 ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> planning_scene; 00476 00477 00478 private: 00479 static const char* __s_getDataType_() { return "arm_navigation_msgs/SetPlanningSceneDiffResponse"; } 00480 public: 00481 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00482 00483 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00484 00485 private: 00486 static const char* __s_getMD5Sum_() { return "285525c9abe002fbafa99af84a14b4cb"; } 00487 public: 00488 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00489 00490 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00491 00492 private: 00493 static const char* __s_getServerMD5Sum_() { return "0a7b07718e4e5c5d35740c730509a151"; } 00494 public: 00495 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); } 00496 00497 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); } 00498 00499 private: 00500 static const char* __s_getMessageDefinition_() { return "\n\ 00501 \n\ 00502 PlanningScene planning_scene\n\ 00503 \n\ 00504 \n\ 00505 \n\ 00506 \n\ 00507 \n\ 00508 ================================================================================\n\ 00509 MSG: arm_navigation_msgs/PlanningScene\n\ 00510 #full robot state\n\ 00511 arm_navigation_msgs/RobotState robot_state\n\ 00512 \n\ 00513 #additional frames for duplicating tf\n\ 00514 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\ 00515 \n\ 00516 #full allowed collision matrix\n\ 00517 AllowedCollisionMatrix allowed_collision_matrix\n\ 00518 \n\ 00519 #allowed contacts\n\ 00520 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\ 00521 \n\ 00522 #all link paddings\n\ 00523 arm_navigation_msgs/LinkPadding[] link_padding\n\ 00524 \n\ 00525 #collision objects\n\ 00526 arm_navigation_msgs/CollisionObject[] collision_objects\n\ 00527 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\ 00528 \n\ 00529 #the collision map\n\ 00530 arm_navigation_msgs/CollisionMap collision_map\n\ 00531 \n\ 00532 ================================================================================\n\ 00533 MSG: arm_navigation_msgs/RobotState\n\ 00534 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 00535 sensor_msgs/JointState joint_state\n\ 00536 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 00537 \n\ 00538 ================================================================================\n\ 00539 MSG: sensor_msgs/JointState\n\ 00540 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 00541 #\n\ 00542 # The state of each joint (revolute or prismatic) is defined by:\n\ 00543 # * the position of the joint (rad or m),\n\ 00544 # * the velocity of the joint (rad/s or m/s) and \n\ 00545 # * the effort that is applied in the joint (Nm or N).\n\ 00546 #\n\ 00547 # Each joint is uniquely identified by its name\n\ 00548 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 00549 # in one message have to be recorded at the same time.\n\ 00550 #\n\ 00551 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 00552 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 00553 # effort associated with them, you can leave the effort array empty. \n\ 00554 #\n\ 00555 # All arrays in this message should have the same size, or be empty.\n\ 00556 # This is the only way to uniquely associate the joint name with the correct\n\ 00557 # states.\n\ 00558 \n\ 00559 \n\ 00560 Header header\n\ 00561 \n\ 00562 string[] name\n\ 00563 float64[] position\n\ 00564 float64[] velocity\n\ 00565 float64[] effort\n\ 00566 \n\ 00567 ================================================================================\n\ 00568 MSG: std_msgs/Header\n\ 00569 # Standard metadata for higher-level stamped data types.\n\ 00570 # This is generally used to communicate timestamped data \n\ 00571 # in a particular coordinate frame.\n\ 00572 # \n\ 00573 # sequence ID: consecutively increasing ID \n\ 00574 uint32 seq\n\ 00575 #Two-integer timestamp that is expressed as:\n\ 00576 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00577 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00578 # time-handling sugar is provided by the client library\n\ 00579 time stamp\n\ 00580 #Frame this data is associated with\n\ 00581 # 0: no frame\n\ 00582 # 1: global frame\n\ 00583 string frame_id\n\ 00584 \n\ 00585 ================================================================================\n\ 00586 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 00587 #A representation of a multi-dof joint state\n\ 00588 time stamp\n\ 00589 string[] joint_names\n\ 00590 string[] frame_ids\n\ 00591 string[] child_frame_ids\n\ 00592 geometry_msgs/Pose[] poses\n\ 00593 \n\ 00594 ================================================================================\n\ 00595 MSG: geometry_msgs/Pose\n\ 00596 # A representation of pose in free space, composed of postion and orientation. \n\ 00597 Point position\n\ 00598 Quaternion orientation\n\ 00599 \n\ 00600 ================================================================================\n\ 00601 MSG: geometry_msgs/Point\n\ 00602 # This contains the position of a point in free space\n\ 00603 float64 x\n\ 00604 float64 y\n\ 00605 float64 z\n\ 00606 \n\ 00607 ================================================================================\n\ 00608 MSG: geometry_msgs/Quaternion\n\ 00609 # This represents an orientation in free space in quaternion form.\n\ 00610 \n\ 00611 float64 x\n\ 00612 float64 y\n\ 00613 float64 z\n\ 00614 float64 w\n\ 00615 \n\ 00616 ================================================================================\n\ 00617 MSG: geometry_msgs/TransformStamped\n\ 00618 # This expresses a transform from coordinate frame header.frame_id\n\ 00619 # to the coordinate frame child_frame_id\n\ 00620 #\n\ 00621 # This message is mostly used by the \n\ 00622 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\ 00623 # See it's documentation for more information.\n\ 00624 \n\ 00625 Header header\n\ 00626 string child_frame_id # the frame id of the child frame\n\ 00627 Transform transform\n\ 00628 \n\ 00629 ================================================================================\n\ 00630 MSG: geometry_msgs/Transform\n\ 00631 # This represents the transform between two coordinate frames in free space.\n\ 00632 \n\ 00633 Vector3 translation\n\ 00634 Quaternion rotation\n\ 00635 \n\ 00636 ================================================================================\n\ 00637 MSG: geometry_msgs/Vector3\n\ 00638 # This represents a vector in free space. \n\ 00639 \n\ 00640 float64 x\n\ 00641 float64 y\n\ 00642 float64 z\n\ 00643 ================================================================================\n\ 00644 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\ 00645 # the list of link names in the matrix\n\ 00646 string[] link_names\n\ 00647 \n\ 00648 # the individual entries in the allowed collision matrix\n\ 00649 # symmetric, with same order as link_names\n\ 00650 AllowedCollisionEntry[] entries\n\ 00651 \n\ 00652 ================================================================================\n\ 00653 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\ 00654 # whether or not collision checking is enabled\n\ 00655 bool[] enabled\n\ 00656 \n\ 00657 ================================================================================\n\ 00658 MSG: arm_navigation_msgs/AllowedContactSpecification\n\ 00659 # The names of the regions\n\ 00660 string name\n\ 00661 \n\ 00662 # The shape of the region in the environment\n\ 00663 arm_navigation_msgs/Shape shape\n\ 00664 \n\ 00665 # The pose of the space defining the region\n\ 00666 geometry_msgs/PoseStamped pose_stamped\n\ 00667 \n\ 00668 # The set of links that will be allowed to have penetration contact within this region\n\ 00669 string[] link_names\n\ 00670 \n\ 00671 # The maximum penetration depth allowed for every link\n\ 00672 float64 penetration_depth\n\ 00673 \n\ 00674 ================================================================================\n\ 00675 MSG: arm_navigation_msgs/Shape\n\ 00676 byte SPHERE=0\n\ 00677 byte BOX=1\n\ 00678 byte CYLINDER=2\n\ 00679 byte MESH=3\n\ 00680 \n\ 00681 byte type\n\ 00682 \n\ 00683 \n\ 00684 #### define sphere, box, cylinder ####\n\ 00685 # the origin of each shape is considered at the shape's center\n\ 00686 \n\ 00687 # for sphere\n\ 00688 # radius := dimensions[0]\n\ 00689 \n\ 00690 # for cylinder\n\ 00691 # radius := dimensions[0]\n\ 00692 # length := dimensions[1]\n\ 00693 # the length is along the Z axis\n\ 00694 \n\ 00695 # for box\n\ 00696 # size_x := dimensions[0]\n\ 00697 # size_y := dimensions[1]\n\ 00698 # size_z := dimensions[2]\n\ 00699 float64[] dimensions\n\ 00700 \n\ 00701 \n\ 00702 #### define mesh ####\n\ 00703 \n\ 00704 # list of triangles; triangle k is defined by tre vertices located\n\ 00705 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\ 00706 int32[] triangles\n\ 00707 geometry_msgs/Point[] vertices\n\ 00708 \n\ 00709 ================================================================================\n\ 00710 MSG: geometry_msgs/PoseStamped\n\ 00711 # A Pose with reference coordinate frame and timestamp\n\ 00712 Header header\n\ 00713 Pose pose\n\ 00714 \n\ 00715 ================================================================================\n\ 00716 MSG: arm_navigation_msgs/LinkPadding\n\ 00717 #name for the link\n\ 00718 string link_name\n\ 00719 \n\ 00720 # padding to apply to the link\n\ 00721 float64 padding\n\ 00722 \n\ 00723 ================================================================================\n\ 00724 MSG: arm_navigation_msgs/CollisionObject\n\ 00725 # a header, used for interpreting the poses\n\ 00726 Header header\n\ 00727 \n\ 00728 # the id of the object\n\ 00729 string id\n\ 00730 \n\ 00731 # The padding used for filtering points near the object.\n\ 00732 # This does not affect collision checking for the object. \n\ 00733 # Set to negative to get zero padding.\n\ 00734 float32 padding\n\ 00735 \n\ 00736 #This contains what is to be done with the object\n\ 00737 CollisionObjectOperation operation\n\ 00738 \n\ 00739 #the shapes associated with the object\n\ 00740 arm_navigation_msgs/Shape[] shapes\n\ 00741 \n\ 00742 #the poses associated with the shapes - will be transformed using the header\n\ 00743 geometry_msgs/Pose[] poses\n\ 00744 \n\ 00745 ================================================================================\n\ 00746 MSG: arm_navigation_msgs/CollisionObjectOperation\n\ 00747 #Puts the object into the environment\n\ 00748 #or updates the object if already added\n\ 00749 byte ADD=0\n\ 00750 \n\ 00751 #Removes the object from the environment entirely\n\ 00752 byte REMOVE=1\n\ 00753 \n\ 00754 #Only valid within the context of a CollisionAttachedObject message\n\ 00755 #Will be ignored if sent with an CollisionObject message\n\ 00756 #Takes an attached object, detaches from the attached link\n\ 00757 #But adds back in as regular object\n\ 00758 byte DETACH_AND_ADD_AS_OBJECT=2\n\ 00759 \n\ 00760 #Only valid within the context of a CollisionAttachedObject message\n\ 00761 #Will be ignored if sent with an CollisionObject message\n\ 00762 #Takes current object in the environment and removes it as\n\ 00763 #a regular object\n\ 00764 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\ 00765 \n\ 00766 # Byte code for operation\n\ 00767 byte operation\n\ 00768 \n\ 00769 ================================================================================\n\ 00770 MSG: arm_navigation_msgs/AttachedCollisionObject\n\ 00771 # The CollisionObject will be attached with a fixed joint to this link\n\ 00772 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\ 00773 # is set to REMOVE will remove all attached bodies attached to any object\n\ 00774 string link_name\n\ 00775 \n\ 00776 #Reserved for indicating that all attached objects should be removed\n\ 00777 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\ 00778 \n\ 00779 #This contains the actual shapes and poses for the CollisionObject\n\ 00780 #to be attached to the link\n\ 00781 #If action is remove and no object.id is set, all objects\n\ 00782 #attached to the link indicated by link_name will be removed\n\ 00783 CollisionObject object\n\ 00784 \n\ 00785 # The set of links that the attached objects are allowed to touch\n\ 00786 # by default - the link_name is included by default\n\ 00787 string[] touch_links\n\ 00788 \n\ 00789 ================================================================================\n\ 00790 MSG: arm_navigation_msgs/CollisionMap\n\ 00791 #header for interpreting box positions\n\ 00792 Header header\n\ 00793 \n\ 00794 #boxes for use in collision testing\n\ 00795 OrientedBoundingBox[] boxes\n\ 00796 \n\ 00797 ================================================================================\n\ 00798 MSG: arm_navigation_msgs/OrientedBoundingBox\n\ 00799 #the center of the box\n\ 00800 geometry_msgs/Point32 center\n\ 00801 \n\ 00802 #the extents of the box, assuming the center is at the point\n\ 00803 geometry_msgs/Point32 extents\n\ 00804 \n\ 00805 #the axis of the box\n\ 00806 geometry_msgs/Point32 axis\n\ 00807 \n\ 00808 #the angle of rotation around the axis\n\ 00809 float32 angle\n\ 00810 \n\ 00811 ================================================================================\n\ 00812 MSG: geometry_msgs/Point32\n\ 00813 # This contains the position of a point in free space(with 32 bits of precision).\n\ 00814 # It is recommeded to use Point wherever possible instead of Point32. \n\ 00815 # \n\ 00816 # This recommendation is to promote interoperability. \n\ 00817 #\n\ 00818 # This message is designed to take up less space when sending\n\ 00819 # lots of points at once, as in the case of a PointCloud. \n\ 00820 \n\ 00821 float32 x\n\ 00822 float32 y\n\ 00823 float32 z\n\ 00824 "; } 00825 public: 00826 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00827 00828 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00829 00830 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00831 { 00832 ros::serialization::OStream stream(write_ptr, 1000000000); 00833 ros::serialization::serialize(stream, planning_scene); 00834 return stream.getData(); 00835 } 00836 00837 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00838 { 00839 ros::serialization::IStream stream(read_ptr, 1000000000); 00840 ros::serialization::deserialize(stream, planning_scene); 00841 return stream.getData(); 00842 } 00843 00844 ROS_DEPRECATED virtual uint32_t serializationLength() const 00845 { 00846 uint32_t size = 0; 00847 size += ros::serialization::serializationLength(planning_scene); 00848 return size; 00849 } 00850 00851 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > Ptr; 00852 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> const> ConstPtr; 00853 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00854 }; // struct SetPlanningSceneDiffResponse 00855 typedef ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<std::allocator<void> > SetPlanningSceneDiffResponse; 00856 00857 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffResponse> SetPlanningSceneDiffResponsePtr; 00858 typedef boost::shared_ptr< ::arm_navigation_msgs::SetPlanningSceneDiffResponse const> SetPlanningSceneDiffResponseConstPtr; 00859 00860 struct SetPlanningSceneDiff 00861 { 00862 00863 typedef SetPlanningSceneDiffRequest Request; 00864 typedef SetPlanningSceneDiffResponse Response; 00865 Request request; 00866 Response response; 00867 00868 typedef Request RequestType; 00869 typedef Response ResponseType; 00870 }; // struct SetPlanningSceneDiff 00871 } // namespace arm_navigation_msgs 00872 00873 namespace ros 00874 { 00875 namespace message_traits 00876 { 00877 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > : public TrueType {}; 00878 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> const> : public TrueType {}; 00879 template<class ContainerAllocator> 00880 struct MD5Sum< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > { 00881 static const char* value() 00882 { 00883 return "67ad55e9bed9c8f21dfb4b9b1ca8df7d"; 00884 } 00885 00886 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> &) { return value(); } 00887 static const uint64_t static_value1 = 0x67ad55e9bed9c8f2ULL; 00888 static const uint64_t static_value2 = 0x1dfb4b9b1ca8df7dULL; 00889 }; 00890 00891 template<class ContainerAllocator> 00892 struct DataType< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > { 00893 static const char* value() 00894 { 00895 return "arm_navigation_msgs/SetPlanningSceneDiffRequest"; 00896 } 00897 00898 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> &) { return value(); } 00899 }; 00900 00901 template<class ContainerAllocator> 00902 struct Definition< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > { 00903 static const char* value() 00904 { 00905 return "\n\ 00906 \n\ 00907 \n\ 00908 PlanningScene planning_scene_diff\n\ 00909 \n\ 00910 \n\ 00911 arm_navigation_msgs/OrderedCollisionOperations operations\n\ 00912 \n\ 00913 ================================================================================\n\ 00914 MSG: arm_navigation_msgs/PlanningScene\n\ 00915 #full robot state\n\ 00916 arm_navigation_msgs/RobotState robot_state\n\ 00917 \n\ 00918 #additional frames for duplicating tf\n\ 00919 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\ 00920 \n\ 00921 #full allowed collision matrix\n\ 00922 AllowedCollisionMatrix allowed_collision_matrix\n\ 00923 \n\ 00924 #allowed contacts\n\ 00925 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\ 00926 \n\ 00927 #all link paddings\n\ 00928 arm_navigation_msgs/LinkPadding[] link_padding\n\ 00929 \n\ 00930 #collision objects\n\ 00931 arm_navigation_msgs/CollisionObject[] collision_objects\n\ 00932 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\ 00933 \n\ 00934 #the collision map\n\ 00935 arm_navigation_msgs/CollisionMap collision_map\n\ 00936 \n\ 00937 ================================================================================\n\ 00938 MSG: arm_navigation_msgs/RobotState\n\ 00939 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 00940 sensor_msgs/JointState joint_state\n\ 00941 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 00942 \n\ 00943 ================================================================================\n\ 00944 MSG: sensor_msgs/JointState\n\ 00945 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 00946 #\n\ 00947 # The state of each joint (revolute or prismatic) is defined by:\n\ 00948 # * the position of the joint (rad or m),\n\ 00949 # * the velocity of the joint (rad/s or m/s) and \n\ 00950 # * the effort that is applied in the joint (Nm or N).\n\ 00951 #\n\ 00952 # Each joint is uniquely identified by its name\n\ 00953 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 00954 # in one message have to be recorded at the same time.\n\ 00955 #\n\ 00956 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 00957 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 00958 # effort associated with them, you can leave the effort array empty. \n\ 00959 #\n\ 00960 # All arrays in this message should have the same size, or be empty.\n\ 00961 # This is the only way to uniquely associate the joint name with the correct\n\ 00962 # states.\n\ 00963 \n\ 00964 \n\ 00965 Header header\n\ 00966 \n\ 00967 string[] name\n\ 00968 float64[] position\n\ 00969 float64[] velocity\n\ 00970 float64[] effort\n\ 00971 \n\ 00972 ================================================================================\n\ 00973 MSG: std_msgs/Header\n\ 00974 # Standard metadata for higher-level stamped data types.\n\ 00975 # This is generally used to communicate timestamped data \n\ 00976 # in a particular coordinate frame.\n\ 00977 # \n\ 00978 # sequence ID: consecutively increasing ID \n\ 00979 uint32 seq\n\ 00980 #Two-integer timestamp that is expressed as:\n\ 00981 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00982 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00983 # time-handling sugar is provided by the client library\n\ 00984 time stamp\n\ 00985 #Frame this data is associated with\n\ 00986 # 0: no frame\n\ 00987 # 1: global frame\n\ 00988 string frame_id\n\ 00989 \n\ 00990 ================================================================================\n\ 00991 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 00992 #A representation of a multi-dof joint state\n\ 00993 time stamp\n\ 00994 string[] joint_names\n\ 00995 string[] frame_ids\n\ 00996 string[] child_frame_ids\n\ 00997 geometry_msgs/Pose[] poses\n\ 00998 \n\ 00999 ================================================================================\n\ 01000 MSG: geometry_msgs/Pose\n\ 01001 # A representation of pose in free space, composed of postion and orientation. \n\ 01002 Point position\n\ 01003 Quaternion orientation\n\ 01004 \n\ 01005 ================================================================================\n\ 01006 MSG: geometry_msgs/Point\n\ 01007 # This contains the position of a point in free space\n\ 01008 float64 x\n\ 01009 float64 y\n\ 01010 float64 z\n\ 01011 \n\ 01012 ================================================================================\n\ 01013 MSG: geometry_msgs/Quaternion\n\ 01014 # This represents an orientation in free space in quaternion form.\n\ 01015 \n\ 01016 float64 x\n\ 01017 float64 y\n\ 01018 float64 z\n\ 01019 float64 w\n\ 01020 \n\ 01021 ================================================================================\n\ 01022 MSG: geometry_msgs/TransformStamped\n\ 01023 # This expresses a transform from coordinate frame header.frame_id\n\ 01024 # to the coordinate frame child_frame_id\n\ 01025 #\n\ 01026 # This message is mostly used by the \n\ 01027 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\ 01028 # See it's documentation for more information.\n\ 01029 \n\ 01030 Header header\n\ 01031 string child_frame_id # the frame id of the child frame\n\ 01032 Transform transform\n\ 01033 \n\ 01034 ================================================================================\n\ 01035 MSG: geometry_msgs/Transform\n\ 01036 # This represents the transform between two coordinate frames in free space.\n\ 01037 \n\ 01038 Vector3 translation\n\ 01039 Quaternion rotation\n\ 01040 \n\ 01041 ================================================================================\n\ 01042 MSG: geometry_msgs/Vector3\n\ 01043 # This represents a vector in free space. \n\ 01044 \n\ 01045 float64 x\n\ 01046 float64 y\n\ 01047 float64 z\n\ 01048 ================================================================================\n\ 01049 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\ 01050 # the list of link names in the matrix\n\ 01051 string[] link_names\n\ 01052 \n\ 01053 # the individual entries in the allowed collision matrix\n\ 01054 # symmetric, with same order as link_names\n\ 01055 AllowedCollisionEntry[] entries\n\ 01056 \n\ 01057 ================================================================================\n\ 01058 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\ 01059 # whether or not collision checking is enabled\n\ 01060 bool[] enabled\n\ 01061 \n\ 01062 ================================================================================\n\ 01063 MSG: arm_navigation_msgs/AllowedContactSpecification\n\ 01064 # The names of the regions\n\ 01065 string name\n\ 01066 \n\ 01067 # The shape of the region in the environment\n\ 01068 arm_navigation_msgs/Shape shape\n\ 01069 \n\ 01070 # The pose of the space defining the region\n\ 01071 geometry_msgs/PoseStamped pose_stamped\n\ 01072 \n\ 01073 # The set of links that will be allowed to have penetration contact within this region\n\ 01074 string[] link_names\n\ 01075 \n\ 01076 # The maximum penetration depth allowed for every link\n\ 01077 float64 penetration_depth\n\ 01078 \n\ 01079 ================================================================================\n\ 01080 MSG: arm_navigation_msgs/Shape\n\ 01081 byte SPHERE=0\n\ 01082 byte BOX=1\n\ 01083 byte CYLINDER=2\n\ 01084 byte MESH=3\n\ 01085 \n\ 01086 byte type\n\ 01087 \n\ 01088 \n\ 01089 #### define sphere, box, cylinder ####\n\ 01090 # the origin of each shape is considered at the shape's center\n\ 01091 \n\ 01092 # for sphere\n\ 01093 # radius := dimensions[0]\n\ 01094 \n\ 01095 # for cylinder\n\ 01096 # radius := dimensions[0]\n\ 01097 # length := dimensions[1]\n\ 01098 # the length is along the Z axis\n\ 01099 \n\ 01100 # for box\n\ 01101 # size_x := dimensions[0]\n\ 01102 # size_y := dimensions[1]\n\ 01103 # size_z := dimensions[2]\n\ 01104 float64[] dimensions\n\ 01105 \n\ 01106 \n\ 01107 #### define mesh ####\n\ 01108 \n\ 01109 # list of triangles; triangle k is defined by tre vertices located\n\ 01110 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\ 01111 int32[] triangles\n\ 01112 geometry_msgs/Point[] vertices\n\ 01113 \n\ 01114 ================================================================================\n\ 01115 MSG: geometry_msgs/PoseStamped\n\ 01116 # A Pose with reference coordinate frame and timestamp\n\ 01117 Header header\n\ 01118 Pose pose\n\ 01119 \n\ 01120 ================================================================================\n\ 01121 MSG: arm_navigation_msgs/LinkPadding\n\ 01122 #name for the link\n\ 01123 string link_name\n\ 01124 \n\ 01125 # padding to apply to the link\n\ 01126 float64 padding\n\ 01127 \n\ 01128 ================================================================================\n\ 01129 MSG: arm_navigation_msgs/CollisionObject\n\ 01130 # a header, used for interpreting the poses\n\ 01131 Header header\n\ 01132 \n\ 01133 # the id of the object\n\ 01134 string id\n\ 01135 \n\ 01136 # The padding used for filtering points near the object.\n\ 01137 # This does not affect collision checking for the object. \n\ 01138 # Set to negative to get zero padding.\n\ 01139 float32 padding\n\ 01140 \n\ 01141 #This contains what is to be done with the object\n\ 01142 CollisionObjectOperation operation\n\ 01143 \n\ 01144 #the shapes associated with the object\n\ 01145 arm_navigation_msgs/Shape[] shapes\n\ 01146 \n\ 01147 #the poses associated with the shapes - will be transformed using the header\n\ 01148 geometry_msgs/Pose[] poses\n\ 01149 \n\ 01150 ================================================================================\n\ 01151 MSG: arm_navigation_msgs/CollisionObjectOperation\n\ 01152 #Puts the object into the environment\n\ 01153 #or updates the object if already added\n\ 01154 byte ADD=0\n\ 01155 \n\ 01156 #Removes the object from the environment entirely\n\ 01157 byte REMOVE=1\n\ 01158 \n\ 01159 #Only valid within the context of a CollisionAttachedObject message\n\ 01160 #Will be ignored if sent with an CollisionObject message\n\ 01161 #Takes an attached object, detaches from the attached link\n\ 01162 #But adds back in as regular object\n\ 01163 byte DETACH_AND_ADD_AS_OBJECT=2\n\ 01164 \n\ 01165 #Only valid within the context of a CollisionAttachedObject message\n\ 01166 #Will be ignored if sent with an CollisionObject message\n\ 01167 #Takes current object in the environment and removes it as\n\ 01168 #a regular object\n\ 01169 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\ 01170 \n\ 01171 # Byte code for operation\n\ 01172 byte operation\n\ 01173 \n\ 01174 ================================================================================\n\ 01175 MSG: arm_navigation_msgs/AttachedCollisionObject\n\ 01176 # The CollisionObject will be attached with a fixed joint to this link\n\ 01177 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\ 01178 # is set to REMOVE will remove all attached bodies attached to any object\n\ 01179 string link_name\n\ 01180 \n\ 01181 #Reserved for indicating that all attached objects should be removed\n\ 01182 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\ 01183 \n\ 01184 #This contains the actual shapes and poses for the CollisionObject\n\ 01185 #to be attached to the link\n\ 01186 #If action is remove and no object.id is set, all objects\n\ 01187 #attached to the link indicated by link_name will be removed\n\ 01188 CollisionObject object\n\ 01189 \n\ 01190 # The set of links that the attached objects are allowed to touch\n\ 01191 # by default - the link_name is included by default\n\ 01192 string[] touch_links\n\ 01193 \n\ 01194 ================================================================================\n\ 01195 MSG: arm_navigation_msgs/CollisionMap\n\ 01196 #header for interpreting box positions\n\ 01197 Header header\n\ 01198 \n\ 01199 #boxes for use in collision testing\n\ 01200 OrientedBoundingBox[] boxes\n\ 01201 \n\ 01202 ================================================================================\n\ 01203 MSG: arm_navigation_msgs/OrientedBoundingBox\n\ 01204 #the center of the box\n\ 01205 geometry_msgs/Point32 center\n\ 01206 \n\ 01207 #the extents of the box, assuming the center is at the point\n\ 01208 geometry_msgs/Point32 extents\n\ 01209 \n\ 01210 #the axis of the box\n\ 01211 geometry_msgs/Point32 axis\n\ 01212 \n\ 01213 #the angle of rotation around the axis\n\ 01214 float32 angle\n\ 01215 \n\ 01216 ================================================================================\n\ 01217 MSG: geometry_msgs/Point32\n\ 01218 # This contains the position of a point in free space(with 32 bits of precision).\n\ 01219 # It is recommeded to use Point wherever possible instead of Point32. \n\ 01220 # \n\ 01221 # This recommendation is to promote interoperability. \n\ 01222 #\n\ 01223 # This message is designed to take up less space when sending\n\ 01224 # lots of points at once, as in the case of a PointCloud. \n\ 01225 \n\ 01226 float32 x\n\ 01227 float32 y\n\ 01228 float32 z\n\ 01229 ================================================================================\n\ 01230 MSG: arm_navigation_msgs/OrderedCollisionOperations\n\ 01231 # A set of collision operations that will be performed in the order they are specified\n\ 01232 CollisionOperation[] collision_operations\n\ 01233 ================================================================================\n\ 01234 MSG: arm_navigation_msgs/CollisionOperation\n\ 01235 # A definition of a collision operation\n\ 01236 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\ 01237 # between the gripper and all objects in the collision space\n\ 01238 \n\ 01239 string object1\n\ 01240 string object2\n\ 01241 string COLLISION_SET_ALL=\"all\"\n\ 01242 string COLLISION_SET_OBJECTS=\"objects\"\n\ 01243 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\ 01244 \n\ 01245 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\ 01246 float64 penetration_distance\n\ 01247 \n\ 01248 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\ 01249 int32 operation\n\ 01250 int32 DISABLE=0\n\ 01251 int32 ENABLE=1\n\ 01252 \n\ 01253 "; 01254 } 01255 01256 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> &) { return value(); } 01257 }; 01258 01259 } // namespace message_traits 01260 } // namespace ros 01261 01262 01263 namespace ros 01264 { 01265 namespace message_traits 01266 { 01267 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > : public TrueType {}; 01268 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> const> : public TrueType {}; 01269 template<class ContainerAllocator> 01270 struct MD5Sum< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > { 01271 static const char* value() 01272 { 01273 return "285525c9abe002fbafa99af84a14b4cb"; 01274 } 01275 01276 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> &) { return value(); } 01277 static const uint64_t static_value1 = 0x285525c9abe002fbULL; 01278 static const uint64_t static_value2 = 0xafa99af84a14b4cbULL; 01279 }; 01280 01281 template<class ContainerAllocator> 01282 struct DataType< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > { 01283 static const char* value() 01284 { 01285 return "arm_navigation_msgs/SetPlanningSceneDiffResponse"; 01286 } 01287 01288 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> &) { return value(); } 01289 }; 01290 01291 template<class ContainerAllocator> 01292 struct Definition< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > { 01293 static const char* value() 01294 { 01295 return "\n\ 01296 \n\ 01297 PlanningScene planning_scene\n\ 01298 \n\ 01299 \n\ 01300 \n\ 01301 \n\ 01302 \n\ 01303 ================================================================================\n\ 01304 MSG: arm_navigation_msgs/PlanningScene\n\ 01305 #full robot state\n\ 01306 arm_navigation_msgs/RobotState robot_state\n\ 01307 \n\ 01308 #additional frames for duplicating tf\n\ 01309 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\ 01310 \n\ 01311 #full allowed collision matrix\n\ 01312 AllowedCollisionMatrix allowed_collision_matrix\n\ 01313 \n\ 01314 #allowed contacts\n\ 01315 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\ 01316 \n\ 01317 #all link paddings\n\ 01318 arm_navigation_msgs/LinkPadding[] link_padding\n\ 01319 \n\ 01320 #collision objects\n\ 01321 arm_navigation_msgs/CollisionObject[] collision_objects\n\ 01322 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\ 01323 \n\ 01324 #the collision map\n\ 01325 arm_navigation_msgs/CollisionMap collision_map\n\ 01326 \n\ 01327 ================================================================================\n\ 01328 MSG: arm_navigation_msgs/RobotState\n\ 01329 # This message contains information about the robot state, i.e. the positions of its joints and links\n\ 01330 sensor_msgs/JointState joint_state\n\ 01331 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\ 01332 \n\ 01333 ================================================================================\n\ 01334 MSG: sensor_msgs/JointState\n\ 01335 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\ 01336 #\n\ 01337 # The state of each joint (revolute or prismatic) is defined by:\n\ 01338 # * the position of the joint (rad or m),\n\ 01339 # * the velocity of the joint (rad/s or m/s) and \n\ 01340 # * the effort that is applied in the joint (Nm or N).\n\ 01341 #\n\ 01342 # Each joint is uniquely identified by its name\n\ 01343 # The header specifies the time at which the joint states were recorded. All the joint states\n\ 01344 # in one message have to be recorded at the same time.\n\ 01345 #\n\ 01346 # This message consists of a multiple arrays, one for each part of the joint state. \n\ 01347 # The goal is to make each of the fields optional. When e.g. your joints have no\n\ 01348 # effort associated with them, you can leave the effort array empty. \n\ 01349 #\n\ 01350 # All arrays in this message should have the same size, or be empty.\n\ 01351 # This is the only way to uniquely associate the joint name with the correct\n\ 01352 # states.\n\ 01353 \n\ 01354 \n\ 01355 Header header\n\ 01356 \n\ 01357 string[] name\n\ 01358 float64[] position\n\ 01359 float64[] velocity\n\ 01360 float64[] effort\n\ 01361 \n\ 01362 ================================================================================\n\ 01363 MSG: std_msgs/Header\n\ 01364 # Standard metadata for higher-level stamped data types.\n\ 01365 # This is generally used to communicate timestamped data \n\ 01366 # in a particular coordinate frame.\n\ 01367 # \n\ 01368 # sequence ID: consecutively increasing ID \n\ 01369 uint32 seq\n\ 01370 #Two-integer timestamp that is expressed as:\n\ 01371 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 01372 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 01373 # time-handling sugar is provided by the client library\n\ 01374 time stamp\n\ 01375 #Frame this data is associated with\n\ 01376 # 0: no frame\n\ 01377 # 1: global frame\n\ 01378 string frame_id\n\ 01379 \n\ 01380 ================================================================================\n\ 01381 MSG: arm_navigation_msgs/MultiDOFJointState\n\ 01382 #A representation of a multi-dof joint state\n\ 01383 time stamp\n\ 01384 string[] joint_names\n\ 01385 string[] frame_ids\n\ 01386 string[] child_frame_ids\n\ 01387 geometry_msgs/Pose[] poses\n\ 01388 \n\ 01389 ================================================================================\n\ 01390 MSG: geometry_msgs/Pose\n\ 01391 # A representation of pose in free space, composed of postion and orientation. \n\ 01392 Point position\n\ 01393 Quaternion orientation\n\ 01394 \n\ 01395 ================================================================================\n\ 01396 MSG: geometry_msgs/Point\n\ 01397 # This contains the position of a point in free space\n\ 01398 float64 x\n\ 01399 float64 y\n\ 01400 float64 z\n\ 01401 \n\ 01402 ================================================================================\n\ 01403 MSG: geometry_msgs/Quaternion\n\ 01404 # This represents an orientation in free space in quaternion form.\n\ 01405 \n\ 01406 float64 x\n\ 01407 float64 y\n\ 01408 float64 z\n\ 01409 float64 w\n\ 01410 \n\ 01411 ================================================================================\n\ 01412 MSG: geometry_msgs/TransformStamped\n\ 01413 # This expresses a transform from coordinate frame header.frame_id\n\ 01414 # to the coordinate frame child_frame_id\n\ 01415 #\n\ 01416 # This message is mostly used by the \n\ 01417 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\ 01418 # See it's documentation for more information.\n\ 01419 \n\ 01420 Header header\n\ 01421 string child_frame_id # the frame id of the child frame\n\ 01422 Transform transform\n\ 01423 \n\ 01424 ================================================================================\n\ 01425 MSG: geometry_msgs/Transform\n\ 01426 # This represents the transform between two coordinate frames in free space.\n\ 01427 \n\ 01428 Vector3 translation\n\ 01429 Quaternion rotation\n\ 01430 \n\ 01431 ================================================================================\n\ 01432 MSG: geometry_msgs/Vector3\n\ 01433 # This represents a vector in free space. \n\ 01434 \n\ 01435 float64 x\n\ 01436 float64 y\n\ 01437 float64 z\n\ 01438 ================================================================================\n\ 01439 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\ 01440 # the list of link names in the matrix\n\ 01441 string[] link_names\n\ 01442 \n\ 01443 # the individual entries in the allowed collision matrix\n\ 01444 # symmetric, with same order as link_names\n\ 01445 AllowedCollisionEntry[] entries\n\ 01446 \n\ 01447 ================================================================================\n\ 01448 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\ 01449 # whether or not collision checking is enabled\n\ 01450 bool[] enabled\n\ 01451 \n\ 01452 ================================================================================\n\ 01453 MSG: arm_navigation_msgs/AllowedContactSpecification\n\ 01454 # The names of the regions\n\ 01455 string name\n\ 01456 \n\ 01457 # The shape of the region in the environment\n\ 01458 arm_navigation_msgs/Shape shape\n\ 01459 \n\ 01460 # The pose of the space defining the region\n\ 01461 geometry_msgs/PoseStamped pose_stamped\n\ 01462 \n\ 01463 # The set of links that will be allowed to have penetration contact within this region\n\ 01464 string[] link_names\n\ 01465 \n\ 01466 # The maximum penetration depth allowed for every link\n\ 01467 float64 penetration_depth\n\ 01468 \n\ 01469 ================================================================================\n\ 01470 MSG: arm_navigation_msgs/Shape\n\ 01471 byte SPHERE=0\n\ 01472 byte BOX=1\n\ 01473 byte CYLINDER=2\n\ 01474 byte MESH=3\n\ 01475 \n\ 01476 byte type\n\ 01477 \n\ 01478 \n\ 01479 #### define sphere, box, cylinder ####\n\ 01480 # the origin of each shape is considered at the shape's center\n\ 01481 \n\ 01482 # for sphere\n\ 01483 # radius := dimensions[0]\n\ 01484 \n\ 01485 # for cylinder\n\ 01486 # radius := dimensions[0]\n\ 01487 # length := dimensions[1]\n\ 01488 # the length is along the Z axis\n\ 01489 \n\ 01490 # for box\n\ 01491 # size_x := dimensions[0]\n\ 01492 # size_y := dimensions[1]\n\ 01493 # size_z := dimensions[2]\n\ 01494 float64[] dimensions\n\ 01495 \n\ 01496 \n\ 01497 #### define mesh ####\n\ 01498 \n\ 01499 # list of triangles; triangle k is defined by tre vertices located\n\ 01500 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\ 01501 int32[] triangles\n\ 01502 geometry_msgs/Point[] vertices\n\ 01503 \n\ 01504 ================================================================================\n\ 01505 MSG: geometry_msgs/PoseStamped\n\ 01506 # A Pose with reference coordinate frame and timestamp\n\ 01507 Header header\n\ 01508 Pose pose\n\ 01509 \n\ 01510 ================================================================================\n\ 01511 MSG: arm_navigation_msgs/LinkPadding\n\ 01512 #name for the link\n\ 01513 string link_name\n\ 01514 \n\ 01515 # padding to apply to the link\n\ 01516 float64 padding\n\ 01517 \n\ 01518 ================================================================================\n\ 01519 MSG: arm_navigation_msgs/CollisionObject\n\ 01520 # a header, used for interpreting the poses\n\ 01521 Header header\n\ 01522 \n\ 01523 # the id of the object\n\ 01524 string id\n\ 01525 \n\ 01526 # The padding used for filtering points near the object.\n\ 01527 # This does not affect collision checking for the object. \n\ 01528 # Set to negative to get zero padding.\n\ 01529 float32 padding\n\ 01530 \n\ 01531 #This contains what is to be done with the object\n\ 01532 CollisionObjectOperation operation\n\ 01533 \n\ 01534 #the shapes associated with the object\n\ 01535 arm_navigation_msgs/Shape[] shapes\n\ 01536 \n\ 01537 #the poses associated with the shapes - will be transformed using the header\n\ 01538 geometry_msgs/Pose[] poses\n\ 01539 \n\ 01540 ================================================================================\n\ 01541 MSG: arm_navigation_msgs/CollisionObjectOperation\n\ 01542 #Puts the object into the environment\n\ 01543 #or updates the object if already added\n\ 01544 byte ADD=0\n\ 01545 \n\ 01546 #Removes the object from the environment entirely\n\ 01547 byte REMOVE=1\n\ 01548 \n\ 01549 #Only valid within the context of a CollisionAttachedObject message\n\ 01550 #Will be ignored if sent with an CollisionObject message\n\ 01551 #Takes an attached object, detaches from the attached link\n\ 01552 #But adds back in as regular object\n\ 01553 byte DETACH_AND_ADD_AS_OBJECT=2\n\ 01554 \n\ 01555 #Only valid within the context of a CollisionAttachedObject message\n\ 01556 #Will be ignored if sent with an CollisionObject message\n\ 01557 #Takes current object in the environment and removes it as\n\ 01558 #a regular object\n\ 01559 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\ 01560 \n\ 01561 # Byte code for operation\n\ 01562 byte operation\n\ 01563 \n\ 01564 ================================================================================\n\ 01565 MSG: arm_navigation_msgs/AttachedCollisionObject\n\ 01566 # The CollisionObject will be attached with a fixed joint to this link\n\ 01567 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\ 01568 # is set to REMOVE will remove all attached bodies attached to any object\n\ 01569 string link_name\n\ 01570 \n\ 01571 #Reserved for indicating that all attached objects should be removed\n\ 01572 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\ 01573 \n\ 01574 #This contains the actual shapes and poses for the CollisionObject\n\ 01575 #to be attached to the link\n\ 01576 #If action is remove and no object.id is set, all objects\n\ 01577 #attached to the link indicated by link_name will be removed\n\ 01578 CollisionObject object\n\ 01579 \n\ 01580 # The set of links that the attached objects are allowed to touch\n\ 01581 # by default - the link_name is included by default\n\ 01582 string[] touch_links\n\ 01583 \n\ 01584 ================================================================================\n\ 01585 MSG: arm_navigation_msgs/CollisionMap\n\ 01586 #header for interpreting box positions\n\ 01587 Header header\n\ 01588 \n\ 01589 #boxes for use in collision testing\n\ 01590 OrientedBoundingBox[] boxes\n\ 01591 \n\ 01592 ================================================================================\n\ 01593 MSG: arm_navigation_msgs/OrientedBoundingBox\n\ 01594 #the center of the box\n\ 01595 geometry_msgs/Point32 center\n\ 01596 \n\ 01597 #the extents of the box, assuming the center is at the point\n\ 01598 geometry_msgs/Point32 extents\n\ 01599 \n\ 01600 #the axis of the box\n\ 01601 geometry_msgs/Point32 axis\n\ 01602 \n\ 01603 #the angle of rotation around the axis\n\ 01604 float32 angle\n\ 01605 \n\ 01606 ================================================================================\n\ 01607 MSG: geometry_msgs/Point32\n\ 01608 # This contains the position of a point in free space(with 32 bits of precision).\n\ 01609 # It is recommeded to use Point wherever possible instead of Point32. \n\ 01610 # \n\ 01611 # This recommendation is to promote interoperability. \n\ 01612 #\n\ 01613 # This message is designed to take up less space when sending\n\ 01614 # lots of points at once, as in the case of a PointCloud. \n\ 01615 \n\ 01616 float32 x\n\ 01617 float32 y\n\ 01618 float32 z\n\ 01619 "; 01620 } 01621 01622 static const char* value(const ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> &) { return value(); } 01623 }; 01624 01625 } // namespace message_traits 01626 } // namespace ros 01627 01628 namespace ros 01629 { 01630 namespace serialization 01631 { 01632 01633 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > 01634 { 01635 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 01636 { 01637 stream.next(m.planning_scene_diff); 01638 stream.next(m.operations); 01639 } 01640 01641 ROS_DECLARE_ALLINONE_SERIALIZER; 01642 }; // struct SetPlanningSceneDiffRequest_ 01643 } // namespace serialization 01644 } // namespace ros 01645 01646 01647 namespace ros 01648 { 01649 namespace serialization 01650 { 01651 01652 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > 01653 { 01654 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 01655 { 01656 stream.next(m.planning_scene); 01657 } 01658 01659 ROS_DECLARE_ALLINONE_SERIALIZER; 01660 }; // struct SetPlanningSceneDiffResponse_ 01661 } // namespace serialization 01662 } // namespace ros 01663 01664 namespace ros 01665 { 01666 namespace service_traits 01667 { 01668 template<> 01669 struct MD5Sum<arm_navigation_msgs::SetPlanningSceneDiff> { 01670 static const char* value() 01671 { 01672 return "0a7b07718e4e5c5d35740c730509a151"; 01673 } 01674 01675 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiff&) { return value(); } 01676 }; 01677 01678 template<> 01679 struct DataType<arm_navigation_msgs::SetPlanningSceneDiff> { 01680 static const char* value() 01681 { 01682 return "arm_navigation_msgs/SetPlanningSceneDiff"; 01683 } 01684 01685 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiff&) { return value(); } 01686 }; 01687 01688 template<class ContainerAllocator> 01689 struct MD5Sum<arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > { 01690 static const char* value() 01691 { 01692 return "0a7b07718e4e5c5d35740c730509a151"; 01693 } 01694 01695 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> &) { return value(); } 01696 }; 01697 01698 template<class ContainerAllocator> 01699 struct DataType<arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> > { 01700 static const char* value() 01701 { 01702 return "arm_navigation_msgs/SetPlanningSceneDiff"; 01703 } 01704 01705 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiffRequest_<ContainerAllocator> &) { return value(); } 01706 }; 01707 01708 template<class ContainerAllocator> 01709 struct MD5Sum<arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > { 01710 static const char* value() 01711 { 01712 return "0a7b07718e4e5c5d35740c730509a151"; 01713 } 01714 01715 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> &) { return value(); } 01716 }; 01717 01718 template<class ContainerAllocator> 01719 struct DataType<arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> > { 01720 static const char* value() 01721 { 01722 return "arm_navigation_msgs/SetPlanningSceneDiff"; 01723 } 01724 01725 static const char* value(const arm_navigation_msgs::SetPlanningSceneDiffResponse_<ContainerAllocator> &) { return value(); } 01726 }; 01727 01728 } // namespace service_traits 01729 } // namespace ros 01730 01731 #endif // ARM_NAVIGATION_MSGS_SERVICE_SETPLANNINGSCENEDIFF_H 01732