00001
00002 #ifndef ARM_NAVIGATION_MSGS_MESSAGE_SYNCPLANNINGSCENEGOAL_H
00003 #define ARM_NAVIGATION_MSGS_MESSAGE_SYNCPLANNINGSCENEGOAL_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 "arm_navigation_msgs/PlanningScene.h"
00018
00019 namespace arm_navigation_msgs
00020 {
00021 template <class ContainerAllocator>
00022 struct SyncPlanningSceneGoal_ {
00023 typedef SyncPlanningSceneGoal_<ContainerAllocator> Type;
00024
00025 SyncPlanningSceneGoal_()
00026 : planning_scene()
00027 {
00028 }
00029
00030 SyncPlanningSceneGoal_(const ContainerAllocator& _alloc)
00031 : planning_scene(_alloc)
00032 {
00033 }
00034
00035 typedef ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> _planning_scene_type;
00036 ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> planning_scene;
00037
00038
00039 private:
00040 static const char* __s_getDataType_() { return "arm_navigation_msgs/SyncPlanningSceneGoal"; }
00041 public:
00042 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00043
00044 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00045
00046 private:
00047 static const char* __s_getMD5Sum_() { return "285525c9abe002fbafa99af84a14b4cb"; }
00048 public:
00049 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00050
00051 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00052
00053 private:
00054 static const char* __s_getMessageDefinition_() { return "# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======\n\
00055 # THIS MESSAGE IS FOR INTERNAL COMMUNICATION BETWEEN\n\
00056 # PLANNING ENVIRONMENT COMPONENTS ONLY\n\
00057 \n\
00058 #Full planning scene\n\
00059 PlanningScene planning_scene\n\
00060 \n\
00061 ================================================================================\n\
00062 MSG: arm_navigation_msgs/PlanningScene\n\
00063 #full robot state\n\
00064 arm_navigation_msgs/RobotState robot_state\n\
00065 \n\
00066 #additional frames for duplicating tf\n\
00067 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\
00068 \n\
00069 #full allowed collision matrix\n\
00070 AllowedCollisionMatrix allowed_collision_matrix\n\
00071 \n\
00072 #allowed contacts\n\
00073 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\
00074 \n\
00075 #all link paddings\n\
00076 arm_navigation_msgs/LinkPadding[] link_padding\n\
00077 \n\
00078 #collision objects\n\
00079 arm_navigation_msgs/CollisionObject[] collision_objects\n\
00080 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\
00081 \n\
00082 #the collision map\n\
00083 arm_navigation_msgs/CollisionMap collision_map\n\
00084 \n\
00085 ================================================================================\n\
00086 MSG: arm_navigation_msgs/RobotState\n\
00087 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00088 sensor_msgs/JointState joint_state\n\
00089 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\
00090 \n\
00091 ================================================================================\n\
00092 MSG: sensor_msgs/JointState\n\
00093 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00094 #\n\
00095 # The state of each joint (revolute or prismatic) is defined by:\n\
00096 # * the position of the joint (rad or m),\n\
00097 # * the velocity of the joint (rad/s or m/s) and \n\
00098 # * the effort that is applied in the joint (Nm or N).\n\
00099 #\n\
00100 # Each joint is uniquely identified by its name\n\
00101 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00102 # in one message have to be recorded at the same time.\n\
00103 #\n\
00104 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00105 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00106 # effort associated with them, you can leave the effort array empty. \n\
00107 #\n\
00108 # All arrays in this message should have the same size, or be empty.\n\
00109 # This is the only way to uniquely associate the joint name with the correct\n\
00110 # states.\n\
00111 \n\
00112 \n\
00113 Header header\n\
00114 \n\
00115 string[] name\n\
00116 float64[] position\n\
00117 float64[] velocity\n\
00118 float64[] effort\n\
00119 \n\
00120 ================================================================================\n\
00121 MSG: std_msgs/Header\n\
00122 # Standard metadata for higher-level stamped data types.\n\
00123 # This is generally used to communicate timestamped data \n\
00124 # in a particular coordinate frame.\n\
00125 # \n\
00126 # sequence ID: consecutively increasing ID \n\
00127 uint32 seq\n\
00128 #Two-integer timestamp that is expressed as:\n\
00129 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00130 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00131 # time-handling sugar is provided by the client library\n\
00132 time stamp\n\
00133 #Frame this data is associated with\n\
00134 # 0: no frame\n\
00135 # 1: global frame\n\
00136 string frame_id\n\
00137 \n\
00138 ================================================================================\n\
00139 MSG: arm_navigation_msgs/MultiDOFJointState\n\
00140 #A representation of a multi-dof joint state\n\
00141 time stamp\n\
00142 string[] joint_names\n\
00143 string[] frame_ids\n\
00144 string[] child_frame_ids\n\
00145 geometry_msgs/Pose[] poses\n\
00146 \n\
00147 ================================================================================\n\
00148 MSG: geometry_msgs/Pose\n\
00149 # A representation of pose in free space, composed of postion and orientation. \n\
00150 Point position\n\
00151 Quaternion orientation\n\
00152 \n\
00153 ================================================================================\n\
00154 MSG: geometry_msgs/Point\n\
00155 # This contains the position of a point in free space\n\
00156 float64 x\n\
00157 float64 y\n\
00158 float64 z\n\
00159 \n\
00160 ================================================================================\n\
00161 MSG: geometry_msgs/Quaternion\n\
00162 # This represents an orientation in free space in quaternion form.\n\
00163 \n\
00164 float64 x\n\
00165 float64 y\n\
00166 float64 z\n\
00167 float64 w\n\
00168 \n\
00169 ================================================================================\n\
00170 MSG: geometry_msgs/TransformStamped\n\
00171 # This expresses a transform from coordinate frame header.frame_id\n\
00172 # to the coordinate frame child_frame_id\n\
00173 #\n\
00174 # This message is mostly used by the \n\
00175 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\
00176 # See it's documentation for more information.\n\
00177 \n\
00178 Header header\n\
00179 string child_frame_id # the frame id of the child frame\n\
00180 Transform transform\n\
00181 \n\
00182 ================================================================================\n\
00183 MSG: geometry_msgs/Transform\n\
00184 # This represents the transform between two coordinate frames in free space.\n\
00185 \n\
00186 Vector3 translation\n\
00187 Quaternion rotation\n\
00188 \n\
00189 ================================================================================\n\
00190 MSG: geometry_msgs/Vector3\n\
00191 # This represents a vector in free space. \n\
00192 \n\
00193 float64 x\n\
00194 float64 y\n\
00195 float64 z\n\
00196 ================================================================================\n\
00197 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\
00198 # the list of link names in the matrix\n\
00199 string[] link_names\n\
00200 \n\
00201 # the individual entries in the allowed collision matrix\n\
00202 # symmetric, with same order as link_names\n\
00203 AllowedCollisionEntry[] entries\n\
00204 \n\
00205 ================================================================================\n\
00206 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\
00207 # whether or not collision checking is enabled\n\
00208 bool[] enabled\n\
00209 \n\
00210 ================================================================================\n\
00211 MSG: arm_navigation_msgs/AllowedContactSpecification\n\
00212 # The names of the regions\n\
00213 string name\n\
00214 \n\
00215 # The shape of the region in the environment\n\
00216 arm_navigation_msgs/Shape shape\n\
00217 \n\
00218 # The pose of the space defining the region\n\
00219 geometry_msgs/PoseStamped pose_stamped\n\
00220 \n\
00221 # The set of links that will be allowed to have penetration contact within this region\n\
00222 string[] link_names\n\
00223 \n\
00224 # The maximum penetration depth allowed for every link\n\
00225 float64 penetration_depth\n\
00226 \n\
00227 ================================================================================\n\
00228 MSG: arm_navigation_msgs/Shape\n\
00229 byte SPHERE=0\n\
00230 byte BOX=1\n\
00231 byte CYLINDER=2\n\
00232 byte MESH=3\n\
00233 \n\
00234 byte type\n\
00235 \n\
00236 \n\
00237 #### define sphere, box, cylinder ####\n\
00238 # the origin of each shape is considered at the shape's center\n\
00239 \n\
00240 # for sphere\n\
00241 # radius := dimensions[0]\n\
00242 \n\
00243 # for cylinder\n\
00244 # radius := dimensions[0]\n\
00245 # length := dimensions[1]\n\
00246 # the length is along the Z axis\n\
00247 \n\
00248 # for box\n\
00249 # size_x := dimensions[0]\n\
00250 # size_y := dimensions[1]\n\
00251 # size_z := dimensions[2]\n\
00252 float64[] dimensions\n\
00253 \n\
00254 \n\
00255 #### define mesh ####\n\
00256 \n\
00257 # list of triangles; triangle k is defined by tre vertices located\n\
00258 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\
00259 int32[] triangles\n\
00260 geometry_msgs/Point[] vertices\n\
00261 \n\
00262 ================================================================================\n\
00263 MSG: geometry_msgs/PoseStamped\n\
00264 # A Pose with reference coordinate frame and timestamp\n\
00265 Header header\n\
00266 Pose pose\n\
00267 \n\
00268 ================================================================================\n\
00269 MSG: arm_navigation_msgs/LinkPadding\n\
00270 #name for the link\n\
00271 string link_name\n\
00272 \n\
00273 # padding to apply to the link\n\
00274 float64 padding\n\
00275 \n\
00276 ================================================================================\n\
00277 MSG: arm_navigation_msgs/CollisionObject\n\
00278 # a header, used for interpreting the poses\n\
00279 Header header\n\
00280 \n\
00281 # the id of the object\n\
00282 string id\n\
00283 \n\
00284 # The padding used for filtering points near the object.\n\
00285 # This does not affect collision checking for the object. \n\
00286 # Set to negative to get zero padding.\n\
00287 float32 padding\n\
00288 \n\
00289 #This contains what is to be done with the object\n\
00290 CollisionObjectOperation operation\n\
00291 \n\
00292 #the shapes associated with the object\n\
00293 arm_navigation_msgs/Shape[] shapes\n\
00294 \n\
00295 #the poses associated with the shapes - will be transformed using the header\n\
00296 geometry_msgs/Pose[] poses\n\
00297 \n\
00298 ================================================================================\n\
00299 MSG: arm_navigation_msgs/CollisionObjectOperation\n\
00300 #Puts the object into the environment\n\
00301 #or updates the object if already added\n\
00302 byte ADD=0\n\
00303 \n\
00304 #Removes the object from the environment entirely\n\
00305 byte REMOVE=1\n\
00306 \n\
00307 #Only valid within the context of a CollisionAttachedObject message\n\
00308 #Will be ignored if sent with an CollisionObject message\n\
00309 #Takes an attached object, detaches from the attached link\n\
00310 #But adds back in as regular object\n\
00311 byte DETACH_AND_ADD_AS_OBJECT=2\n\
00312 \n\
00313 #Only valid within the context of a CollisionAttachedObject message\n\
00314 #Will be ignored if sent with an CollisionObject message\n\
00315 #Takes current object in the environment and removes it as\n\
00316 #a regular object\n\
00317 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\
00318 \n\
00319 # Byte code for operation\n\
00320 byte operation\n\
00321 \n\
00322 ================================================================================\n\
00323 MSG: arm_navigation_msgs/AttachedCollisionObject\n\
00324 # The CollisionObject will be attached with a fixed joint to this link\n\
00325 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\
00326 # is set to REMOVE will remove all attached bodies attached to any object\n\
00327 string link_name\n\
00328 \n\
00329 #Reserved for indicating that all attached objects should be removed\n\
00330 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\
00331 \n\
00332 #This contains the actual shapes and poses for the CollisionObject\n\
00333 #to be attached to the link\n\
00334 #If action is remove and no object.id is set, all objects\n\
00335 #attached to the link indicated by link_name will be removed\n\
00336 CollisionObject object\n\
00337 \n\
00338 # The set of links that the attached objects are allowed to touch\n\
00339 # by default - the link_name is included by default\n\
00340 string[] touch_links\n\
00341 \n\
00342 ================================================================================\n\
00343 MSG: arm_navigation_msgs/CollisionMap\n\
00344 #header for interpreting box positions\n\
00345 Header header\n\
00346 \n\
00347 #boxes for use in collision testing\n\
00348 OrientedBoundingBox[] boxes\n\
00349 \n\
00350 ================================================================================\n\
00351 MSG: arm_navigation_msgs/OrientedBoundingBox\n\
00352 #the center of the box\n\
00353 geometry_msgs/Point32 center\n\
00354 \n\
00355 #the extents of the box, assuming the center is at the point\n\
00356 geometry_msgs/Point32 extents\n\
00357 \n\
00358 #the axis of the box\n\
00359 geometry_msgs/Point32 axis\n\
00360 \n\
00361 #the angle of rotation around the axis\n\
00362 float32 angle\n\
00363 \n\
00364 ================================================================================\n\
00365 MSG: geometry_msgs/Point32\n\
00366 # This contains the position of a point in free space(with 32 bits of precision).\n\
00367 # It is recommeded to use Point wherever possible instead of Point32. \n\
00368 # \n\
00369 # This recommendation is to promote interoperability. \n\
00370 #\n\
00371 # This message is designed to take up less space when sending\n\
00372 # lots of points at once, as in the case of a PointCloud. \n\
00373 \n\
00374 float32 x\n\
00375 float32 y\n\
00376 float32 z\n\
00377 "; }
00378 public:
00379 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00380
00381 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00382
00383 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00384 {
00385 ros::serialization::OStream stream(write_ptr, 1000000000);
00386 ros::serialization::serialize(stream, planning_scene);
00387 return stream.getData();
00388 }
00389
00390 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00391 {
00392 ros::serialization::IStream stream(read_ptr, 1000000000);
00393 ros::serialization::deserialize(stream, planning_scene);
00394 return stream.getData();
00395 }
00396
00397 ROS_DEPRECATED virtual uint32_t serializationLength() const
00398 {
00399 uint32_t size = 0;
00400 size += ros::serialization::serializationLength(planning_scene);
00401 return size;
00402 }
00403
00404 typedef boost::shared_ptr< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> > Ptr;
00405 typedef boost::shared_ptr< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> const> ConstPtr;
00406 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00407 };
00408 typedef ::arm_navigation_msgs::SyncPlanningSceneGoal_<std::allocator<void> > SyncPlanningSceneGoal;
00409
00410 typedef boost::shared_ptr< ::arm_navigation_msgs::SyncPlanningSceneGoal> SyncPlanningSceneGoalPtr;
00411 typedef boost::shared_ptr< ::arm_navigation_msgs::SyncPlanningSceneGoal const> SyncPlanningSceneGoalConstPtr;
00412
00413
00414 template<typename ContainerAllocator>
00415 std::ostream& operator<<(std::ostream& s, const ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> & v)
00416 {
00417 ros::message_operations::Printer< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> >::stream(s, "", v);
00418 return s;}
00419
00420 }
00421
00422 namespace ros
00423 {
00424 namespace message_traits
00425 {
00426 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> > : public TrueType {};
00427 template<class ContainerAllocator> struct IsMessage< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> const> : public TrueType {};
00428 template<class ContainerAllocator>
00429 struct MD5Sum< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> > {
00430 static const char* value()
00431 {
00432 return "285525c9abe002fbafa99af84a14b4cb";
00433 }
00434
00435 static const char* value(const ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> &) { return value(); }
00436 static const uint64_t static_value1 = 0x285525c9abe002fbULL;
00437 static const uint64_t static_value2 = 0xafa99af84a14b4cbULL;
00438 };
00439
00440 template<class ContainerAllocator>
00441 struct DataType< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> > {
00442 static const char* value()
00443 {
00444 return "arm_navigation_msgs/SyncPlanningSceneGoal";
00445 }
00446
00447 static const char* value(const ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> &) { return value(); }
00448 };
00449
00450 template<class ContainerAllocator>
00451 struct Definition< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> > {
00452 static const char* value()
00453 {
00454 return "# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======\n\
00455 # THIS MESSAGE IS FOR INTERNAL COMMUNICATION BETWEEN\n\
00456 # PLANNING ENVIRONMENT COMPONENTS ONLY\n\
00457 \n\
00458 #Full planning scene\n\
00459 PlanningScene planning_scene\n\
00460 \n\
00461 ================================================================================\n\
00462 MSG: arm_navigation_msgs/PlanningScene\n\
00463 #full robot state\n\
00464 arm_navigation_msgs/RobotState robot_state\n\
00465 \n\
00466 #additional frames for duplicating tf\n\
00467 geometry_msgs/TransformStamped[] fixed_frame_transforms\n\
00468 \n\
00469 #full allowed collision matrix\n\
00470 AllowedCollisionMatrix allowed_collision_matrix\n\
00471 \n\
00472 #allowed contacts\n\
00473 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts\n\
00474 \n\
00475 #all link paddings\n\
00476 arm_navigation_msgs/LinkPadding[] link_padding\n\
00477 \n\
00478 #collision objects\n\
00479 arm_navigation_msgs/CollisionObject[] collision_objects\n\
00480 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects\n\
00481 \n\
00482 #the collision map\n\
00483 arm_navigation_msgs/CollisionMap collision_map\n\
00484 \n\
00485 ================================================================================\n\
00486 MSG: arm_navigation_msgs/RobotState\n\
00487 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00488 sensor_msgs/JointState joint_state\n\
00489 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state\n\
00490 \n\
00491 ================================================================================\n\
00492 MSG: sensor_msgs/JointState\n\
00493 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00494 #\n\
00495 # The state of each joint (revolute or prismatic) is defined by:\n\
00496 # * the position of the joint (rad or m),\n\
00497 # * the velocity of the joint (rad/s or m/s) and \n\
00498 # * the effort that is applied in the joint (Nm or N).\n\
00499 #\n\
00500 # Each joint is uniquely identified by its name\n\
00501 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00502 # in one message have to be recorded at the same time.\n\
00503 #\n\
00504 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00505 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00506 # effort associated with them, you can leave the effort array empty. \n\
00507 #\n\
00508 # All arrays in this message should have the same size, or be empty.\n\
00509 # This is the only way to uniquely associate the joint name with the correct\n\
00510 # states.\n\
00511 \n\
00512 \n\
00513 Header header\n\
00514 \n\
00515 string[] name\n\
00516 float64[] position\n\
00517 float64[] velocity\n\
00518 float64[] effort\n\
00519 \n\
00520 ================================================================================\n\
00521 MSG: std_msgs/Header\n\
00522 # Standard metadata for higher-level stamped data types.\n\
00523 # This is generally used to communicate timestamped data \n\
00524 # in a particular coordinate frame.\n\
00525 # \n\
00526 # sequence ID: consecutively increasing ID \n\
00527 uint32 seq\n\
00528 #Two-integer timestamp that is expressed as:\n\
00529 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00530 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00531 # time-handling sugar is provided by the client library\n\
00532 time stamp\n\
00533 #Frame this data is associated with\n\
00534 # 0: no frame\n\
00535 # 1: global frame\n\
00536 string frame_id\n\
00537 \n\
00538 ================================================================================\n\
00539 MSG: arm_navigation_msgs/MultiDOFJointState\n\
00540 #A representation of a multi-dof joint state\n\
00541 time stamp\n\
00542 string[] joint_names\n\
00543 string[] frame_ids\n\
00544 string[] child_frame_ids\n\
00545 geometry_msgs/Pose[] poses\n\
00546 \n\
00547 ================================================================================\n\
00548 MSG: geometry_msgs/Pose\n\
00549 # A representation of pose in free space, composed of postion and orientation. \n\
00550 Point position\n\
00551 Quaternion orientation\n\
00552 \n\
00553 ================================================================================\n\
00554 MSG: geometry_msgs/Point\n\
00555 # This contains the position of a point in free space\n\
00556 float64 x\n\
00557 float64 y\n\
00558 float64 z\n\
00559 \n\
00560 ================================================================================\n\
00561 MSG: geometry_msgs/Quaternion\n\
00562 # This represents an orientation in free space in quaternion form.\n\
00563 \n\
00564 float64 x\n\
00565 float64 y\n\
00566 float64 z\n\
00567 float64 w\n\
00568 \n\
00569 ================================================================================\n\
00570 MSG: geometry_msgs/TransformStamped\n\
00571 # This expresses a transform from coordinate frame header.frame_id\n\
00572 # to the coordinate frame child_frame_id\n\
00573 #\n\
00574 # This message is mostly used by the \n\
00575 # <a href=\"http://www.ros.org/wiki/tf\">tf</a> package. \n\
00576 # See it's documentation for more information.\n\
00577 \n\
00578 Header header\n\
00579 string child_frame_id # the frame id of the child frame\n\
00580 Transform transform\n\
00581 \n\
00582 ================================================================================\n\
00583 MSG: geometry_msgs/Transform\n\
00584 # This represents the transform between two coordinate frames in free space.\n\
00585 \n\
00586 Vector3 translation\n\
00587 Quaternion rotation\n\
00588 \n\
00589 ================================================================================\n\
00590 MSG: geometry_msgs/Vector3\n\
00591 # This represents a vector in free space. \n\
00592 \n\
00593 float64 x\n\
00594 float64 y\n\
00595 float64 z\n\
00596 ================================================================================\n\
00597 MSG: arm_navigation_msgs/AllowedCollisionMatrix\n\
00598 # the list of link names in the matrix\n\
00599 string[] link_names\n\
00600 \n\
00601 # the individual entries in the allowed collision matrix\n\
00602 # symmetric, with same order as link_names\n\
00603 AllowedCollisionEntry[] entries\n\
00604 \n\
00605 ================================================================================\n\
00606 MSG: arm_navigation_msgs/AllowedCollisionEntry\n\
00607 # whether or not collision checking is enabled\n\
00608 bool[] enabled\n\
00609 \n\
00610 ================================================================================\n\
00611 MSG: arm_navigation_msgs/AllowedContactSpecification\n\
00612 # The names of the regions\n\
00613 string name\n\
00614 \n\
00615 # The shape of the region in the environment\n\
00616 arm_navigation_msgs/Shape shape\n\
00617 \n\
00618 # The pose of the space defining the region\n\
00619 geometry_msgs/PoseStamped pose_stamped\n\
00620 \n\
00621 # The set of links that will be allowed to have penetration contact within this region\n\
00622 string[] link_names\n\
00623 \n\
00624 # The maximum penetration depth allowed for every link\n\
00625 float64 penetration_depth\n\
00626 \n\
00627 ================================================================================\n\
00628 MSG: arm_navigation_msgs/Shape\n\
00629 byte SPHERE=0\n\
00630 byte BOX=1\n\
00631 byte CYLINDER=2\n\
00632 byte MESH=3\n\
00633 \n\
00634 byte type\n\
00635 \n\
00636 \n\
00637 #### define sphere, box, cylinder ####\n\
00638 # the origin of each shape is considered at the shape's center\n\
00639 \n\
00640 # for sphere\n\
00641 # radius := dimensions[0]\n\
00642 \n\
00643 # for cylinder\n\
00644 # radius := dimensions[0]\n\
00645 # length := dimensions[1]\n\
00646 # the length is along the Z axis\n\
00647 \n\
00648 # for box\n\
00649 # size_x := dimensions[0]\n\
00650 # size_y := dimensions[1]\n\
00651 # size_z := dimensions[2]\n\
00652 float64[] dimensions\n\
00653 \n\
00654 \n\
00655 #### define mesh ####\n\
00656 \n\
00657 # list of triangles; triangle k is defined by tre vertices located\n\
00658 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\
00659 int32[] triangles\n\
00660 geometry_msgs/Point[] vertices\n\
00661 \n\
00662 ================================================================================\n\
00663 MSG: geometry_msgs/PoseStamped\n\
00664 # A Pose with reference coordinate frame and timestamp\n\
00665 Header header\n\
00666 Pose pose\n\
00667 \n\
00668 ================================================================================\n\
00669 MSG: arm_navigation_msgs/LinkPadding\n\
00670 #name for the link\n\
00671 string link_name\n\
00672 \n\
00673 # padding to apply to the link\n\
00674 float64 padding\n\
00675 \n\
00676 ================================================================================\n\
00677 MSG: arm_navigation_msgs/CollisionObject\n\
00678 # a header, used for interpreting the poses\n\
00679 Header header\n\
00680 \n\
00681 # the id of the object\n\
00682 string id\n\
00683 \n\
00684 # The padding used for filtering points near the object.\n\
00685 # This does not affect collision checking for the object. \n\
00686 # Set to negative to get zero padding.\n\
00687 float32 padding\n\
00688 \n\
00689 #This contains what is to be done with the object\n\
00690 CollisionObjectOperation operation\n\
00691 \n\
00692 #the shapes associated with the object\n\
00693 arm_navigation_msgs/Shape[] shapes\n\
00694 \n\
00695 #the poses associated with the shapes - will be transformed using the header\n\
00696 geometry_msgs/Pose[] poses\n\
00697 \n\
00698 ================================================================================\n\
00699 MSG: arm_navigation_msgs/CollisionObjectOperation\n\
00700 #Puts the object into the environment\n\
00701 #or updates the object if already added\n\
00702 byte ADD=0\n\
00703 \n\
00704 #Removes the object from the environment entirely\n\
00705 byte REMOVE=1\n\
00706 \n\
00707 #Only valid within the context of a CollisionAttachedObject message\n\
00708 #Will be ignored if sent with an CollisionObject message\n\
00709 #Takes an attached object, detaches from the attached link\n\
00710 #But adds back in as regular object\n\
00711 byte DETACH_AND_ADD_AS_OBJECT=2\n\
00712 \n\
00713 #Only valid within the context of a CollisionAttachedObject message\n\
00714 #Will be ignored if sent with an CollisionObject message\n\
00715 #Takes current object in the environment and removes it as\n\
00716 #a regular object\n\
00717 byte ATTACH_AND_REMOVE_AS_OBJECT=3\n\
00718 \n\
00719 # Byte code for operation\n\
00720 byte operation\n\
00721 \n\
00722 ================================================================================\n\
00723 MSG: arm_navigation_msgs/AttachedCollisionObject\n\
00724 # The CollisionObject will be attached with a fixed joint to this link\n\
00725 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation \n\
00726 # is set to REMOVE will remove all attached bodies attached to any object\n\
00727 string link_name\n\
00728 \n\
00729 #Reserved for indicating that all attached objects should be removed\n\
00730 string REMOVE_ALL_ATTACHED_OBJECTS = \"all\"\n\
00731 \n\
00732 #This contains the actual shapes and poses for the CollisionObject\n\
00733 #to be attached to the link\n\
00734 #If action is remove and no object.id is set, all objects\n\
00735 #attached to the link indicated by link_name will be removed\n\
00736 CollisionObject object\n\
00737 \n\
00738 # The set of links that the attached objects are allowed to touch\n\
00739 # by default - the link_name is included by default\n\
00740 string[] touch_links\n\
00741 \n\
00742 ================================================================================\n\
00743 MSG: arm_navigation_msgs/CollisionMap\n\
00744 #header for interpreting box positions\n\
00745 Header header\n\
00746 \n\
00747 #boxes for use in collision testing\n\
00748 OrientedBoundingBox[] boxes\n\
00749 \n\
00750 ================================================================================\n\
00751 MSG: arm_navigation_msgs/OrientedBoundingBox\n\
00752 #the center of the box\n\
00753 geometry_msgs/Point32 center\n\
00754 \n\
00755 #the extents of the box, assuming the center is at the point\n\
00756 geometry_msgs/Point32 extents\n\
00757 \n\
00758 #the axis of the box\n\
00759 geometry_msgs/Point32 axis\n\
00760 \n\
00761 #the angle of rotation around the axis\n\
00762 float32 angle\n\
00763 \n\
00764 ================================================================================\n\
00765 MSG: geometry_msgs/Point32\n\
00766 # This contains the position of a point in free space(with 32 bits of precision).\n\
00767 # It is recommeded to use Point wherever possible instead of Point32. \n\
00768 # \n\
00769 # This recommendation is to promote interoperability. \n\
00770 #\n\
00771 # This message is designed to take up less space when sending\n\
00772 # lots of points at once, as in the case of a PointCloud. \n\
00773 \n\
00774 float32 x\n\
00775 float32 y\n\
00776 float32 z\n\
00777 ";
00778 }
00779
00780 static const char* value(const ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> &) { return value(); }
00781 };
00782
00783 }
00784 }
00785
00786 namespace ros
00787 {
00788 namespace serialization
00789 {
00790
00791 template<class ContainerAllocator> struct Serializer< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> >
00792 {
00793 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00794 {
00795 stream.next(m.planning_scene);
00796 }
00797
00798 ROS_DECLARE_ALLINONE_SERIALIZER;
00799 };
00800 }
00801 }
00802
00803 namespace ros
00804 {
00805 namespace message_operations
00806 {
00807
00808 template<class ContainerAllocator>
00809 struct Printer< ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> >
00810 {
00811 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::arm_navigation_msgs::SyncPlanningSceneGoal_<ContainerAllocator> & v)
00812 {
00813 s << indent << "planning_scene: ";
00814 s << std::endl;
00815 Printer< ::arm_navigation_msgs::PlanningScene_<ContainerAllocator> >::stream(s, indent + " ", v.planning_scene);
00816 }
00817 };
00818
00819
00820 }
00821 }
00822
00823 #endif // ARM_NAVIGATION_MSGS_MESSAGE_SYNCPLANNINGSCENEGOAL_H
00824