00001
00002 #ifndef MOVE_ARM_MSGS_MESSAGE_MOVEARMACTION_H
00003 #define MOVE_ARM_MSGS_MESSAGE_MOVEARMACTION_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013 #include "move_arm_msgs/MoveArmActionGoal.h"
00014 #include "move_arm_msgs/MoveArmActionResult.h"
00015 #include "move_arm_msgs/MoveArmActionFeedback.h"
00016
00017 namespace move_arm_msgs
00018 {
00019 template <class ContainerAllocator>
00020 struct MoveArmAction_ : public ros::Message
00021 {
00022 typedef MoveArmAction_<ContainerAllocator> Type;
00023
00024 MoveArmAction_()
00025 : action_goal()
00026 , action_result()
00027 , action_feedback()
00028 {
00029 }
00030
00031 MoveArmAction_(const ContainerAllocator& _alloc)
00032 : action_goal(_alloc)
00033 , action_result(_alloc)
00034 , action_feedback(_alloc)
00035 {
00036 }
00037
00038 typedef ::move_arm_msgs::MoveArmActionGoal_<ContainerAllocator> _action_goal_type;
00039 ::move_arm_msgs::MoveArmActionGoal_<ContainerAllocator> action_goal;
00040
00041 typedef ::move_arm_msgs::MoveArmActionResult_<ContainerAllocator> _action_result_type;
00042 ::move_arm_msgs::MoveArmActionResult_<ContainerAllocator> action_result;
00043
00044 typedef ::move_arm_msgs::MoveArmActionFeedback_<ContainerAllocator> _action_feedback_type;
00045 ::move_arm_msgs::MoveArmActionFeedback_<ContainerAllocator> action_feedback;
00046
00047
00048 private:
00049 static const char* __s_getDataType_() { return "move_arm_msgs/MoveArmAction"; }
00050 public:
00051 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00052
00053 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00054
00055 private:
00056 static const char* __s_getMD5Sum_() { return "ca7e1e410f07818a3026274fd67a2f63"; }
00057 public:
00058 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00059
00060 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00061
00062 private:
00063 static const char* __s_getMessageDefinition_() { return "\n\
00064 MoveArmActionGoal action_goal\n\
00065 MoveArmActionResult action_result\n\
00066 MoveArmActionFeedback action_feedback\n\
00067 \n\
00068 ================================================================================\n\
00069 MSG: move_arm_msgs/MoveArmActionGoal\n\
00070 \n\
00071 Header header\n\
00072 actionlib_msgs/GoalID goal_id\n\
00073 MoveArmGoal goal\n\
00074 \n\
00075 ================================================================================\n\
00076 MSG: std_msgs/Header\n\
00077 # Standard metadata for higher-level stamped data types.\n\
00078 # This is generally used to communicate timestamped data \n\
00079 # in a particular coordinate frame.\n\
00080 # \n\
00081 # sequence ID: consecutively increasing ID \n\
00082 uint32 seq\n\
00083 #Two-integer timestamp that is expressed as:\n\
00084 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00085 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00086 # time-handling sugar is provided by the client library\n\
00087 time stamp\n\
00088 #Frame this data is associated with\n\
00089 # 0: no frame\n\
00090 # 1: global frame\n\
00091 string frame_id\n\
00092 \n\
00093 ================================================================================\n\
00094 MSG: actionlib_msgs/GoalID\n\
00095 # The stamp should store the time at which this goal was requested.\n\
00096 # It is used by an action server when it tries to preempt all\n\
00097 # goals that were requested before a certain time\n\
00098 time stamp\n\
00099 \n\
00100 # The id provides a way to associate feedback and\n\
00101 # result message with specific goal requests. The id\n\
00102 # specified must be unique.\n\
00103 string id\n\
00104 \n\
00105 \n\
00106 ================================================================================\n\
00107 MSG: move_arm_msgs/MoveArmGoal\n\
00108 # Service name to call for getting a motion plan\n\
00109 # Move arm will call a service on this service name \n\
00110 # using the MotionPlanRequest specified here\n\
00111 string planner_service_name\n\
00112 \n\
00113 # A motion planning request\n\
00114 motion_planning_msgs/MotionPlanRequest motion_plan_request\n\
00115 \n\
00116 # OPTIONAL flag\n\
00117 # Setting this flag to true will allow move_arm to accept plans that do not go all the way to the goal\n\
00118 bool accept_partial_plans\n\
00119 \n\
00120 # OPTIONAL flag\n\
00121 # Setting this flag to true will allow move_arm to accept invalid goals\n\
00122 # This is useful if you are using a planner like CHOMP along with a noisy rapidly changing collision map\n\
00123 # and you would like to plan to a goal near an object.\n\
00124 bool accept_invalid_goals\n\
00125 \n\
00126 # OPTIONAL flag\n\
00127 # Setting this flag to true will disable the call to IK for a pose goal\n\
00128 bool disable_ik\n\
00129 \n\
00130 # OPTIONAL flag\n\
00131 # Setting this flag to true will disable collision monitoring during execution of a trajectory\n\
00132 bool disable_collision_monitoring\n\
00133 ================================================================================\n\
00134 MSG: motion_planning_msgs/MotionPlanRequest\n\
00135 # This service contains the definition for a request to the motion\n\
00136 # planner and the output it provides\n\
00137 \n\
00138 # Parameters for the workspace that the planner should work inside\n\
00139 motion_planning_msgs/WorkspaceParameters workspace_parameters\n\
00140 \n\
00141 # Starting state updates. If certain joints should be considered\n\
00142 # at positions other than the current ones, these positions should\n\
00143 # be set here\n\
00144 motion_planning_msgs/RobotState start_state\n\
00145 \n\
00146 # The goal state for the model to plan for. The goal is achieved\n\
00147 # if all constraints are satisfied\n\
00148 motion_planning_msgs/Constraints goal_constraints\n\
00149 \n\
00150 # No state at any point along the path in the produced motion plan will violate these constraints\n\
00151 motion_planning_msgs/Constraints path_constraints\n\
00152 \n\
00153 # A specification for regions where contact is \n\
00154 # allowed up to a certain depth\n\
00155 # Any collision within this set of regions with a link \n\
00156 # specified in the message will be allowed if\n\
00157 # it is less than the penetration depth specified in the message\n\
00158 AllowedContactSpecification[] allowed_contacts\n\
00159 \n\
00160 # A set of ordered collision operations, \n\
00161 # these are applied to all links, objects, \n\
00162 # namespaces in the collision space\n\
00163 OrderedCollisionOperations ordered_collision_operations\n\
00164 \n\
00165 # Specifies a set of links and paddings to change from the default\n\
00166 # specified in the yaml file\n\
00167 motion_planning_msgs/LinkPadding[] link_padding\n\
00168 \n\
00169 # The name of the motion planner to use. If no name is specified,\n\
00170 # a default motion planner will be used\n\
00171 string planner_id\n\
00172 \n\
00173 # The name of the group of joints on which this planner is operating\n\
00174 string group_name\n\
00175 \n\
00176 # The number of times this plan is to be computed. Shortest solution\n\
00177 # will be reported.\n\
00178 int32 num_planning_attempts\n\
00179 \n\
00180 # The maximum amount of time the motion planner is allowed to plan for\n\
00181 duration allowed_planning_time\n\
00182 \n\
00183 # An expected path duration (in seconds) along with an expected discretization of the path allows the planner to determine the discretization of the trajectory that it returns\n\
00184 duration expected_path_duration\n\
00185 duration expected_path_dt\n\
00186 \n\
00187 ================================================================================\n\
00188 MSG: motion_planning_msgs/WorkspaceParameters\n\
00189 # This message contains a set of parameters useful in\n\
00190 # setting up the workspace for planning\n\
00191 geometric_shapes_msgs/Shape workspace_region_shape\n\
00192 geometry_msgs/PoseStamped workspace_region_pose\n\
00193 \n\
00194 \n\
00195 ================================================================================\n\
00196 MSG: geometric_shapes_msgs/Shape\n\
00197 byte SPHERE=0\n\
00198 byte BOX=1\n\
00199 byte CYLINDER=2\n\
00200 byte MESH=3\n\
00201 \n\
00202 byte type\n\
00203 \n\
00204 \n\
00205 #### define sphere, box, cylinder ####\n\
00206 # the origin of each shape is considered at the shape's center\n\
00207 \n\
00208 # for sphere\n\
00209 # radius := dimensions[0]\n\
00210 \n\
00211 # for cylinder\n\
00212 # radius := dimensions[0]\n\
00213 # length := dimensions[1]\n\
00214 # the length is along the Z axis\n\
00215 \n\
00216 # for box\n\
00217 # size_x := dimensions[0]\n\
00218 # size_y := dimensions[1]\n\
00219 # size_z := dimensions[2]\n\
00220 float64[] dimensions\n\
00221 \n\
00222 \n\
00223 #### define mesh ####\n\
00224 \n\
00225 # list of triangles; triangle k is defined by tre vertices located\n\
00226 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\
00227 int32[] triangles\n\
00228 geometry_msgs/Point[] vertices\n\
00229 \n\
00230 ================================================================================\n\
00231 MSG: geometry_msgs/Point\n\
00232 # This contains the position of a point in free space\n\
00233 float64 x\n\
00234 float64 y\n\
00235 float64 z\n\
00236 \n\
00237 ================================================================================\n\
00238 MSG: geometry_msgs/PoseStamped\n\
00239 # A Pose with reference coordinate frame and timestamp\n\
00240 Header header\n\
00241 Pose pose\n\
00242 \n\
00243 ================================================================================\n\
00244 MSG: geometry_msgs/Pose\n\
00245 # A representation of pose in free space, composed of postion and orientation. \n\
00246 Point position\n\
00247 Quaternion orientation\n\
00248 \n\
00249 ================================================================================\n\
00250 MSG: geometry_msgs/Quaternion\n\
00251 # This represents an orientation in free space in quaternion form.\n\
00252 \n\
00253 float64 x\n\
00254 float64 y\n\
00255 float64 z\n\
00256 float64 w\n\
00257 \n\
00258 ================================================================================\n\
00259 MSG: motion_planning_msgs/RobotState\n\
00260 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00261 sensor_msgs/JointState joint_state\n\
00262 motion_planning_msgs/MultiDOFJointState multi_dof_joint_state\n\
00263 ================================================================================\n\
00264 MSG: sensor_msgs/JointState\n\
00265 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00266 #\n\
00267 # The state of each joint (revolute or prismatic) is defined by:\n\
00268 # * the position of the joint (rad or m),\n\
00269 # * the velocity of the joint (rad/s or m/s) and \n\
00270 # * the effort that is applied in the joint (Nm or N).\n\
00271 #\n\
00272 # Each joint is uniquely identified by its name\n\
00273 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00274 # in one message have to be recorded at the same time.\n\
00275 #\n\
00276 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00277 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00278 # effort associated with them, you can leave the effort array empty. \n\
00279 #\n\
00280 # All arrays in this message should have the same size, or be empty.\n\
00281 # This is the only way to uniquely associate the joint name with the correct\n\
00282 # states.\n\
00283 \n\
00284 \n\
00285 Header header\n\
00286 \n\
00287 string[] name\n\
00288 float64[] position\n\
00289 float64[] velocity\n\
00290 float64[] effort\n\
00291 \n\
00292 ================================================================================\n\
00293 MSG: motion_planning_msgs/MultiDOFJointState\n\
00294 #A representation of a multi-dof joint state\n\
00295 time stamp\n\
00296 string[] joint_names\n\
00297 string[] frame_ids\n\
00298 string[] child_frame_ids\n\
00299 geometry_msgs/Pose[] poses\n\
00300 \n\
00301 ================================================================================\n\
00302 MSG: motion_planning_msgs/Constraints\n\
00303 # This message contains a list of motion planning constraints.\n\
00304 \n\
00305 motion_planning_msgs/JointConstraint[] joint_constraints\n\
00306 motion_planning_msgs/PositionConstraint[] position_constraints\n\
00307 motion_planning_msgs/OrientationConstraint[] orientation_constraints\n\
00308 motion_planning_msgs/VisibilityConstraint[] visibility_constraints\n\
00309 \n\
00310 ================================================================================\n\
00311 MSG: motion_planning_msgs/JointConstraint\n\
00312 # Constrain the position of a joint to be within a certain bound\n\
00313 string joint_name\n\
00314 \n\
00315 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]\n\
00316 float64 position\n\
00317 float64 tolerance_above\n\
00318 float64 tolerance_below\n\
00319 \n\
00320 # A weighting factor for this constraint\n\
00321 float64 weight\n\
00322 ================================================================================\n\
00323 MSG: motion_planning_msgs/PositionConstraint\n\
00324 # This message contains the definition of a position constraint.\n\
00325 Header header\n\
00326 \n\
00327 # The robot link this constraint refers to\n\
00328 string link_name\n\
00329 \n\
00330 # The offset (in the link frame) for the target point on the link we are planning for\n\
00331 geometry_msgs/Point target_point_offset\n\
00332 \n\
00333 # The nominal/target position for the point we are planning for\n\
00334 geometry_msgs/Point position\n\
00335 \n\
00336 # The shape of the bounded region that constrains the position of the end-effector\n\
00337 # This region is always centered at the position defined above\n\
00338 geometric_shapes_msgs/Shape constraint_region_shape\n\
00339 \n\
00340 # The orientation of the bounded region that constrains the position of the end-effector. \n\
00341 # This allows the specification of non-axis aligned constraints\n\
00342 geometry_msgs/Quaternion constraint_region_orientation\n\
00343 \n\
00344 # Constraint weighting factor - a weight for this constraint\n\
00345 float64 weight\n\
00346 ================================================================================\n\
00347 MSG: motion_planning_msgs/OrientationConstraint\n\
00348 # This message contains the definition of an orientation constraint.\n\
00349 Header header\n\
00350 \n\
00351 # The robot link this constraint refers to\n\
00352 string link_name\n\
00353 \n\
00354 # The type of the constraint\n\
00355 int32 type\n\
00356 int32 LINK_FRAME=0\n\
00357 int32 HEADER_FRAME=1\n\
00358 \n\
00359 # The desired orientation of the robot link specified as a quaternion\n\
00360 geometry_msgs/Quaternion orientation\n\
00361 \n\
00362 # optional RPY error tolerances specified if \n\
00363 float64 absolute_roll_tolerance\n\
00364 float64 absolute_pitch_tolerance\n\
00365 float64 absolute_yaw_tolerance\n\
00366 \n\
00367 # Constraint weighting factor - a weight for this constraint\n\
00368 float64 weight\n\
00369 \n\
00370 ================================================================================\n\
00371 MSG: motion_planning_msgs/VisibilityConstraint\n\
00372 # This message contains the definition of a visibility constraint.\n\
00373 Header header\n\
00374 \n\
00375 # The point stamped target that needs to be kept within view of the sensor\n\
00376 geometry_msgs/PointStamped target\n\
00377 \n\
00378 # The local pose of the frame in which visibility is to be maintained\n\
00379 # The frame id should represent the robot link to which the sensor is attached\n\
00380 # The visual axis of the sensor is assumed to be along the X axis of this frame\n\
00381 geometry_msgs/PoseStamped sensor_pose\n\
00382 \n\
00383 # The deviation (in radians) that will be tolerated\n\
00384 # Constraint error will be measured as the solid angle between the \n\
00385 # X axis of the frame defined above and the vector between the origin \n\
00386 # of the frame defined above and the target location\n\
00387 float64 absolute_tolerance\n\
00388 \n\
00389 \n\
00390 ================================================================================\n\
00391 MSG: geometry_msgs/PointStamped\n\
00392 # This represents a Point with reference coordinate frame and timestamp\n\
00393 Header header\n\
00394 Point point\n\
00395 \n\
00396 ================================================================================\n\
00397 MSG: motion_planning_msgs/AllowedContactSpecification\n\
00398 # The names of the regions\n\
00399 string name\n\
00400 \n\
00401 # The shape of the region in the environment\n\
00402 geometric_shapes_msgs/Shape shape\n\
00403 \n\
00404 # The pose of the space defining the region\n\
00405 geometry_msgs/PoseStamped pose_stamped\n\
00406 \n\
00407 # The set of links that will be allowed to have penetration contact within this region\n\
00408 string[] link_names\n\
00409 \n\
00410 # The maximum penetration depth allowed for every link\n\
00411 float64 penetration_depth\n\
00412 ================================================================================\n\
00413 MSG: motion_planning_msgs/OrderedCollisionOperations\n\
00414 # A set of collision operations that will be performed in the order they are specified\n\
00415 CollisionOperation[] collision_operations\n\
00416 ================================================================================\n\
00417 MSG: motion_planning_msgs/CollisionOperation\n\
00418 # A definition of a collision operation\n\
00419 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\
00420 # between the gripper and all objects in the collision space\n\
00421 \n\
00422 string object1\n\
00423 string object2\n\
00424 string COLLISION_SET_ALL=\"all\"\n\
00425 string COLLISION_SET_OBJECTS=\"objects\"\n\
00426 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\
00427 \n\
00428 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\
00429 float64 penetration_distance\n\
00430 \n\
00431 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\
00432 int32 operation\n\
00433 int32 DISABLE=0\n\
00434 int32 ENABLE=1\n\
00435 \n\
00436 ================================================================================\n\
00437 MSG: motion_planning_msgs/LinkPadding\n\
00438 #name for the link\n\
00439 string link_name\n\
00440 \n\
00441 # padding to apply to the link\n\
00442 float64 padding\n\
00443 \n\
00444 ================================================================================\n\
00445 MSG: move_arm_msgs/MoveArmActionResult\n\
00446 \n\
00447 Header header\n\
00448 actionlib_msgs/GoalStatus status\n\
00449 MoveArmResult result\n\
00450 \n\
00451 ================================================================================\n\
00452 MSG: actionlib_msgs/GoalStatus\n\
00453 GoalID goal_id\n\
00454 uint8 status\n\
00455 uint8 PENDING = 0 # The goal has yet to be processed by the action server\n\
00456 uint8 ACTIVE = 1 # The goal is currently being processed by the action server\n\
00457 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing\n\
00458 # and has since completed its execution (Terminal State)\n\
00459 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)\n\
00460 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due\n\
00461 # to some failure (Terminal State)\n\
00462 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,\n\
00463 # because the goal was unattainable or invalid (Terminal State)\n\
00464 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing\n\
00465 # and has not yet completed execution\n\
00466 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,\n\
00467 # but the action server has not yet confirmed that the goal is canceled\n\
00468 uint8 RECALLED = 8 # The goal received a cancel request before it started executing\n\
00469 # and was successfully cancelled (Terminal State)\n\
00470 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be\n\
00471 # sent over the wire by an action server\n\
00472 \n\
00473 #Allow for the user to associate a string with GoalStatus for debugging\n\
00474 string text\n\
00475 \n\
00476 \n\
00477 ================================================================================\n\
00478 MSG: move_arm_msgs/MoveArmResult\n\
00479 # An error code reflecting what went wrong\n\
00480 motion_planning_msgs/ArmNavigationErrorCodes error_code\n\
00481 \n\
00482 planning_environment_msgs/ContactInformation[] contacts\n\
00483 ================================================================================\n\
00484 MSG: motion_planning_msgs/ArmNavigationErrorCodes\n\
00485 int32 val\n\
00486 \n\
00487 # overall behavior\n\
00488 int32 PLANNING_FAILED=-1\n\
00489 int32 SUCCESS=1\n\
00490 int32 TIMED_OUT=-2\n\
00491 \n\
00492 # start state errors\n\
00493 int32 START_STATE_IN_COLLISION=-3\n\
00494 int32 START_STATE_VIOLATES_PATH_CONSTRAINTS=-4\n\
00495 \n\
00496 # goal errors\n\
00497 int32 GOAL_IN_COLLISION=-5\n\
00498 int32 GOAL_VIOLATES_PATH_CONSTRAINTS=-6\n\
00499 \n\
00500 # robot state\n\
00501 int32 INVALID_ROBOT_STATE=-7\n\
00502 int32 INCOMPLETE_ROBOT_STATE=-8\n\
00503 \n\
00504 # planning request errors\n\
00505 int32 INVALID_PLANNER_ID=-9\n\
00506 int32 INVALID_NUM_PLANNING_ATTEMPTS=-10\n\
00507 int32 INVALID_ALLOWED_PLANNING_TIME=-11\n\
00508 int32 INVALID_GROUP_NAME=-12\n\
00509 int32 INVALID_GOAL_JOINT_CONSTRAINTS=-13\n\
00510 int32 INVALID_GOAL_POSITION_CONSTRAINTS=-14\n\
00511 int32 INVALID_GOAL_ORIENTATION_CONSTRAINTS=-15\n\
00512 int32 INVALID_PATH_JOINT_CONSTRAINTS=-16\n\
00513 int32 INVALID_PATH_POSITION_CONSTRAINTS=-17\n\
00514 int32 INVALID_PATH_ORIENTATION_CONSTRAINTS=-18\n\
00515 \n\
00516 # state/trajectory monitor errors\n\
00517 int32 INVALID_TRAJECTORY=-19\n\
00518 int32 INVALID_INDEX=-20\n\
00519 int32 JOINT_LIMITS_VIOLATED=-21\n\
00520 int32 PATH_CONSTRAINTS_VIOLATED=-22\n\
00521 int32 COLLISION_CONSTRAINTS_VIOLATED=-23\n\
00522 int32 GOAL_CONSTRAINTS_VIOLATED=-24\n\
00523 int32 JOINTS_NOT_MOVING=-25\n\
00524 int32 TRAJECTORY_CONTROLLER_FAILED=-26\n\
00525 \n\
00526 # system errors\n\
00527 int32 FRAME_TRANSFORM_FAILURE=-27\n\
00528 int32 COLLISION_CHECKING_UNAVAILABLE=-28\n\
00529 int32 ROBOT_STATE_STALE=-29\n\
00530 int32 SENSOR_INFO_STALE=-30\n\
00531 \n\
00532 # kinematics errors\n\
00533 int32 NO_IK_SOLUTION=-31\n\
00534 int32 INVALID_LINK_NAME=-32\n\
00535 int32 IK_LINK_IN_COLLISION=-33\n\
00536 int32 NO_FK_SOLUTION=-34\n\
00537 int32 KINEMATICS_STATE_IN_COLLISION=-35\n\
00538 \n\
00539 # general errors\n\
00540 int32 INVALID_TIMEOUT=-36\n\
00541 \n\
00542 \n\
00543 ================================================================================\n\
00544 MSG: planning_environment_msgs/ContactInformation\n\
00545 # Standard ROS header contains information \n\
00546 # about the frame in which this \n\
00547 # contact is specified\n\
00548 Header header\n\
00549 \n\
00550 # Position of the contact point\n\
00551 geometry_msgs/Point position\n\
00552 \n\
00553 # Normal corresponding to the contact point\n\
00554 geometry_msgs/Vector3 normal \n\
00555 \n\
00556 # Depth of contact point\n\
00557 float64 depth\n\
00558 \n\
00559 # Name of the first body that is in contact\n\
00560 # This could be a link or a namespace that represents a body\n\
00561 string contact_body_1\n\
00562 string attached_body_1\n\
00563 uint32 body_type_1\n\
00564 \n\
00565 # Name of the second body that is in contact\n\
00566 # This could be a link or a namespace that represents a body\n\
00567 string contact_body_2\n\
00568 string attached_body_2\n\
00569 uint32 body_type_2\n\
00570 \n\
00571 uint32 ROBOT_LINK=0\n\
00572 uint32 OBJECT=1\n\
00573 uint32 ATTACHED_BODY=2\n\
00574 ================================================================================\n\
00575 MSG: geometry_msgs/Vector3\n\
00576 # This represents a vector in free space. \n\
00577 \n\
00578 float64 x\n\
00579 float64 y\n\
00580 float64 z\n\
00581 ================================================================================\n\
00582 MSG: move_arm_msgs/MoveArmActionFeedback\n\
00583 \n\
00584 Header header\n\
00585 actionlib_msgs/GoalStatus status\n\
00586 MoveArmFeedback feedback\n\
00587 \n\
00588 ================================================================================\n\
00589 MSG: move_arm_msgs/MoveArmFeedback\n\
00590 # The internal state that the move arm action currently is in\n\
00591 string state\n\
00592 \n\
00593 # Time to completion - this is a combination of requested planning time and trajectory completion time\n\
00594 duration time_to_completion\n\
00595 \n\
00596 "; }
00597 public:
00598 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00599
00600 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00601
00602 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00603 {
00604 ros::serialization::OStream stream(write_ptr, 1000000000);
00605 ros::serialization::serialize(stream, action_goal);
00606 ros::serialization::serialize(stream, action_result);
00607 ros::serialization::serialize(stream, action_feedback);
00608 return stream.getData();
00609 }
00610
00611 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00612 {
00613 ros::serialization::IStream stream(read_ptr, 1000000000);
00614 ros::serialization::deserialize(stream, action_goal);
00615 ros::serialization::deserialize(stream, action_result);
00616 ros::serialization::deserialize(stream, action_feedback);
00617 return stream.getData();
00618 }
00619
00620 ROS_DEPRECATED virtual uint32_t serializationLength() const
00621 {
00622 uint32_t size = 0;
00623 size += ros::serialization::serializationLength(action_goal);
00624 size += ros::serialization::serializationLength(action_result);
00625 size += ros::serialization::serializationLength(action_feedback);
00626 return size;
00627 }
00628
00629 typedef boost::shared_ptr< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> > Ptr;
00630 typedef boost::shared_ptr< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> const> ConstPtr;
00631 };
00632 typedef ::move_arm_msgs::MoveArmAction_<std::allocator<void> > MoveArmAction;
00633
00634 typedef boost::shared_ptr< ::move_arm_msgs::MoveArmAction> MoveArmActionPtr;
00635 typedef boost::shared_ptr< ::move_arm_msgs::MoveArmAction const> MoveArmActionConstPtr;
00636
00637
00638 template<typename ContainerAllocator>
00639 std::ostream& operator<<(std::ostream& s, const ::move_arm_msgs::MoveArmAction_<ContainerAllocator> & v)
00640 {
00641 ros::message_operations::Printer< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> >::stream(s, "", v);
00642 return s;}
00643
00644 }
00645
00646 namespace ros
00647 {
00648 namespace message_traits
00649 {
00650 template<class ContainerAllocator>
00651 struct MD5Sum< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> > {
00652 static const char* value()
00653 {
00654 return "ca7e1e410f07818a3026274fd67a2f63";
00655 }
00656
00657 static const char* value(const ::move_arm_msgs::MoveArmAction_<ContainerAllocator> &) { return value(); }
00658 static const uint64_t static_value1 = 0xca7e1e410f07818aULL;
00659 static const uint64_t static_value2 = 0x3026274fd67a2f63ULL;
00660 };
00661
00662 template<class ContainerAllocator>
00663 struct DataType< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> > {
00664 static const char* value()
00665 {
00666 return "move_arm_msgs/MoveArmAction";
00667 }
00668
00669 static const char* value(const ::move_arm_msgs::MoveArmAction_<ContainerAllocator> &) { return value(); }
00670 };
00671
00672 template<class ContainerAllocator>
00673 struct Definition< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> > {
00674 static const char* value()
00675 {
00676 return "\n\
00677 MoveArmActionGoal action_goal\n\
00678 MoveArmActionResult action_result\n\
00679 MoveArmActionFeedback action_feedback\n\
00680 \n\
00681 ================================================================================\n\
00682 MSG: move_arm_msgs/MoveArmActionGoal\n\
00683 \n\
00684 Header header\n\
00685 actionlib_msgs/GoalID goal_id\n\
00686 MoveArmGoal goal\n\
00687 \n\
00688 ================================================================================\n\
00689 MSG: std_msgs/Header\n\
00690 # Standard metadata for higher-level stamped data types.\n\
00691 # This is generally used to communicate timestamped data \n\
00692 # in a particular coordinate frame.\n\
00693 # \n\
00694 # sequence ID: consecutively increasing ID \n\
00695 uint32 seq\n\
00696 #Two-integer timestamp that is expressed as:\n\
00697 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00698 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00699 # time-handling sugar is provided by the client library\n\
00700 time stamp\n\
00701 #Frame this data is associated with\n\
00702 # 0: no frame\n\
00703 # 1: global frame\n\
00704 string frame_id\n\
00705 \n\
00706 ================================================================================\n\
00707 MSG: actionlib_msgs/GoalID\n\
00708 # The stamp should store the time at which this goal was requested.\n\
00709 # It is used by an action server when it tries to preempt all\n\
00710 # goals that were requested before a certain time\n\
00711 time stamp\n\
00712 \n\
00713 # The id provides a way to associate feedback and\n\
00714 # result message with specific goal requests. The id\n\
00715 # specified must be unique.\n\
00716 string id\n\
00717 \n\
00718 \n\
00719 ================================================================================\n\
00720 MSG: move_arm_msgs/MoveArmGoal\n\
00721 # Service name to call for getting a motion plan\n\
00722 # Move arm will call a service on this service name \n\
00723 # using the MotionPlanRequest specified here\n\
00724 string planner_service_name\n\
00725 \n\
00726 # A motion planning request\n\
00727 motion_planning_msgs/MotionPlanRequest motion_plan_request\n\
00728 \n\
00729 # OPTIONAL flag\n\
00730 # Setting this flag to true will allow move_arm to accept plans that do not go all the way to the goal\n\
00731 bool accept_partial_plans\n\
00732 \n\
00733 # OPTIONAL flag\n\
00734 # Setting this flag to true will allow move_arm to accept invalid goals\n\
00735 # This is useful if you are using a planner like CHOMP along with a noisy rapidly changing collision map\n\
00736 # and you would like to plan to a goal near an object.\n\
00737 bool accept_invalid_goals\n\
00738 \n\
00739 # OPTIONAL flag\n\
00740 # Setting this flag to true will disable the call to IK for a pose goal\n\
00741 bool disable_ik\n\
00742 \n\
00743 # OPTIONAL flag\n\
00744 # Setting this flag to true will disable collision monitoring during execution of a trajectory\n\
00745 bool disable_collision_monitoring\n\
00746 ================================================================================\n\
00747 MSG: motion_planning_msgs/MotionPlanRequest\n\
00748 # This service contains the definition for a request to the motion\n\
00749 # planner and the output it provides\n\
00750 \n\
00751 # Parameters for the workspace that the planner should work inside\n\
00752 motion_planning_msgs/WorkspaceParameters workspace_parameters\n\
00753 \n\
00754 # Starting state updates. If certain joints should be considered\n\
00755 # at positions other than the current ones, these positions should\n\
00756 # be set here\n\
00757 motion_planning_msgs/RobotState start_state\n\
00758 \n\
00759 # The goal state for the model to plan for. The goal is achieved\n\
00760 # if all constraints are satisfied\n\
00761 motion_planning_msgs/Constraints goal_constraints\n\
00762 \n\
00763 # No state at any point along the path in the produced motion plan will violate these constraints\n\
00764 motion_planning_msgs/Constraints path_constraints\n\
00765 \n\
00766 # A specification for regions where contact is \n\
00767 # allowed up to a certain depth\n\
00768 # Any collision within this set of regions with a link \n\
00769 # specified in the message will be allowed if\n\
00770 # it is less than the penetration depth specified in the message\n\
00771 AllowedContactSpecification[] allowed_contacts\n\
00772 \n\
00773 # A set of ordered collision operations, \n\
00774 # these are applied to all links, objects, \n\
00775 # namespaces in the collision space\n\
00776 OrderedCollisionOperations ordered_collision_operations\n\
00777 \n\
00778 # Specifies a set of links and paddings to change from the default\n\
00779 # specified in the yaml file\n\
00780 motion_planning_msgs/LinkPadding[] link_padding\n\
00781 \n\
00782 # The name of the motion planner to use. If no name is specified,\n\
00783 # a default motion planner will be used\n\
00784 string planner_id\n\
00785 \n\
00786 # The name of the group of joints on which this planner is operating\n\
00787 string group_name\n\
00788 \n\
00789 # The number of times this plan is to be computed. Shortest solution\n\
00790 # will be reported.\n\
00791 int32 num_planning_attempts\n\
00792 \n\
00793 # The maximum amount of time the motion planner is allowed to plan for\n\
00794 duration allowed_planning_time\n\
00795 \n\
00796 # An expected path duration (in seconds) along with an expected discretization of the path allows the planner to determine the discretization of the trajectory that it returns\n\
00797 duration expected_path_duration\n\
00798 duration expected_path_dt\n\
00799 \n\
00800 ================================================================================\n\
00801 MSG: motion_planning_msgs/WorkspaceParameters\n\
00802 # This message contains a set of parameters useful in\n\
00803 # setting up the workspace for planning\n\
00804 geometric_shapes_msgs/Shape workspace_region_shape\n\
00805 geometry_msgs/PoseStamped workspace_region_pose\n\
00806 \n\
00807 \n\
00808 ================================================================================\n\
00809 MSG: geometric_shapes_msgs/Shape\n\
00810 byte SPHERE=0\n\
00811 byte BOX=1\n\
00812 byte CYLINDER=2\n\
00813 byte MESH=3\n\
00814 \n\
00815 byte type\n\
00816 \n\
00817 \n\
00818 #### define sphere, box, cylinder ####\n\
00819 # the origin of each shape is considered at the shape's center\n\
00820 \n\
00821 # for sphere\n\
00822 # radius := dimensions[0]\n\
00823 \n\
00824 # for cylinder\n\
00825 # radius := dimensions[0]\n\
00826 # length := dimensions[1]\n\
00827 # the length is along the Z axis\n\
00828 \n\
00829 # for box\n\
00830 # size_x := dimensions[0]\n\
00831 # size_y := dimensions[1]\n\
00832 # size_z := dimensions[2]\n\
00833 float64[] dimensions\n\
00834 \n\
00835 \n\
00836 #### define mesh ####\n\
00837 \n\
00838 # list of triangles; triangle k is defined by tre vertices located\n\
00839 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]\n\
00840 int32[] triangles\n\
00841 geometry_msgs/Point[] vertices\n\
00842 \n\
00843 ================================================================================\n\
00844 MSG: geometry_msgs/Point\n\
00845 # This contains the position of a point in free space\n\
00846 float64 x\n\
00847 float64 y\n\
00848 float64 z\n\
00849 \n\
00850 ================================================================================\n\
00851 MSG: geometry_msgs/PoseStamped\n\
00852 # A Pose with reference coordinate frame and timestamp\n\
00853 Header header\n\
00854 Pose pose\n\
00855 \n\
00856 ================================================================================\n\
00857 MSG: geometry_msgs/Pose\n\
00858 # A representation of pose in free space, composed of postion and orientation. \n\
00859 Point position\n\
00860 Quaternion orientation\n\
00861 \n\
00862 ================================================================================\n\
00863 MSG: geometry_msgs/Quaternion\n\
00864 # This represents an orientation in free space in quaternion form.\n\
00865 \n\
00866 float64 x\n\
00867 float64 y\n\
00868 float64 z\n\
00869 float64 w\n\
00870 \n\
00871 ================================================================================\n\
00872 MSG: motion_planning_msgs/RobotState\n\
00873 # This message contains information about the robot state, i.e. the positions of its joints and links\n\
00874 sensor_msgs/JointState joint_state\n\
00875 motion_planning_msgs/MultiDOFJointState multi_dof_joint_state\n\
00876 ================================================================================\n\
00877 MSG: sensor_msgs/JointState\n\
00878 # This is a message that holds data to describe the state of a set of torque controlled joints. \n\
00879 #\n\
00880 # The state of each joint (revolute or prismatic) is defined by:\n\
00881 # * the position of the joint (rad or m),\n\
00882 # * the velocity of the joint (rad/s or m/s) and \n\
00883 # * the effort that is applied in the joint (Nm or N).\n\
00884 #\n\
00885 # Each joint is uniquely identified by its name\n\
00886 # The header specifies the time at which the joint states were recorded. All the joint states\n\
00887 # in one message have to be recorded at the same time.\n\
00888 #\n\
00889 # This message consists of a multiple arrays, one for each part of the joint state. \n\
00890 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
00891 # effort associated with them, you can leave the effort array empty. \n\
00892 #\n\
00893 # All arrays in this message should have the same size, or be empty.\n\
00894 # This is the only way to uniquely associate the joint name with the correct\n\
00895 # states.\n\
00896 \n\
00897 \n\
00898 Header header\n\
00899 \n\
00900 string[] name\n\
00901 float64[] position\n\
00902 float64[] velocity\n\
00903 float64[] effort\n\
00904 \n\
00905 ================================================================================\n\
00906 MSG: motion_planning_msgs/MultiDOFJointState\n\
00907 #A representation of a multi-dof joint state\n\
00908 time stamp\n\
00909 string[] joint_names\n\
00910 string[] frame_ids\n\
00911 string[] child_frame_ids\n\
00912 geometry_msgs/Pose[] poses\n\
00913 \n\
00914 ================================================================================\n\
00915 MSG: motion_planning_msgs/Constraints\n\
00916 # This message contains a list of motion planning constraints.\n\
00917 \n\
00918 motion_planning_msgs/JointConstraint[] joint_constraints\n\
00919 motion_planning_msgs/PositionConstraint[] position_constraints\n\
00920 motion_planning_msgs/OrientationConstraint[] orientation_constraints\n\
00921 motion_planning_msgs/VisibilityConstraint[] visibility_constraints\n\
00922 \n\
00923 ================================================================================\n\
00924 MSG: motion_planning_msgs/JointConstraint\n\
00925 # Constrain the position of a joint to be within a certain bound\n\
00926 string joint_name\n\
00927 \n\
00928 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]\n\
00929 float64 position\n\
00930 float64 tolerance_above\n\
00931 float64 tolerance_below\n\
00932 \n\
00933 # A weighting factor for this constraint\n\
00934 float64 weight\n\
00935 ================================================================================\n\
00936 MSG: motion_planning_msgs/PositionConstraint\n\
00937 # This message contains the definition of a position constraint.\n\
00938 Header header\n\
00939 \n\
00940 # The robot link this constraint refers to\n\
00941 string link_name\n\
00942 \n\
00943 # The offset (in the link frame) for the target point on the link we are planning for\n\
00944 geometry_msgs/Point target_point_offset\n\
00945 \n\
00946 # The nominal/target position for the point we are planning for\n\
00947 geometry_msgs/Point position\n\
00948 \n\
00949 # The shape of the bounded region that constrains the position of the end-effector\n\
00950 # This region is always centered at the position defined above\n\
00951 geometric_shapes_msgs/Shape constraint_region_shape\n\
00952 \n\
00953 # The orientation of the bounded region that constrains the position of the end-effector. \n\
00954 # This allows the specification of non-axis aligned constraints\n\
00955 geometry_msgs/Quaternion constraint_region_orientation\n\
00956 \n\
00957 # Constraint weighting factor - a weight for this constraint\n\
00958 float64 weight\n\
00959 ================================================================================\n\
00960 MSG: motion_planning_msgs/OrientationConstraint\n\
00961 # This message contains the definition of an orientation constraint.\n\
00962 Header header\n\
00963 \n\
00964 # The robot link this constraint refers to\n\
00965 string link_name\n\
00966 \n\
00967 # The type of the constraint\n\
00968 int32 type\n\
00969 int32 LINK_FRAME=0\n\
00970 int32 HEADER_FRAME=1\n\
00971 \n\
00972 # The desired orientation of the robot link specified as a quaternion\n\
00973 geometry_msgs/Quaternion orientation\n\
00974 \n\
00975 # optional RPY error tolerances specified if \n\
00976 float64 absolute_roll_tolerance\n\
00977 float64 absolute_pitch_tolerance\n\
00978 float64 absolute_yaw_tolerance\n\
00979 \n\
00980 # Constraint weighting factor - a weight for this constraint\n\
00981 float64 weight\n\
00982 \n\
00983 ================================================================================\n\
00984 MSG: motion_planning_msgs/VisibilityConstraint\n\
00985 # This message contains the definition of a visibility constraint.\n\
00986 Header header\n\
00987 \n\
00988 # The point stamped target that needs to be kept within view of the sensor\n\
00989 geometry_msgs/PointStamped target\n\
00990 \n\
00991 # The local pose of the frame in which visibility is to be maintained\n\
00992 # The frame id should represent the robot link to which the sensor is attached\n\
00993 # The visual axis of the sensor is assumed to be along the X axis of this frame\n\
00994 geometry_msgs/PoseStamped sensor_pose\n\
00995 \n\
00996 # The deviation (in radians) that will be tolerated\n\
00997 # Constraint error will be measured as the solid angle between the \n\
00998 # X axis of the frame defined above and the vector between the origin \n\
00999 # of the frame defined above and the target location\n\
01000 float64 absolute_tolerance\n\
01001 \n\
01002 \n\
01003 ================================================================================\n\
01004 MSG: geometry_msgs/PointStamped\n\
01005 # This represents a Point with reference coordinate frame and timestamp\n\
01006 Header header\n\
01007 Point point\n\
01008 \n\
01009 ================================================================================\n\
01010 MSG: motion_planning_msgs/AllowedContactSpecification\n\
01011 # The names of the regions\n\
01012 string name\n\
01013 \n\
01014 # The shape of the region in the environment\n\
01015 geometric_shapes_msgs/Shape shape\n\
01016 \n\
01017 # The pose of the space defining the region\n\
01018 geometry_msgs/PoseStamped pose_stamped\n\
01019 \n\
01020 # The set of links that will be allowed to have penetration contact within this region\n\
01021 string[] link_names\n\
01022 \n\
01023 # The maximum penetration depth allowed for every link\n\
01024 float64 penetration_depth\n\
01025 ================================================================================\n\
01026 MSG: motion_planning_msgs/OrderedCollisionOperations\n\
01027 # A set of collision operations that will be performed in the order they are specified\n\
01028 CollisionOperation[] collision_operations\n\
01029 ================================================================================\n\
01030 MSG: motion_planning_msgs/CollisionOperation\n\
01031 # A definition of a collision operation\n\
01032 # E.g. (\"gripper\",COLLISION_SET_ALL,ENABLE) will enable collisions \n\
01033 # between the gripper and all objects in the collision space\n\
01034 \n\
01035 string object1\n\
01036 string object2\n\
01037 string COLLISION_SET_ALL=\"all\"\n\
01038 string COLLISION_SET_OBJECTS=\"objects\"\n\
01039 string COLLISION_SET_ATTACHED_OBJECTS=\"attached\"\n\
01040 \n\
01041 # The penetration distance to which collisions are allowed. This is 0.0 by default.\n\
01042 float64 penetration_distance\n\
01043 \n\
01044 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above\n\
01045 int32 operation\n\
01046 int32 DISABLE=0\n\
01047 int32 ENABLE=1\n\
01048 \n\
01049 ================================================================================\n\
01050 MSG: motion_planning_msgs/LinkPadding\n\
01051 #name for the link\n\
01052 string link_name\n\
01053 \n\
01054 # padding to apply to the link\n\
01055 float64 padding\n\
01056 \n\
01057 ================================================================================\n\
01058 MSG: move_arm_msgs/MoveArmActionResult\n\
01059 \n\
01060 Header header\n\
01061 actionlib_msgs/GoalStatus status\n\
01062 MoveArmResult result\n\
01063 \n\
01064 ================================================================================\n\
01065 MSG: actionlib_msgs/GoalStatus\n\
01066 GoalID goal_id\n\
01067 uint8 status\n\
01068 uint8 PENDING = 0 # The goal has yet to be processed by the action server\n\
01069 uint8 ACTIVE = 1 # The goal is currently being processed by the action server\n\
01070 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing\n\
01071 # and has since completed its execution (Terminal State)\n\
01072 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State)\n\
01073 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due\n\
01074 # to some failure (Terminal State)\n\
01075 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed,\n\
01076 # because the goal was unattainable or invalid (Terminal State)\n\
01077 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing\n\
01078 # and has not yet completed execution\n\
01079 uint8 RECALLING = 7 # The goal received a cancel request before it started executing,\n\
01080 # but the action server has not yet confirmed that the goal is canceled\n\
01081 uint8 RECALLED = 8 # The goal received a cancel request before it started executing\n\
01082 # and was successfully cancelled (Terminal State)\n\
01083 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be\n\
01084 # sent over the wire by an action server\n\
01085 \n\
01086 #Allow for the user to associate a string with GoalStatus for debugging\n\
01087 string text\n\
01088 \n\
01089 \n\
01090 ================================================================================\n\
01091 MSG: move_arm_msgs/MoveArmResult\n\
01092 # An error code reflecting what went wrong\n\
01093 motion_planning_msgs/ArmNavigationErrorCodes error_code\n\
01094 \n\
01095 planning_environment_msgs/ContactInformation[] contacts\n\
01096 ================================================================================\n\
01097 MSG: motion_planning_msgs/ArmNavigationErrorCodes\n\
01098 int32 val\n\
01099 \n\
01100 # overall behavior\n\
01101 int32 PLANNING_FAILED=-1\n\
01102 int32 SUCCESS=1\n\
01103 int32 TIMED_OUT=-2\n\
01104 \n\
01105 # start state errors\n\
01106 int32 START_STATE_IN_COLLISION=-3\n\
01107 int32 START_STATE_VIOLATES_PATH_CONSTRAINTS=-4\n\
01108 \n\
01109 # goal errors\n\
01110 int32 GOAL_IN_COLLISION=-5\n\
01111 int32 GOAL_VIOLATES_PATH_CONSTRAINTS=-6\n\
01112 \n\
01113 # robot state\n\
01114 int32 INVALID_ROBOT_STATE=-7\n\
01115 int32 INCOMPLETE_ROBOT_STATE=-8\n\
01116 \n\
01117 # planning request errors\n\
01118 int32 INVALID_PLANNER_ID=-9\n\
01119 int32 INVALID_NUM_PLANNING_ATTEMPTS=-10\n\
01120 int32 INVALID_ALLOWED_PLANNING_TIME=-11\n\
01121 int32 INVALID_GROUP_NAME=-12\n\
01122 int32 INVALID_GOAL_JOINT_CONSTRAINTS=-13\n\
01123 int32 INVALID_GOAL_POSITION_CONSTRAINTS=-14\n\
01124 int32 INVALID_GOAL_ORIENTATION_CONSTRAINTS=-15\n\
01125 int32 INVALID_PATH_JOINT_CONSTRAINTS=-16\n\
01126 int32 INVALID_PATH_POSITION_CONSTRAINTS=-17\n\
01127 int32 INVALID_PATH_ORIENTATION_CONSTRAINTS=-18\n\
01128 \n\
01129 # state/trajectory monitor errors\n\
01130 int32 INVALID_TRAJECTORY=-19\n\
01131 int32 INVALID_INDEX=-20\n\
01132 int32 JOINT_LIMITS_VIOLATED=-21\n\
01133 int32 PATH_CONSTRAINTS_VIOLATED=-22\n\
01134 int32 COLLISION_CONSTRAINTS_VIOLATED=-23\n\
01135 int32 GOAL_CONSTRAINTS_VIOLATED=-24\n\
01136 int32 JOINTS_NOT_MOVING=-25\n\
01137 int32 TRAJECTORY_CONTROLLER_FAILED=-26\n\
01138 \n\
01139 # system errors\n\
01140 int32 FRAME_TRANSFORM_FAILURE=-27\n\
01141 int32 COLLISION_CHECKING_UNAVAILABLE=-28\n\
01142 int32 ROBOT_STATE_STALE=-29\n\
01143 int32 SENSOR_INFO_STALE=-30\n\
01144 \n\
01145 # kinematics errors\n\
01146 int32 NO_IK_SOLUTION=-31\n\
01147 int32 INVALID_LINK_NAME=-32\n\
01148 int32 IK_LINK_IN_COLLISION=-33\n\
01149 int32 NO_FK_SOLUTION=-34\n\
01150 int32 KINEMATICS_STATE_IN_COLLISION=-35\n\
01151 \n\
01152 # general errors\n\
01153 int32 INVALID_TIMEOUT=-36\n\
01154 \n\
01155 \n\
01156 ================================================================================\n\
01157 MSG: planning_environment_msgs/ContactInformation\n\
01158 # Standard ROS header contains information \n\
01159 # about the frame in which this \n\
01160 # contact is specified\n\
01161 Header header\n\
01162 \n\
01163 # Position of the contact point\n\
01164 geometry_msgs/Point position\n\
01165 \n\
01166 # Normal corresponding to the contact point\n\
01167 geometry_msgs/Vector3 normal \n\
01168 \n\
01169 # Depth of contact point\n\
01170 float64 depth\n\
01171 \n\
01172 # Name of the first body that is in contact\n\
01173 # This could be a link or a namespace that represents a body\n\
01174 string contact_body_1\n\
01175 string attached_body_1\n\
01176 uint32 body_type_1\n\
01177 \n\
01178 # Name of the second body that is in contact\n\
01179 # This could be a link or a namespace that represents a body\n\
01180 string contact_body_2\n\
01181 string attached_body_2\n\
01182 uint32 body_type_2\n\
01183 \n\
01184 uint32 ROBOT_LINK=0\n\
01185 uint32 OBJECT=1\n\
01186 uint32 ATTACHED_BODY=2\n\
01187 ================================================================================\n\
01188 MSG: geometry_msgs/Vector3\n\
01189 # This represents a vector in free space. \n\
01190 \n\
01191 float64 x\n\
01192 float64 y\n\
01193 float64 z\n\
01194 ================================================================================\n\
01195 MSG: move_arm_msgs/MoveArmActionFeedback\n\
01196 \n\
01197 Header header\n\
01198 actionlib_msgs/GoalStatus status\n\
01199 MoveArmFeedback feedback\n\
01200 \n\
01201 ================================================================================\n\
01202 MSG: move_arm_msgs/MoveArmFeedback\n\
01203 # The internal state that the move arm action currently is in\n\
01204 string state\n\
01205 \n\
01206 # Time to completion - this is a combination of requested planning time and trajectory completion time\n\
01207 duration time_to_completion\n\
01208 \n\
01209 ";
01210 }
01211
01212 static const char* value(const ::move_arm_msgs::MoveArmAction_<ContainerAllocator> &) { return value(); }
01213 };
01214
01215 }
01216 }
01217
01218 namespace ros
01219 {
01220 namespace serialization
01221 {
01222
01223 template<class ContainerAllocator> struct Serializer< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> >
01224 {
01225 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
01226 {
01227 stream.next(m.action_goal);
01228 stream.next(m.action_result);
01229 stream.next(m.action_feedback);
01230 }
01231
01232 ROS_DECLARE_ALLINONE_SERIALIZER;
01233 };
01234 }
01235 }
01236
01237 namespace ros
01238 {
01239 namespace message_operations
01240 {
01241
01242 template<class ContainerAllocator>
01243 struct Printer< ::move_arm_msgs::MoveArmAction_<ContainerAllocator> >
01244 {
01245 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::move_arm_msgs::MoveArmAction_<ContainerAllocator> & v)
01246 {
01247 s << indent << "action_goal: ";
01248 s << std::endl;
01249 Printer< ::move_arm_msgs::MoveArmActionGoal_<ContainerAllocator> >::stream(s, indent + " ", v.action_goal);
01250 s << indent << "action_result: ";
01251 s << std::endl;
01252 Printer< ::move_arm_msgs::MoveArmActionResult_<ContainerAllocator> >::stream(s, indent + " ", v.action_result);
01253 s << indent << "action_feedback: ";
01254 s << std::endl;
01255 Printer< ::move_arm_msgs::MoveArmActionFeedback_<ContainerAllocator> >::stream(s, indent + " ", v.action_feedback);
01256 }
01257 };
01258
01259
01260 }
01261 }
01262
01263 #endif // MOVE_ARM_MSGS_MESSAGE_MOVEARMACTION_H
01264