00001 """autogenerated by genpy from arm_navigation_msgs/GetJointTrajectoryValidityRequest.msg. Do not edit."""
00002 import sys
00003 python3 = True if sys.hexversion > 0x03000000 else False
00004 import genpy
00005 import struct
00006
00007 import trajectory_msgs.msg
00008 import arm_navigation_msgs.msg
00009 import geometry_msgs.msg
00010 import sensor_msgs.msg
00011 import genpy
00012 import std_msgs.msg
00013
00014 class GetJointTrajectoryValidityRequest(genpy.Message):
00015 _md5sum = "084166b764e3c85269ae9d5ee08f7654"
00016 _type = "arm_navigation_msgs/GetJointTrajectoryValidityRequest"
00017 _has_header = False
00018 _full_text = """
00019 trajectory_msgs/JointTrajectory trajectory
00020
00021
00022
00023
00024
00025
00026
00027 arm_navigation_msgs/RobotState robot_state
00028
00029
00030 bool check_collisions
00031
00032
00033 bool check_path_constraints
00034
00035
00036 bool check_goal_constraints
00037
00038
00039 bool check_joint_limits
00040
00041
00042
00043
00044 bool check_full_trajectory
00045
00046
00047
00048
00049 arm_navigation_msgs/Constraints path_constraints
00050
00051
00052
00053
00054 arm_navigation_msgs/Constraints goal_constraints
00055
00056
00057 ================================================================================
00058 MSG: trajectory_msgs/JointTrajectory
00059 Header header
00060 string[] joint_names
00061 JointTrajectoryPoint[] points
00062 ================================================================================
00063 MSG: std_msgs/Header
00064 # Standard metadata for higher-level stamped data types.
00065 # This is generally used to communicate timestamped data
00066 # in a particular coordinate frame.
00067 #
00068 # sequence ID: consecutively increasing ID
00069 uint32 seq
00070 #Two-integer timestamp that is expressed as:
00071 # * stamp.secs: seconds (stamp_secs) since epoch
00072 # * stamp.nsecs: nanoseconds since stamp_secs
00073 # time-handling sugar is provided by the client library
00074 time stamp
00075 #Frame this data is associated with
00076 # 0: no frame
00077 # 1: global frame
00078 string frame_id
00079
00080 ================================================================================
00081 MSG: trajectory_msgs/JointTrajectoryPoint
00082 float64[] positions
00083 float64[] velocities
00084 float64[] accelerations
00085 duration time_from_start
00086 ================================================================================
00087 MSG: arm_navigation_msgs/RobotState
00088 # This message contains information about the robot state, i.e. the positions of its joints and links
00089 sensor_msgs/JointState joint_state
00090 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state
00091
00092 ================================================================================
00093 MSG: sensor_msgs/JointState
00094 # This is a message that holds data to describe the state of a set of torque controlled joints.
00095 #
00096 # The state of each joint (revolute or prismatic) is defined by:
00097 # * the position of the joint (rad or m),
00098 # * the velocity of the joint (rad/s or m/s) and
00099 # * the effort that is applied in the joint (Nm or N).
00100 #
00101 # Each joint is uniquely identified by its name
00102 # The header specifies the time at which the joint states were recorded. All the joint states
00103 # in one message have to be recorded at the same time.
00104 #
00105 # This message consists of a multiple arrays, one for each part of the joint state.
00106 # The goal is to make each of the fields optional. When e.g. your joints have no
00107 # effort associated with them, you can leave the effort array empty.
00108 #
00109 # All arrays in this message should have the same size, or be empty.
00110 # This is the only way to uniquely associate the joint name with the correct
00111 # states.
00112
00113
00114 Header header
00115
00116 string[] name
00117 float64[] position
00118 float64[] velocity
00119 float64[] effort
00120
00121 ================================================================================
00122 MSG: arm_navigation_msgs/MultiDOFJointState
00123 #A representation of a multi-dof joint state
00124 time stamp
00125 string[] joint_names
00126 string[] frame_ids
00127 string[] child_frame_ids
00128 geometry_msgs/Pose[] poses
00129
00130 ================================================================================
00131 MSG: geometry_msgs/Pose
00132 # A representation of pose in free space, composed of postion and orientation.
00133 Point position
00134 Quaternion orientation
00135
00136 ================================================================================
00137 MSG: geometry_msgs/Point
00138 # This contains the position of a point in free space
00139 float64 x
00140 float64 y
00141 float64 z
00142
00143 ================================================================================
00144 MSG: geometry_msgs/Quaternion
00145 # This represents an orientation in free space in quaternion form.
00146
00147 float64 x
00148 float64 y
00149 float64 z
00150 float64 w
00151
00152 ================================================================================
00153 MSG: arm_navigation_msgs/Constraints
00154 # This message contains a list of motion planning constraints.
00155
00156 arm_navigation_msgs/JointConstraint[] joint_constraints
00157 arm_navigation_msgs/PositionConstraint[] position_constraints
00158 arm_navigation_msgs/OrientationConstraint[] orientation_constraints
00159 arm_navigation_msgs/VisibilityConstraint[] visibility_constraints
00160
00161 ================================================================================
00162 MSG: arm_navigation_msgs/JointConstraint
00163 # Constrain the position of a joint to be within a certain bound
00164 string joint_name
00165
00166 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]
00167 float64 position
00168 float64 tolerance_above
00169 float64 tolerance_below
00170
00171 # A weighting factor for this constraint
00172 float64 weight
00173 ================================================================================
00174 MSG: arm_navigation_msgs/PositionConstraint
00175 # This message contains the definition of a position constraint.
00176 Header header
00177
00178 # The robot link this constraint refers to
00179 string link_name
00180
00181 # The offset (in the link frame) for the target point on the link we are planning for
00182 geometry_msgs/Point target_point_offset
00183
00184 # The nominal/target position for the point we are planning for
00185 geometry_msgs/Point position
00186
00187 # The shape of the bounded region that constrains the position of the end-effector
00188 # This region is always centered at the position defined above
00189 arm_navigation_msgs/Shape constraint_region_shape
00190
00191 # The orientation of the bounded region that constrains the position of the end-effector.
00192 # This allows the specification of non-axis aligned constraints
00193 geometry_msgs/Quaternion constraint_region_orientation
00194
00195 # Constraint weighting factor - a weight for this constraint
00196 float64 weight
00197
00198 ================================================================================
00199 MSG: arm_navigation_msgs/Shape
00200 byte SPHERE=0
00201 byte BOX=1
00202 byte CYLINDER=2
00203 byte MESH=3
00204
00205 byte type
00206
00207
00208 #### define sphere, box, cylinder ####
00209 # the origin of each shape is considered at the shape's center
00210
00211 # for sphere
00212 # radius := dimensions[0]
00213
00214 # for cylinder
00215 # radius := dimensions[0]
00216 # length := dimensions[1]
00217 # the length is along the Z axis
00218
00219 # for box
00220 # size_x := dimensions[0]
00221 # size_y := dimensions[1]
00222 # size_z := dimensions[2]
00223 float64[] dimensions
00224
00225
00226 #### define mesh ####
00227
00228 # list of triangles; triangle k is defined by tre vertices located
00229 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]
00230 int32[] triangles
00231 geometry_msgs/Point[] vertices
00232
00233 ================================================================================
00234 MSG: arm_navigation_msgs/OrientationConstraint
00235 # This message contains the definition of an orientation constraint.
00236 Header header
00237
00238 # The robot link this constraint refers to
00239 string link_name
00240
00241 # The type of the constraint
00242 int32 type
00243 int32 LINK_FRAME=0
00244 int32 HEADER_FRAME=1
00245
00246 # The desired orientation of the robot link specified as a quaternion
00247 geometry_msgs/Quaternion orientation
00248
00249 # optional RPY error tolerances specified if
00250 float64 absolute_roll_tolerance
00251 float64 absolute_pitch_tolerance
00252 float64 absolute_yaw_tolerance
00253
00254 # Constraint weighting factor - a weight for this constraint
00255 float64 weight
00256
00257 ================================================================================
00258 MSG: arm_navigation_msgs/VisibilityConstraint
00259 # This message contains the definition of a visibility constraint.
00260 Header header
00261
00262 # The point stamped target that needs to be kept within view of the sensor
00263 geometry_msgs/PointStamped target
00264
00265 # The local pose of the frame in which visibility is to be maintained
00266 # The frame id should represent the robot link to which the sensor is attached
00267 # The visual axis of the sensor is assumed to be along the X axis of this frame
00268 geometry_msgs/PoseStamped sensor_pose
00269
00270 # The deviation (in radians) that will be tolerated
00271 # Constraint error will be measured as the solid angle between the
00272 # X axis of the frame defined above and the vector between the origin
00273 # of the frame defined above and the target location
00274 float64 absolute_tolerance
00275
00276
00277 ================================================================================
00278 MSG: geometry_msgs/PointStamped
00279 # This represents a Point with reference coordinate frame and timestamp
00280 Header header
00281 Point point
00282
00283 ================================================================================
00284 MSG: geometry_msgs/PoseStamped
00285 # A Pose with reference coordinate frame and timestamp
00286 Header header
00287 Pose pose
00288
00289 """
00290 __slots__ = ['trajectory','robot_state','check_collisions','check_path_constraints','check_goal_constraints','check_joint_limits','check_full_trajectory','path_constraints','goal_constraints']
00291 _slot_types = ['trajectory_msgs/JointTrajectory','arm_navigation_msgs/RobotState','bool','bool','bool','bool','bool','arm_navigation_msgs/Constraints','arm_navigation_msgs/Constraints']
00292
00293 def __init__(self, *args, **kwds):
00294 """
00295 Constructor. Any message fields that are implicitly/explicitly
00296 set to None will be assigned a default value. The recommend
00297 use is keyword arguments as this is more robust to future message
00298 changes. You cannot mix in-order arguments and keyword arguments.
00299
00300 The available fields are:
00301 trajectory,robot_state,check_collisions,check_path_constraints,check_goal_constraints,check_joint_limits,check_full_trajectory,path_constraints,goal_constraints
00302
00303 :param args: complete set of field values, in .msg order
00304 :param kwds: use keyword arguments corresponding to message field names
00305 to set specific fields.
00306 """
00307 if args or kwds:
00308 super(GetJointTrajectoryValidityRequest, self).__init__(*args, **kwds)
00309
00310 if self.trajectory is None:
00311 self.trajectory = trajectory_msgs.msg.JointTrajectory()
00312 if self.robot_state is None:
00313 self.robot_state = arm_navigation_msgs.msg.RobotState()
00314 if self.check_collisions is None:
00315 self.check_collisions = False
00316 if self.check_path_constraints is None:
00317 self.check_path_constraints = False
00318 if self.check_goal_constraints is None:
00319 self.check_goal_constraints = False
00320 if self.check_joint_limits is None:
00321 self.check_joint_limits = False
00322 if self.check_full_trajectory is None:
00323 self.check_full_trajectory = False
00324 if self.path_constraints is None:
00325 self.path_constraints = arm_navigation_msgs.msg.Constraints()
00326 if self.goal_constraints is None:
00327 self.goal_constraints = arm_navigation_msgs.msg.Constraints()
00328 else:
00329 self.trajectory = trajectory_msgs.msg.JointTrajectory()
00330 self.robot_state = arm_navigation_msgs.msg.RobotState()
00331 self.check_collisions = False
00332 self.check_path_constraints = False
00333 self.check_goal_constraints = False
00334 self.check_joint_limits = False
00335 self.check_full_trajectory = False
00336 self.path_constraints = arm_navigation_msgs.msg.Constraints()
00337 self.goal_constraints = arm_navigation_msgs.msg.Constraints()
00338
00339 def _get_types(self):
00340 """
00341 internal API method
00342 """
00343 return self._slot_types
00344
00345 def serialize(self, buff):
00346 """
00347 serialize message into buffer
00348 :param buff: buffer, ``StringIO``
00349 """
00350 try:
00351 _x = self
00352 buff.write(_struct_3I.pack(_x.trajectory.header.seq, _x.trajectory.header.stamp.secs, _x.trajectory.header.stamp.nsecs))
00353 _x = self.trajectory.header.frame_id
00354 length = len(_x)
00355 if python3 or type(_x) == unicode:
00356 _x = _x.encode('utf-8')
00357 length = len(_x)
00358 buff.write(struct.pack('<I%ss'%length, length, _x))
00359 length = len(self.trajectory.joint_names)
00360 buff.write(_struct_I.pack(length))
00361 for val1 in self.trajectory.joint_names:
00362 length = len(val1)
00363 if python3 or type(val1) == unicode:
00364 val1 = val1.encode('utf-8')
00365 length = len(val1)
00366 buff.write(struct.pack('<I%ss'%length, length, val1))
00367 length = len(self.trajectory.points)
00368 buff.write(_struct_I.pack(length))
00369 for val1 in self.trajectory.points:
00370 length = len(val1.positions)
00371 buff.write(_struct_I.pack(length))
00372 pattern = '<%sd'%length
00373 buff.write(struct.pack(pattern, *val1.positions))
00374 length = len(val1.velocities)
00375 buff.write(_struct_I.pack(length))
00376 pattern = '<%sd'%length
00377 buff.write(struct.pack(pattern, *val1.velocities))
00378 length = len(val1.accelerations)
00379 buff.write(_struct_I.pack(length))
00380 pattern = '<%sd'%length
00381 buff.write(struct.pack(pattern, *val1.accelerations))
00382 _v1 = val1.time_from_start
00383 _x = _v1
00384 buff.write(_struct_2i.pack(_x.secs, _x.nsecs))
00385 _x = self
00386 buff.write(_struct_3I.pack(_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs))
00387 _x = self.robot_state.joint_state.header.frame_id
00388 length = len(_x)
00389 if python3 or type(_x) == unicode:
00390 _x = _x.encode('utf-8')
00391 length = len(_x)
00392 buff.write(struct.pack('<I%ss'%length, length, _x))
00393 length = len(self.robot_state.joint_state.name)
00394 buff.write(_struct_I.pack(length))
00395 for val1 in self.robot_state.joint_state.name:
00396 length = len(val1)
00397 if python3 or type(val1) == unicode:
00398 val1 = val1.encode('utf-8')
00399 length = len(val1)
00400 buff.write(struct.pack('<I%ss'%length, length, val1))
00401 length = len(self.robot_state.joint_state.position)
00402 buff.write(_struct_I.pack(length))
00403 pattern = '<%sd'%length
00404 buff.write(struct.pack(pattern, *self.robot_state.joint_state.position))
00405 length = len(self.robot_state.joint_state.velocity)
00406 buff.write(_struct_I.pack(length))
00407 pattern = '<%sd'%length
00408 buff.write(struct.pack(pattern, *self.robot_state.joint_state.velocity))
00409 length = len(self.robot_state.joint_state.effort)
00410 buff.write(_struct_I.pack(length))
00411 pattern = '<%sd'%length
00412 buff.write(struct.pack(pattern, *self.robot_state.joint_state.effort))
00413 _x = self
00414 buff.write(_struct_2I.pack(_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs))
00415 length = len(self.robot_state.multi_dof_joint_state.joint_names)
00416 buff.write(_struct_I.pack(length))
00417 for val1 in self.robot_state.multi_dof_joint_state.joint_names:
00418 length = len(val1)
00419 if python3 or type(val1) == unicode:
00420 val1 = val1.encode('utf-8')
00421 length = len(val1)
00422 buff.write(struct.pack('<I%ss'%length, length, val1))
00423 length = len(self.robot_state.multi_dof_joint_state.frame_ids)
00424 buff.write(_struct_I.pack(length))
00425 for val1 in self.robot_state.multi_dof_joint_state.frame_ids:
00426 length = len(val1)
00427 if python3 or type(val1) == unicode:
00428 val1 = val1.encode('utf-8')
00429 length = len(val1)
00430 buff.write(struct.pack('<I%ss'%length, length, val1))
00431 length = len(self.robot_state.multi_dof_joint_state.child_frame_ids)
00432 buff.write(_struct_I.pack(length))
00433 for val1 in self.robot_state.multi_dof_joint_state.child_frame_ids:
00434 length = len(val1)
00435 if python3 or type(val1) == unicode:
00436 val1 = val1.encode('utf-8')
00437 length = len(val1)
00438 buff.write(struct.pack('<I%ss'%length, length, val1))
00439 length = len(self.robot_state.multi_dof_joint_state.poses)
00440 buff.write(_struct_I.pack(length))
00441 for val1 in self.robot_state.multi_dof_joint_state.poses:
00442 _v2 = val1.position
00443 _x = _v2
00444 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00445 _v3 = val1.orientation
00446 _x = _v3
00447 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00448 _x = self
00449 buff.write(_struct_5B.pack(_x.check_collisions, _x.check_path_constraints, _x.check_goal_constraints, _x.check_joint_limits, _x.check_full_trajectory))
00450 length = len(self.path_constraints.joint_constraints)
00451 buff.write(_struct_I.pack(length))
00452 for val1 in self.path_constraints.joint_constraints:
00453 _x = val1.joint_name
00454 length = len(_x)
00455 if python3 or type(_x) == unicode:
00456 _x = _x.encode('utf-8')
00457 length = len(_x)
00458 buff.write(struct.pack('<I%ss'%length, length, _x))
00459 _x = val1
00460 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
00461 length = len(self.path_constraints.position_constraints)
00462 buff.write(_struct_I.pack(length))
00463 for val1 in self.path_constraints.position_constraints:
00464 _v4 = val1.header
00465 buff.write(_struct_I.pack(_v4.seq))
00466 _v5 = _v4.stamp
00467 _x = _v5
00468 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00469 _x = _v4.frame_id
00470 length = len(_x)
00471 if python3 or type(_x) == unicode:
00472 _x = _x.encode('utf-8')
00473 length = len(_x)
00474 buff.write(struct.pack('<I%ss'%length, length, _x))
00475 _x = val1.link_name
00476 length = len(_x)
00477 if python3 or type(_x) == unicode:
00478 _x = _x.encode('utf-8')
00479 length = len(_x)
00480 buff.write(struct.pack('<I%ss'%length, length, _x))
00481 _v6 = val1.target_point_offset
00482 _x = _v6
00483 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00484 _v7 = val1.position
00485 _x = _v7
00486 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00487 _v8 = val1.constraint_region_shape
00488 buff.write(_struct_b.pack(_v8.type))
00489 length = len(_v8.dimensions)
00490 buff.write(_struct_I.pack(length))
00491 pattern = '<%sd'%length
00492 buff.write(struct.pack(pattern, *_v8.dimensions))
00493 length = len(_v8.triangles)
00494 buff.write(_struct_I.pack(length))
00495 pattern = '<%si'%length
00496 buff.write(struct.pack(pattern, *_v8.triangles))
00497 length = len(_v8.vertices)
00498 buff.write(_struct_I.pack(length))
00499 for val3 in _v8.vertices:
00500 _x = val3
00501 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00502 _v9 = val1.constraint_region_orientation
00503 _x = _v9
00504 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00505 buff.write(_struct_d.pack(val1.weight))
00506 length = len(self.path_constraints.orientation_constraints)
00507 buff.write(_struct_I.pack(length))
00508 for val1 in self.path_constraints.orientation_constraints:
00509 _v10 = val1.header
00510 buff.write(_struct_I.pack(_v10.seq))
00511 _v11 = _v10.stamp
00512 _x = _v11
00513 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00514 _x = _v10.frame_id
00515 length = len(_x)
00516 if python3 or type(_x) == unicode:
00517 _x = _x.encode('utf-8')
00518 length = len(_x)
00519 buff.write(struct.pack('<I%ss'%length, length, _x))
00520 _x = val1.link_name
00521 length = len(_x)
00522 if python3 or type(_x) == unicode:
00523 _x = _x.encode('utf-8')
00524 length = len(_x)
00525 buff.write(struct.pack('<I%ss'%length, length, _x))
00526 buff.write(_struct_i.pack(val1.type))
00527 _v12 = val1.orientation
00528 _x = _v12
00529 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00530 _x = val1
00531 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
00532 length = len(self.path_constraints.visibility_constraints)
00533 buff.write(_struct_I.pack(length))
00534 for val1 in self.path_constraints.visibility_constraints:
00535 _v13 = val1.header
00536 buff.write(_struct_I.pack(_v13.seq))
00537 _v14 = _v13.stamp
00538 _x = _v14
00539 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00540 _x = _v13.frame_id
00541 length = len(_x)
00542 if python3 or type(_x) == unicode:
00543 _x = _x.encode('utf-8')
00544 length = len(_x)
00545 buff.write(struct.pack('<I%ss'%length, length, _x))
00546 _v15 = val1.target
00547 _v16 = _v15.header
00548 buff.write(_struct_I.pack(_v16.seq))
00549 _v17 = _v16.stamp
00550 _x = _v17
00551 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00552 _x = _v16.frame_id
00553 length = len(_x)
00554 if python3 or type(_x) == unicode:
00555 _x = _x.encode('utf-8')
00556 length = len(_x)
00557 buff.write(struct.pack('<I%ss'%length, length, _x))
00558 _v18 = _v15.point
00559 _x = _v18
00560 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00561 _v19 = val1.sensor_pose
00562 _v20 = _v19.header
00563 buff.write(_struct_I.pack(_v20.seq))
00564 _v21 = _v20.stamp
00565 _x = _v21
00566 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00567 _x = _v20.frame_id
00568 length = len(_x)
00569 if python3 or type(_x) == unicode:
00570 _x = _x.encode('utf-8')
00571 length = len(_x)
00572 buff.write(struct.pack('<I%ss'%length, length, _x))
00573 _v22 = _v19.pose
00574 _v23 = _v22.position
00575 _x = _v23
00576 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00577 _v24 = _v22.orientation
00578 _x = _v24
00579 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00580 buff.write(_struct_d.pack(val1.absolute_tolerance))
00581 length = len(self.goal_constraints.joint_constraints)
00582 buff.write(_struct_I.pack(length))
00583 for val1 in self.goal_constraints.joint_constraints:
00584 _x = val1.joint_name
00585 length = len(_x)
00586 if python3 or type(_x) == unicode:
00587 _x = _x.encode('utf-8')
00588 length = len(_x)
00589 buff.write(struct.pack('<I%ss'%length, length, _x))
00590 _x = val1
00591 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
00592 length = len(self.goal_constraints.position_constraints)
00593 buff.write(_struct_I.pack(length))
00594 for val1 in self.goal_constraints.position_constraints:
00595 _v25 = val1.header
00596 buff.write(_struct_I.pack(_v25.seq))
00597 _v26 = _v25.stamp
00598 _x = _v26
00599 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00600 _x = _v25.frame_id
00601 length = len(_x)
00602 if python3 or type(_x) == unicode:
00603 _x = _x.encode('utf-8')
00604 length = len(_x)
00605 buff.write(struct.pack('<I%ss'%length, length, _x))
00606 _x = val1.link_name
00607 length = len(_x)
00608 if python3 or type(_x) == unicode:
00609 _x = _x.encode('utf-8')
00610 length = len(_x)
00611 buff.write(struct.pack('<I%ss'%length, length, _x))
00612 _v27 = val1.target_point_offset
00613 _x = _v27
00614 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00615 _v28 = val1.position
00616 _x = _v28
00617 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00618 _v29 = val1.constraint_region_shape
00619 buff.write(_struct_b.pack(_v29.type))
00620 length = len(_v29.dimensions)
00621 buff.write(_struct_I.pack(length))
00622 pattern = '<%sd'%length
00623 buff.write(struct.pack(pattern, *_v29.dimensions))
00624 length = len(_v29.triangles)
00625 buff.write(_struct_I.pack(length))
00626 pattern = '<%si'%length
00627 buff.write(struct.pack(pattern, *_v29.triangles))
00628 length = len(_v29.vertices)
00629 buff.write(_struct_I.pack(length))
00630 for val3 in _v29.vertices:
00631 _x = val3
00632 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00633 _v30 = val1.constraint_region_orientation
00634 _x = _v30
00635 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00636 buff.write(_struct_d.pack(val1.weight))
00637 length = len(self.goal_constraints.orientation_constraints)
00638 buff.write(_struct_I.pack(length))
00639 for val1 in self.goal_constraints.orientation_constraints:
00640 _v31 = val1.header
00641 buff.write(_struct_I.pack(_v31.seq))
00642 _v32 = _v31.stamp
00643 _x = _v32
00644 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00645 _x = _v31.frame_id
00646 length = len(_x)
00647 if python3 or type(_x) == unicode:
00648 _x = _x.encode('utf-8')
00649 length = len(_x)
00650 buff.write(struct.pack('<I%ss'%length, length, _x))
00651 _x = val1.link_name
00652 length = len(_x)
00653 if python3 or type(_x) == unicode:
00654 _x = _x.encode('utf-8')
00655 length = len(_x)
00656 buff.write(struct.pack('<I%ss'%length, length, _x))
00657 buff.write(_struct_i.pack(val1.type))
00658 _v33 = val1.orientation
00659 _x = _v33
00660 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00661 _x = val1
00662 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
00663 length = len(self.goal_constraints.visibility_constraints)
00664 buff.write(_struct_I.pack(length))
00665 for val1 in self.goal_constraints.visibility_constraints:
00666 _v34 = val1.header
00667 buff.write(_struct_I.pack(_v34.seq))
00668 _v35 = _v34.stamp
00669 _x = _v35
00670 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00671 _x = _v34.frame_id
00672 length = len(_x)
00673 if python3 or type(_x) == unicode:
00674 _x = _x.encode('utf-8')
00675 length = len(_x)
00676 buff.write(struct.pack('<I%ss'%length, length, _x))
00677 _v36 = val1.target
00678 _v37 = _v36.header
00679 buff.write(_struct_I.pack(_v37.seq))
00680 _v38 = _v37.stamp
00681 _x = _v38
00682 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00683 _x = _v37.frame_id
00684 length = len(_x)
00685 if python3 or type(_x) == unicode:
00686 _x = _x.encode('utf-8')
00687 length = len(_x)
00688 buff.write(struct.pack('<I%ss'%length, length, _x))
00689 _v39 = _v36.point
00690 _x = _v39
00691 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00692 _v40 = val1.sensor_pose
00693 _v41 = _v40.header
00694 buff.write(_struct_I.pack(_v41.seq))
00695 _v42 = _v41.stamp
00696 _x = _v42
00697 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00698 _x = _v41.frame_id
00699 length = len(_x)
00700 if python3 or type(_x) == unicode:
00701 _x = _x.encode('utf-8')
00702 length = len(_x)
00703 buff.write(struct.pack('<I%ss'%length, length, _x))
00704 _v43 = _v40.pose
00705 _v44 = _v43.position
00706 _x = _v44
00707 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00708 _v45 = _v43.orientation
00709 _x = _v45
00710 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00711 buff.write(_struct_d.pack(val1.absolute_tolerance))
00712 except struct.error as se: self._check_types(se)
00713 except TypeError as te: self._check_types(te)
00714
00715 def deserialize(self, str):
00716 """
00717 unpack serialized message in str into this message instance
00718 :param str: byte array of serialized message, ``str``
00719 """
00720 try:
00721 if self.trajectory is None:
00722 self.trajectory = trajectory_msgs.msg.JointTrajectory()
00723 if self.robot_state is None:
00724 self.robot_state = arm_navigation_msgs.msg.RobotState()
00725 if self.path_constraints is None:
00726 self.path_constraints = arm_navigation_msgs.msg.Constraints()
00727 if self.goal_constraints is None:
00728 self.goal_constraints = arm_navigation_msgs.msg.Constraints()
00729 end = 0
00730 _x = self
00731 start = end
00732 end += 12
00733 (_x.trajectory.header.seq, _x.trajectory.header.stamp.secs, _x.trajectory.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00734 start = end
00735 end += 4
00736 (length,) = _struct_I.unpack(str[start:end])
00737 start = end
00738 end += length
00739 if python3:
00740 self.trajectory.header.frame_id = str[start:end].decode('utf-8')
00741 else:
00742 self.trajectory.header.frame_id = str[start:end]
00743 start = end
00744 end += 4
00745 (length,) = _struct_I.unpack(str[start:end])
00746 self.trajectory.joint_names = []
00747 for i in range(0, length):
00748 start = end
00749 end += 4
00750 (length,) = _struct_I.unpack(str[start:end])
00751 start = end
00752 end += length
00753 if python3:
00754 val1 = str[start:end].decode('utf-8')
00755 else:
00756 val1 = str[start:end]
00757 self.trajectory.joint_names.append(val1)
00758 start = end
00759 end += 4
00760 (length,) = _struct_I.unpack(str[start:end])
00761 self.trajectory.points = []
00762 for i in range(0, length):
00763 val1 = trajectory_msgs.msg.JointTrajectoryPoint()
00764 start = end
00765 end += 4
00766 (length,) = _struct_I.unpack(str[start:end])
00767 pattern = '<%sd'%length
00768 start = end
00769 end += struct.calcsize(pattern)
00770 val1.positions = struct.unpack(pattern, str[start:end])
00771 start = end
00772 end += 4
00773 (length,) = _struct_I.unpack(str[start:end])
00774 pattern = '<%sd'%length
00775 start = end
00776 end += struct.calcsize(pattern)
00777 val1.velocities = struct.unpack(pattern, str[start:end])
00778 start = end
00779 end += 4
00780 (length,) = _struct_I.unpack(str[start:end])
00781 pattern = '<%sd'%length
00782 start = end
00783 end += struct.calcsize(pattern)
00784 val1.accelerations = struct.unpack(pattern, str[start:end])
00785 _v46 = val1.time_from_start
00786 _x = _v46
00787 start = end
00788 end += 8
00789 (_x.secs, _x.nsecs,) = _struct_2i.unpack(str[start:end])
00790 self.trajectory.points.append(val1)
00791 _x = self
00792 start = end
00793 end += 12
00794 (_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00795 start = end
00796 end += 4
00797 (length,) = _struct_I.unpack(str[start:end])
00798 start = end
00799 end += length
00800 if python3:
00801 self.robot_state.joint_state.header.frame_id = str[start:end].decode('utf-8')
00802 else:
00803 self.robot_state.joint_state.header.frame_id = str[start:end]
00804 start = end
00805 end += 4
00806 (length,) = _struct_I.unpack(str[start:end])
00807 self.robot_state.joint_state.name = []
00808 for i in range(0, length):
00809 start = end
00810 end += 4
00811 (length,) = _struct_I.unpack(str[start:end])
00812 start = end
00813 end += length
00814 if python3:
00815 val1 = str[start:end].decode('utf-8')
00816 else:
00817 val1 = str[start:end]
00818 self.robot_state.joint_state.name.append(val1)
00819 start = end
00820 end += 4
00821 (length,) = _struct_I.unpack(str[start:end])
00822 pattern = '<%sd'%length
00823 start = end
00824 end += struct.calcsize(pattern)
00825 self.robot_state.joint_state.position = struct.unpack(pattern, str[start:end])
00826 start = end
00827 end += 4
00828 (length,) = _struct_I.unpack(str[start:end])
00829 pattern = '<%sd'%length
00830 start = end
00831 end += struct.calcsize(pattern)
00832 self.robot_state.joint_state.velocity = struct.unpack(pattern, str[start:end])
00833 start = end
00834 end += 4
00835 (length,) = _struct_I.unpack(str[start:end])
00836 pattern = '<%sd'%length
00837 start = end
00838 end += struct.calcsize(pattern)
00839 self.robot_state.joint_state.effort = struct.unpack(pattern, str[start:end])
00840 _x = self
00841 start = end
00842 end += 8
00843 (_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00844 start = end
00845 end += 4
00846 (length,) = _struct_I.unpack(str[start:end])
00847 self.robot_state.multi_dof_joint_state.joint_names = []
00848 for i in range(0, length):
00849 start = end
00850 end += 4
00851 (length,) = _struct_I.unpack(str[start:end])
00852 start = end
00853 end += length
00854 if python3:
00855 val1 = str[start:end].decode('utf-8')
00856 else:
00857 val1 = str[start:end]
00858 self.robot_state.multi_dof_joint_state.joint_names.append(val1)
00859 start = end
00860 end += 4
00861 (length,) = _struct_I.unpack(str[start:end])
00862 self.robot_state.multi_dof_joint_state.frame_ids = []
00863 for i in range(0, length):
00864 start = end
00865 end += 4
00866 (length,) = _struct_I.unpack(str[start:end])
00867 start = end
00868 end += length
00869 if python3:
00870 val1 = str[start:end].decode('utf-8')
00871 else:
00872 val1 = str[start:end]
00873 self.robot_state.multi_dof_joint_state.frame_ids.append(val1)
00874 start = end
00875 end += 4
00876 (length,) = _struct_I.unpack(str[start:end])
00877 self.robot_state.multi_dof_joint_state.child_frame_ids = []
00878 for i in range(0, length):
00879 start = end
00880 end += 4
00881 (length,) = _struct_I.unpack(str[start:end])
00882 start = end
00883 end += length
00884 if python3:
00885 val1 = str[start:end].decode('utf-8')
00886 else:
00887 val1 = str[start:end]
00888 self.robot_state.multi_dof_joint_state.child_frame_ids.append(val1)
00889 start = end
00890 end += 4
00891 (length,) = _struct_I.unpack(str[start:end])
00892 self.robot_state.multi_dof_joint_state.poses = []
00893 for i in range(0, length):
00894 val1 = geometry_msgs.msg.Pose()
00895 _v47 = val1.position
00896 _x = _v47
00897 start = end
00898 end += 24
00899 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00900 _v48 = val1.orientation
00901 _x = _v48
00902 start = end
00903 end += 32
00904 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00905 self.robot_state.multi_dof_joint_state.poses.append(val1)
00906 _x = self
00907 start = end
00908 end += 5
00909 (_x.check_collisions, _x.check_path_constraints, _x.check_goal_constraints, _x.check_joint_limits, _x.check_full_trajectory,) = _struct_5B.unpack(str[start:end])
00910 self.check_collisions = bool(self.check_collisions)
00911 self.check_path_constraints = bool(self.check_path_constraints)
00912 self.check_goal_constraints = bool(self.check_goal_constraints)
00913 self.check_joint_limits = bool(self.check_joint_limits)
00914 self.check_full_trajectory = bool(self.check_full_trajectory)
00915 start = end
00916 end += 4
00917 (length,) = _struct_I.unpack(str[start:end])
00918 self.path_constraints.joint_constraints = []
00919 for i in range(0, length):
00920 val1 = arm_navigation_msgs.msg.JointConstraint()
00921 start = end
00922 end += 4
00923 (length,) = _struct_I.unpack(str[start:end])
00924 start = end
00925 end += length
00926 if python3:
00927 val1.joint_name = str[start:end].decode('utf-8')
00928 else:
00929 val1.joint_name = str[start:end]
00930 _x = val1
00931 start = end
00932 end += 32
00933 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
00934 self.path_constraints.joint_constraints.append(val1)
00935 start = end
00936 end += 4
00937 (length,) = _struct_I.unpack(str[start:end])
00938 self.path_constraints.position_constraints = []
00939 for i in range(0, length):
00940 val1 = arm_navigation_msgs.msg.PositionConstraint()
00941 _v49 = val1.header
00942 start = end
00943 end += 4
00944 (_v49.seq,) = _struct_I.unpack(str[start:end])
00945 _v50 = _v49.stamp
00946 _x = _v50
00947 start = end
00948 end += 8
00949 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00950 start = end
00951 end += 4
00952 (length,) = _struct_I.unpack(str[start:end])
00953 start = end
00954 end += length
00955 if python3:
00956 _v49.frame_id = str[start:end].decode('utf-8')
00957 else:
00958 _v49.frame_id = str[start:end]
00959 start = end
00960 end += 4
00961 (length,) = _struct_I.unpack(str[start:end])
00962 start = end
00963 end += length
00964 if python3:
00965 val1.link_name = str[start:end].decode('utf-8')
00966 else:
00967 val1.link_name = str[start:end]
00968 _v51 = val1.target_point_offset
00969 _x = _v51
00970 start = end
00971 end += 24
00972 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00973 _v52 = val1.position
00974 _x = _v52
00975 start = end
00976 end += 24
00977 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00978 _v53 = val1.constraint_region_shape
00979 start = end
00980 end += 1
00981 (_v53.type,) = _struct_b.unpack(str[start:end])
00982 start = end
00983 end += 4
00984 (length,) = _struct_I.unpack(str[start:end])
00985 pattern = '<%sd'%length
00986 start = end
00987 end += struct.calcsize(pattern)
00988 _v53.dimensions = struct.unpack(pattern, str[start:end])
00989 start = end
00990 end += 4
00991 (length,) = _struct_I.unpack(str[start:end])
00992 pattern = '<%si'%length
00993 start = end
00994 end += struct.calcsize(pattern)
00995 _v53.triangles = struct.unpack(pattern, str[start:end])
00996 start = end
00997 end += 4
00998 (length,) = _struct_I.unpack(str[start:end])
00999 _v53.vertices = []
01000 for i in range(0, length):
01001 val3 = geometry_msgs.msg.Point()
01002 _x = val3
01003 start = end
01004 end += 24
01005 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01006 _v53.vertices.append(val3)
01007 _v54 = val1.constraint_region_orientation
01008 _x = _v54
01009 start = end
01010 end += 32
01011 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01012 start = end
01013 end += 8
01014 (val1.weight,) = _struct_d.unpack(str[start:end])
01015 self.path_constraints.position_constraints.append(val1)
01016 start = end
01017 end += 4
01018 (length,) = _struct_I.unpack(str[start:end])
01019 self.path_constraints.orientation_constraints = []
01020 for i in range(0, length):
01021 val1 = arm_navigation_msgs.msg.OrientationConstraint()
01022 _v55 = val1.header
01023 start = end
01024 end += 4
01025 (_v55.seq,) = _struct_I.unpack(str[start:end])
01026 _v56 = _v55.stamp
01027 _x = _v56
01028 start = end
01029 end += 8
01030 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01031 start = end
01032 end += 4
01033 (length,) = _struct_I.unpack(str[start:end])
01034 start = end
01035 end += length
01036 if python3:
01037 _v55.frame_id = str[start:end].decode('utf-8')
01038 else:
01039 _v55.frame_id = str[start:end]
01040 start = end
01041 end += 4
01042 (length,) = _struct_I.unpack(str[start:end])
01043 start = end
01044 end += length
01045 if python3:
01046 val1.link_name = str[start:end].decode('utf-8')
01047 else:
01048 val1.link_name = str[start:end]
01049 start = end
01050 end += 4
01051 (val1.type,) = _struct_i.unpack(str[start:end])
01052 _v57 = val1.orientation
01053 _x = _v57
01054 start = end
01055 end += 32
01056 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01057 _x = val1
01058 start = end
01059 end += 32
01060 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
01061 self.path_constraints.orientation_constraints.append(val1)
01062 start = end
01063 end += 4
01064 (length,) = _struct_I.unpack(str[start:end])
01065 self.path_constraints.visibility_constraints = []
01066 for i in range(0, length):
01067 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
01068 _v58 = val1.header
01069 start = end
01070 end += 4
01071 (_v58.seq,) = _struct_I.unpack(str[start:end])
01072 _v59 = _v58.stamp
01073 _x = _v59
01074 start = end
01075 end += 8
01076 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01077 start = end
01078 end += 4
01079 (length,) = _struct_I.unpack(str[start:end])
01080 start = end
01081 end += length
01082 if python3:
01083 _v58.frame_id = str[start:end].decode('utf-8')
01084 else:
01085 _v58.frame_id = str[start:end]
01086 _v60 = val1.target
01087 _v61 = _v60.header
01088 start = end
01089 end += 4
01090 (_v61.seq,) = _struct_I.unpack(str[start:end])
01091 _v62 = _v61.stamp
01092 _x = _v62
01093 start = end
01094 end += 8
01095 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01096 start = end
01097 end += 4
01098 (length,) = _struct_I.unpack(str[start:end])
01099 start = end
01100 end += length
01101 if python3:
01102 _v61.frame_id = str[start:end].decode('utf-8')
01103 else:
01104 _v61.frame_id = str[start:end]
01105 _v63 = _v60.point
01106 _x = _v63
01107 start = end
01108 end += 24
01109 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01110 _v64 = val1.sensor_pose
01111 _v65 = _v64.header
01112 start = end
01113 end += 4
01114 (_v65.seq,) = _struct_I.unpack(str[start:end])
01115 _v66 = _v65.stamp
01116 _x = _v66
01117 start = end
01118 end += 8
01119 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01120 start = end
01121 end += 4
01122 (length,) = _struct_I.unpack(str[start:end])
01123 start = end
01124 end += length
01125 if python3:
01126 _v65.frame_id = str[start:end].decode('utf-8')
01127 else:
01128 _v65.frame_id = str[start:end]
01129 _v67 = _v64.pose
01130 _v68 = _v67.position
01131 _x = _v68
01132 start = end
01133 end += 24
01134 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01135 _v69 = _v67.orientation
01136 _x = _v69
01137 start = end
01138 end += 32
01139 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01140 start = end
01141 end += 8
01142 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
01143 self.path_constraints.visibility_constraints.append(val1)
01144 start = end
01145 end += 4
01146 (length,) = _struct_I.unpack(str[start:end])
01147 self.goal_constraints.joint_constraints = []
01148 for i in range(0, length):
01149 val1 = arm_navigation_msgs.msg.JointConstraint()
01150 start = end
01151 end += 4
01152 (length,) = _struct_I.unpack(str[start:end])
01153 start = end
01154 end += length
01155 if python3:
01156 val1.joint_name = str[start:end].decode('utf-8')
01157 else:
01158 val1.joint_name = str[start:end]
01159 _x = val1
01160 start = end
01161 end += 32
01162 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
01163 self.goal_constraints.joint_constraints.append(val1)
01164 start = end
01165 end += 4
01166 (length,) = _struct_I.unpack(str[start:end])
01167 self.goal_constraints.position_constraints = []
01168 for i in range(0, length):
01169 val1 = arm_navigation_msgs.msg.PositionConstraint()
01170 _v70 = val1.header
01171 start = end
01172 end += 4
01173 (_v70.seq,) = _struct_I.unpack(str[start:end])
01174 _v71 = _v70.stamp
01175 _x = _v71
01176 start = end
01177 end += 8
01178 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01179 start = end
01180 end += 4
01181 (length,) = _struct_I.unpack(str[start:end])
01182 start = end
01183 end += length
01184 if python3:
01185 _v70.frame_id = str[start:end].decode('utf-8')
01186 else:
01187 _v70.frame_id = str[start:end]
01188 start = end
01189 end += 4
01190 (length,) = _struct_I.unpack(str[start:end])
01191 start = end
01192 end += length
01193 if python3:
01194 val1.link_name = str[start:end].decode('utf-8')
01195 else:
01196 val1.link_name = str[start:end]
01197 _v72 = val1.target_point_offset
01198 _x = _v72
01199 start = end
01200 end += 24
01201 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01202 _v73 = val1.position
01203 _x = _v73
01204 start = end
01205 end += 24
01206 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01207 _v74 = val1.constraint_region_shape
01208 start = end
01209 end += 1
01210 (_v74.type,) = _struct_b.unpack(str[start:end])
01211 start = end
01212 end += 4
01213 (length,) = _struct_I.unpack(str[start:end])
01214 pattern = '<%sd'%length
01215 start = end
01216 end += struct.calcsize(pattern)
01217 _v74.dimensions = struct.unpack(pattern, str[start:end])
01218 start = end
01219 end += 4
01220 (length,) = _struct_I.unpack(str[start:end])
01221 pattern = '<%si'%length
01222 start = end
01223 end += struct.calcsize(pattern)
01224 _v74.triangles = struct.unpack(pattern, str[start:end])
01225 start = end
01226 end += 4
01227 (length,) = _struct_I.unpack(str[start:end])
01228 _v74.vertices = []
01229 for i in range(0, length):
01230 val3 = geometry_msgs.msg.Point()
01231 _x = val3
01232 start = end
01233 end += 24
01234 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01235 _v74.vertices.append(val3)
01236 _v75 = val1.constraint_region_orientation
01237 _x = _v75
01238 start = end
01239 end += 32
01240 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01241 start = end
01242 end += 8
01243 (val1.weight,) = _struct_d.unpack(str[start:end])
01244 self.goal_constraints.position_constraints.append(val1)
01245 start = end
01246 end += 4
01247 (length,) = _struct_I.unpack(str[start:end])
01248 self.goal_constraints.orientation_constraints = []
01249 for i in range(0, length):
01250 val1 = arm_navigation_msgs.msg.OrientationConstraint()
01251 _v76 = val1.header
01252 start = end
01253 end += 4
01254 (_v76.seq,) = _struct_I.unpack(str[start:end])
01255 _v77 = _v76.stamp
01256 _x = _v77
01257 start = end
01258 end += 8
01259 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01260 start = end
01261 end += 4
01262 (length,) = _struct_I.unpack(str[start:end])
01263 start = end
01264 end += length
01265 if python3:
01266 _v76.frame_id = str[start:end].decode('utf-8')
01267 else:
01268 _v76.frame_id = str[start:end]
01269 start = end
01270 end += 4
01271 (length,) = _struct_I.unpack(str[start:end])
01272 start = end
01273 end += length
01274 if python3:
01275 val1.link_name = str[start:end].decode('utf-8')
01276 else:
01277 val1.link_name = str[start:end]
01278 start = end
01279 end += 4
01280 (val1.type,) = _struct_i.unpack(str[start:end])
01281 _v78 = val1.orientation
01282 _x = _v78
01283 start = end
01284 end += 32
01285 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01286 _x = val1
01287 start = end
01288 end += 32
01289 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
01290 self.goal_constraints.orientation_constraints.append(val1)
01291 start = end
01292 end += 4
01293 (length,) = _struct_I.unpack(str[start:end])
01294 self.goal_constraints.visibility_constraints = []
01295 for i in range(0, length):
01296 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
01297 _v79 = val1.header
01298 start = end
01299 end += 4
01300 (_v79.seq,) = _struct_I.unpack(str[start:end])
01301 _v80 = _v79.stamp
01302 _x = _v80
01303 start = end
01304 end += 8
01305 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01306 start = end
01307 end += 4
01308 (length,) = _struct_I.unpack(str[start:end])
01309 start = end
01310 end += length
01311 if python3:
01312 _v79.frame_id = str[start:end].decode('utf-8')
01313 else:
01314 _v79.frame_id = str[start:end]
01315 _v81 = val1.target
01316 _v82 = _v81.header
01317 start = end
01318 end += 4
01319 (_v82.seq,) = _struct_I.unpack(str[start:end])
01320 _v83 = _v82.stamp
01321 _x = _v83
01322 start = end
01323 end += 8
01324 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01325 start = end
01326 end += 4
01327 (length,) = _struct_I.unpack(str[start:end])
01328 start = end
01329 end += length
01330 if python3:
01331 _v82.frame_id = str[start:end].decode('utf-8')
01332 else:
01333 _v82.frame_id = str[start:end]
01334 _v84 = _v81.point
01335 _x = _v84
01336 start = end
01337 end += 24
01338 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01339 _v85 = val1.sensor_pose
01340 _v86 = _v85.header
01341 start = end
01342 end += 4
01343 (_v86.seq,) = _struct_I.unpack(str[start:end])
01344 _v87 = _v86.stamp
01345 _x = _v87
01346 start = end
01347 end += 8
01348 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01349 start = end
01350 end += 4
01351 (length,) = _struct_I.unpack(str[start:end])
01352 start = end
01353 end += length
01354 if python3:
01355 _v86.frame_id = str[start:end].decode('utf-8')
01356 else:
01357 _v86.frame_id = str[start:end]
01358 _v88 = _v85.pose
01359 _v89 = _v88.position
01360 _x = _v89
01361 start = end
01362 end += 24
01363 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01364 _v90 = _v88.orientation
01365 _x = _v90
01366 start = end
01367 end += 32
01368 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01369 start = end
01370 end += 8
01371 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
01372 self.goal_constraints.visibility_constraints.append(val1)
01373 return self
01374 except struct.error as e:
01375 raise genpy.DeserializationError(e)
01376
01377
01378 def serialize_numpy(self, buff, numpy):
01379 """
01380 serialize message with numpy array types into buffer
01381 :param buff: buffer, ``StringIO``
01382 :param numpy: numpy python module
01383 """
01384 try:
01385 _x = self
01386 buff.write(_struct_3I.pack(_x.trajectory.header.seq, _x.trajectory.header.stamp.secs, _x.trajectory.header.stamp.nsecs))
01387 _x = self.trajectory.header.frame_id
01388 length = len(_x)
01389 if python3 or type(_x) == unicode:
01390 _x = _x.encode('utf-8')
01391 length = len(_x)
01392 buff.write(struct.pack('<I%ss'%length, length, _x))
01393 length = len(self.trajectory.joint_names)
01394 buff.write(_struct_I.pack(length))
01395 for val1 in self.trajectory.joint_names:
01396 length = len(val1)
01397 if python3 or type(val1) == unicode:
01398 val1 = val1.encode('utf-8')
01399 length = len(val1)
01400 buff.write(struct.pack('<I%ss'%length, length, val1))
01401 length = len(self.trajectory.points)
01402 buff.write(_struct_I.pack(length))
01403 for val1 in self.trajectory.points:
01404 length = len(val1.positions)
01405 buff.write(_struct_I.pack(length))
01406 pattern = '<%sd'%length
01407 buff.write(val1.positions.tostring())
01408 length = len(val1.velocities)
01409 buff.write(_struct_I.pack(length))
01410 pattern = '<%sd'%length
01411 buff.write(val1.velocities.tostring())
01412 length = len(val1.accelerations)
01413 buff.write(_struct_I.pack(length))
01414 pattern = '<%sd'%length
01415 buff.write(val1.accelerations.tostring())
01416 _v91 = val1.time_from_start
01417 _x = _v91
01418 buff.write(_struct_2i.pack(_x.secs, _x.nsecs))
01419 _x = self
01420 buff.write(_struct_3I.pack(_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs))
01421 _x = self.robot_state.joint_state.header.frame_id
01422 length = len(_x)
01423 if python3 or type(_x) == unicode:
01424 _x = _x.encode('utf-8')
01425 length = len(_x)
01426 buff.write(struct.pack('<I%ss'%length, length, _x))
01427 length = len(self.robot_state.joint_state.name)
01428 buff.write(_struct_I.pack(length))
01429 for val1 in self.robot_state.joint_state.name:
01430 length = len(val1)
01431 if python3 or type(val1) == unicode:
01432 val1 = val1.encode('utf-8')
01433 length = len(val1)
01434 buff.write(struct.pack('<I%ss'%length, length, val1))
01435 length = len(self.robot_state.joint_state.position)
01436 buff.write(_struct_I.pack(length))
01437 pattern = '<%sd'%length
01438 buff.write(self.robot_state.joint_state.position.tostring())
01439 length = len(self.robot_state.joint_state.velocity)
01440 buff.write(_struct_I.pack(length))
01441 pattern = '<%sd'%length
01442 buff.write(self.robot_state.joint_state.velocity.tostring())
01443 length = len(self.robot_state.joint_state.effort)
01444 buff.write(_struct_I.pack(length))
01445 pattern = '<%sd'%length
01446 buff.write(self.robot_state.joint_state.effort.tostring())
01447 _x = self
01448 buff.write(_struct_2I.pack(_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs))
01449 length = len(self.robot_state.multi_dof_joint_state.joint_names)
01450 buff.write(_struct_I.pack(length))
01451 for val1 in self.robot_state.multi_dof_joint_state.joint_names:
01452 length = len(val1)
01453 if python3 or type(val1) == unicode:
01454 val1 = val1.encode('utf-8')
01455 length = len(val1)
01456 buff.write(struct.pack('<I%ss'%length, length, val1))
01457 length = len(self.robot_state.multi_dof_joint_state.frame_ids)
01458 buff.write(_struct_I.pack(length))
01459 for val1 in self.robot_state.multi_dof_joint_state.frame_ids:
01460 length = len(val1)
01461 if python3 or type(val1) == unicode:
01462 val1 = val1.encode('utf-8')
01463 length = len(val1)
01464 buff.write(struct.pack('<I%ss'%length, length, val1))
01465 length = len(self.robot_state.multi_dof_joint_state.child_frame_ids)
01466 buff.write(_struct_I.pack(length))
01467 for val1 in self.robot_state.multi_dof_joint_state.child_frame_ids:
01468 length = len(val1)
01469 if python3 or type(val1) == unicode:
01470 val1 = val1.encode('utf-8')
01471 length = len(val1)
01472 buff.write(struct.pack('<I%ss'%length, length, val1))
01473 length = len(self.robot_state.multi_dof_joint_state.poses)
01474 buff.write(_struct_I.pack(length))
01475 for val1 in self.robot_state.multi_dof_joint_state.poses:
01476 _v92 = val1.position
01477 _x = _v92
01478 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01479 _v93 = val1.orientation
01480 _x = _v93
01481 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01482 _x = self
01483 buff.write(_struct_5B.pack(_x.check_collisions, _x.check_path_constraints, _x.check_goal_constraints, _x.check_joint_limits, _x.check_full_trajectory))
01484 length = len(self.path_constraints.joint_constraints)
01485 buff.write(_struct_I.pack(length))
01486 for val1 in self.path_constraints.joint_constraints:
01487 _x = val1.joint_name
01488 length = len(_x)
01489 if python3 or type(_x) == unicode:
01490 _x = _x.encode('utf-8')
01491 length = len(_x)
01492 buff.write(struct.pack('<I%ss'%length, length, _x))
01493 _x = val1
01494 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
01495 length = len(self.path_constraints.position_constraints)
01496 buff.write(_struct_I.pack(length))
01497 for val1 in self.path_constraints.position_constraints:
01498 _v94 = val1.header
01499 buff.write(_struct_I.pack(_v94.seq))
01500 _v95 = _v94.stamp
01501 _x = _v95
01502 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01503 _x = _v94.frame_id
01504 length = len(_x)
01505 if python3 or type(_x) == unicode:
01506 _x = _x.encode('utf-8')
01507 length = len(_x)
01508 buff.write(struct.pack('<I%ss'%length, length, _x))
01509 _x = val1.link_name
01510 length = len(_x)
01511 if python3 or type(_x) == unicode:
01512 _x = _x.encode('utf-8')
01513 length = len(_x)
01514 buff.write(struct.pack('<I%ss'%length, length, _x))
01515 _v96 = val1.target_point_offset
01516 _x = _v96
01517 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01518 _v97 = val1.position
01519 _x = _v97
01520 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01521 _v98 = val1.constraint_region_shape
01522 buff.write(_struct_b.pack(_v98.type))
01523 length = len(_v98.dimensions)
01524 buff.write(_struct_I.pack(length))
01525 pattern = '<%sd'%length
01526 buff.write(_v98.dimensions.tostring())
01527 length = len(_v98.triangles)
01528 buff.write(_struct_I.pack(length))
01529 pattern = '<%si'%length
01530 buff.write(_v98.triangles.tostring())
01531 length = len(_v98.vertices)
01532 buff.write(_struct_I.pack(length))
01533 for val3 in _v98.vertices:
01534 _x = val3
01535 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01536 _v99 = val1.constraint_region_orientation
01537 _x = _v99
01538 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01539 buff.write(_struct_d.pack(val1.weight))
01540 length = len(self.path_constraints.orientation_constraints)
01541 buff.write(_struct_I.pack(length))
01542 for val1 in self.path_constraints.orientation_constraints:
01543 _v100 = val1.header
01544 buff.write(_struct_I.pack(_v100.seq))
01545 _v101 = _v100.stamp
01546 _x = _v101
01547 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01548 _x = _v100.frame_id
01549 length = len(_x)
01550 if python3 or type(_x) == unicode:
01551 _x = _x.encode('utf-8')
01552 length = len(_x)
01553 buff.write(struct.pack('<I%ss'%length, length, _x))
01554 _x = val1.link_name
01555 length = len(_x)
01556 if python3 or type(_x) == unicode:
01557 _x = _x.encode('utf-8')
01558 length = len(_x)
01559 buff.write(struct.pack('<I%ss'%length, length, _x))
01560 buff.write(_struct_i.pack(val1.type))
01561 _v102 = val1.orientation
01562 _x = _v102
01563 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01564 _x = val1
01565 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
01566 length = len(self.path_constraints.visibility_constraints)
01567 buff.write(_struct_I.pack(length))
01568 for val1 in self.path_constraints.visibility_constraints:
01569 _v103 = val1.header
01570 buff.write(_struct_I.pack(_v103.seq))
01571 _v104 = _v103.stamp
01572 _x = _v104
01573 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01574 _x = _v103.frame_id
01575 length = len(_x)
01576 if python3 or type(_x) == unicode:
01577 _x = _x.encode('utf-8')
01578 length = len(_x)
01579 buff.write(struct.pack('<I%ss'%length, length, _x))
01580 _v105 = val1.target
01581 _v106 = _v105.header
01582 buff.write(_struct_I.pack(_v106.seq))
01583 _v107 = _v106.stamp
01584 _x = _v107
01585 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01586 _x = _v106.frame_id
01587 length = len(_x)
01588 if python3 or type(_x) == unicode:
01589 _x = _x.encode('utf-8')
01590 length = len(_x)
01591 buff.write(struct.pack('<I%ss'%length, length, _x))
01592 _v108 = _v105.point
01593 _x = _v108
01594 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01595 _v109 = val1.sensor_pose
01596 _v110 = _v109.header
01597 buff.write(_struct_I.pack(_v110.seq))
01598 _v111 = _v110.stamp
01599 _x = _v111
01600 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01601 _x = _v110.frame_id
01602 length = len(_x)
01603 if python3 or type(_x) == unicode:
01604 _x = _x.encode('utf-8')
01605 length = len(_x)
01606 buff.write(struct.pack('<I%ss'%length, length, _x))
01607 _v112 = _v109.pose
01608 _v113 = _v112.position
01609 _x = _v113
01610 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01611 _v114 = _v112.orientation
01612 _x = _v114
01613 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01614 buff.write(_struct_d.pack(val1.absolute_tolerance))
01615 length = len(self.goal_constraints.joint_constraints)
01616 buff.write(_struct_I.pack(length))
01617 for val1 in self.goal_constraints.joint_constraints:
01618 _x = val1.joint_name
01619 length = len(_x)
01620 if python3 or type(_x) == unicode:
01621 _x = _x.encode('utf-8')
01622 length = len(_x)
01623 buff.write(struct.pack('<I%ss'%length, length, _x))
01624 _x = val1
01625 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
01626 length = len(self.goal_constraints.position_constraints)
01627 buff.write(_struct_I.pack(length))
01628 for val1 in self.goal_constraints.position_constraints:
01629 _v115 = val1.header
01630 buff.write(_struct_I.pack(_v115.seq))
01631 _v116 = _v115.stamp
01632 _x = _v116
01633 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01634 _x = _v115.frame_id
01635 length = len(_x)
01636 if python3 or type(_x) == unicode:
01637 _x = _x.encode('utf-8')
01638 length = len(_x)
01639 buff.write(struct.pack('<I%ss'%length, length, _x))
01640 _x = val1.link_name
01641 length = len(_x)
01642 if python3 or type(_x) == unicode:
01643 _x = _x.encode('utf-8')
01644 length = len(_x)
01645 buff.write(struct.pack('<I%ss'%length, length, _x))
01646 _v117 = val1.target_point_offset
01647 _x = _v117
01648 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01649 _v118 = val1.position
01650 _x = _v118
01651 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01652 _v119 = val1.constraint_region_shape
01653 buff.write(_struct_b.pack(_v119.type))
01654 length = len(_v119.dimensions)
01655 buff.write(_struct_I.pack(length))
01656 pattern = '<%sd'%length
01657 buff.write(_v119.dimensions.tostring())
01658 length = len(_v119.triangles)
01659 buff.write(_struct_I.pack(length))
01660 pattern = '<%si'%length
01661 buff.write(_v119.triangles.tostring())
01662 length = len(_v119.vertices)
01663 buff.write(_struct_I.pack(length))
01664 for val3 in _v119.vertices:
01665 _x = val3
01666 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01667 _v120 = val1.constraint_region_orientation
01668 _x = _v120
01669 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01670 buff.write(_struct_d.pack(val1.weight))
01671 length = len(self.goal_constraints.orientation_constraints)
01672 buff.write(_struct_I.pack(length))
01673 for val1 in self.goal_constraints.orientation_constraints:
01674 _v121 = val1.header
01675 buff.write(_struct_I.pack(_v121.seq))
01676 _v122 = _v121.stamp
01677 _x = _v122
01678 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01679 _x = _v121.frame_id
01680 length = len(_x)
01681 if python3 or type(_x) == unicode:
01682 _x = _x.encode('utf-8')
01683 length = len(_x)
01684 buff.write(struct.pack('<I%ss'%length, length, _x))
01685 _x = val1.link_name
01686 length = len(_x)
01687 if python3 or type(_x) == unicode:
01688 _x = _x.encode('utf-8')
01689 length = len(_x)
01690 buff.write(struct.pack('<I%ss'%length, length, _x))
01691 buff.write(_struct_i.pack(val1.type))
01692 _v123 = val1.orientation
01693 _x = _v123
01694 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01695 _x = val1
01696 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
01697 length = len(self.goal_constraints.visibility_constraints)
01698 buff.write(_struct_I.pack(length))
01699 for val1 in self.goal_constraints.visibility_constraints:
01700 _v124 = val1.header
01701 buff.write(_struct_I.pack(_v124.seq))
01702 _v125 = _v124.stamp
01703 _x = _v125
01704 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01705 _x = _v124.frame_id
01706 length = len(_x)
01707 if python3 or type(_x) == unicode:
01708 _x = _x.encode('utf-8')
01709 length = len(_x)
01710 buff.write(struct.pack('<I%ss'%length, length, _x))
01711 _v126 = val1.target
01712 _v127 = _v126.header
01713 buff.write(_struct_I.pack(_v127.seq))
01714 _v128 = _v127.stamp
01715 _x = _v128
01716 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01717 _x = _v127.frame_id
01718 length = len(_x)
01719 if python3 or type(_x) == unicode:
01720 _x = _x.encode('utf-8')
01721 length = len(_x)
01722 buff.write(struct.pack('<I%ss'%length, length, _x))
01723 _v129 = _v126.point
01724 _x = _v129
01725 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01726 _v130 = val1.sensor_pose
01727 _v131 = _v130.header
01728 buff.write(_struct_I.pack(_v131.seq))
01729 _v132 = _v131.stamp
01730 _x = _v132
01731 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01732 _x = _v131.frame_id
01733 length = len(_x)
01734 if python3 or type(_x) == unicode:
01735 _x = _x.encode('utf-8')
01736 length = len(_x)
01737 buff.write(struct.pack('<I%ss'%length, length, _x))
01738 _v133 = _v130.pose
01739 _v134 = _v133.position
01740 _x = _v134
01741 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01742 _v135 = _v133.orientation
01743 _x = _v135
01744 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01745 buff.write(_struct_d.pack(val1.absolute_tolerance))
01746 except struct.error as se: self._check_types(se)
01747 except TypeError as te: self._check_types(te)
01748
01749 def deserialize_numpy(self, str, numpy):
01750 """
01751 unpack serialized message in str into this message instance using numpy for array types
01752 :param str: byte array of serialized message, ``str``
01753 :param numpy: numpy python module
01754 """
01755 try:
01756 if self.trajectory is None:
01757 self.trajectory = trajectory_msgs.msg.JointTrajectory()
01758 if self.robot_state is None:
01759 self.robot_state = arm_navigation_msgs.msg.RobotState()
01760 if self.path_constraints is None:
01761 self.path_constraints = arm_navigation_msgs.msg.Constraints()
01762 if self.goal_constraints is None:
01763 self.goal_constraints = arm_navigation_msgs.msg.Constraints()
01764 end = 0
01765 _x = self
01766 start = end
01767 end += 12
01768 (_x.trajectory.header.seq, _x.trajectory.header.stamp.secs, _x.trajectory.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01769 start = end
01770 end += 4
01771 (length,) = _struct_I.unpack(str[start:end])
01772 start = end
01773 end += length
01774 if python3:
01775 self.trajectory.header.frame_id = str[start:end].decode('utf-8')
01776 else:
01777 self.trajectory.header.frame_id = str[start:end]
01778 start = end
01779 end += 4
01780 (length,) = _struct_I.unpack(str[start:end])
01781 self.trajectory.joint_names = []
01782 for i in range(0, length):
01783 start = end
01784 end += 4
01785 (length,) = _struct_I.unpack(str[start:end])
01786 start = end
01787 end += length
01788 if python3:
01789 val1 = str[start:end].decode('utf-8')
01790 else:
01791 val1 = str[start:end]
01792 self.trajectory.joint_names.append(val1)
01793 start = end
01794 end += 4
01795 (length,) = _struct_I.unpack(str[start:end])
01796 self.trajectory.points = []
01797 for i in range(0, length):
01798 val1 = trajectory_msgs.msg.JointTrajectoryPoint()
01799 start = end
01800 end += 4
01801 (length,) = _struct_I.unpack(str[start:end])
01802 pattern = '<%sd'%length
01803 start = end
01804 end += struct.calcsize(pattern)
01805 val1.positions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01806 start = end
01807 end += 4
01808 (length,) = _struct_I.unpack(str[start:end])
01809 pattern = '<%sd'%length
01810 start = end
01811 end += struct.calcsize(pattern)
01812 val1.velocities = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01813 start = end
01814 end += 4
01815 (length,) = _struct_I.unpack(str[start:end])
01816 pattern = '<%sd'%length
01817 start = end
01818 end += struct.calcsize(pattern)
01819 val1.accelerations = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01820 _v136 = val1.time_from_start
01821 _x = _v136
01822 start = end
01823 end += 8
01824 (_x.secs, _x.nsecs,) = _struct_2i.unpack(str[start:end])
01825 self.trajectory.points.append(val1)
01826 _x = self
01827 start = end
01828 end += 12
01829 (_x.robot_state.joint_state.header.seq, _x.robot_state.joint_state.header.stamp.secs, _x.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01830 start = end
01831 end += 4
01832 (length,) = _struct_I.unpack(str[start:end])
01833 start = end
01834 end += length
01835 if python3:
01836 self.robot_state.joint_state.header.frame_id = str[start:end].decode('utf-8')
01837 else:
01838 self.robot_state.joint_state.header.frame_id = str[start:end]
01839 start = end
01840 end += 4
01841 (length,) = _struct_I.unpack(str[start:end])
01842 self.robot_state.joint_state.name = []
01843 for i in range(0, length):
01844 start = end
01845 end += 4
01846 (length,) = _struct_I.unpack(str[start:end])
01847 start = end
01848 end += length
01849 if python3:
01850 val1 = str[start:end].decode('utf-8')
01851 else:
01852 val1 = str[start:end]
01853 self.robot_state.joint_state.name.append(val1)
01854 start = end
01855 end += 4
01856 (length,) = _struct_I.unpack(str[start:end])
01857 pattern = '<%sd'%length
01858 start = end
01859 end += struct.calcsize(pattern)
01860 self.robot_state.joint_state.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01861 start = end
01862 end += 4
01863 (length,) = _struct_I.unpack(str[start:end])
01864 pattern = '<%sd'%length
01865 start = end
01866 end += struct.calcsize(pattern)
01867 self.robot_state.joint_state.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01868 start = end
01869 end += 4
01870 (length,) = _struct_I.unpack(str[start:end])
01871 pattern = '<%sd'%length
01872 start = end
01873 end += struct.calcsize(pattern)
01874 self.robot_state.joint_state.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01875 _x = self
01876 start = end
01877 end += 8
01878 (_x.robot_state.multi_dof_joint_state.stamp.secs, _x.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01879 start = end
01880 end += 4
01881 (length,) = _struct_I.unpack(str[start:end])
01882 self.robot_state.multi_dof_joint_state.joint_names = []
01883 for i in range(0, length):
01884 start = end
01885 end += 4
01886 (length,) = _struct_I.unpack(str[start:end])
01887 start = end
01888 end += length
01889 if python3:
01890 val1 = str[start:end].decode('utf-8')
01891 else:
01892 val1 = str[start:end]
01893 self.robot_state.multi_dof_joint_state.joint_names.append(val1)
01894 start = end
01895 end += 4
01896 (length,) = _struct_I.unpack(str[start:end])
01897 self.robot_state.multi_dof_joint_state.frame_ids = []
01898 for i in range(0, length):
01899 start = end
01900 end += 4
01901 (length,) = _struct_I.unpack(str[start:end])
01902 start = end
01903 end += length
01904 if python3:
01905 val1 = str[start:end].decode('utf-8')
01906 else:
01907 val1 = str[start:end]
01908 self.robot_state.multi_dof_joint_state.frame_ids.append(val1)
01909 start = end
01910 end += 4
01911 (length,) = _struct_I.unpack(str[start:end])
01912 self.robot_state.multi_dof_joint_state.child_frame_ids = []
01913 for i in range(0, length):
01914 start = end
01915 end += 4
01916 (length,) = _struct_I.unpack(str[start:end])
01917 start = end
01918 end += length
01919 if python3:
01920 val1 = str[start:end].decode('utf-8')
01921 else:
01922 val1 = str[start:end]
01923 self.robot_state.multi_dof_joint_state.child_frame_ids.append(val1)
01924 start = end
01925 end += 4
01926 (length,) = _struct_I.unpack(str[start:end])
01927 self.robot_state.multi_dof_joint_state.poses = []
01928 for i in range(0, length):
01929 val1 = geometry_msgs.msg.Pose()
01930 _v137 = val1.position
01931 _x = _v137
01932 start = end
01933 end += 24
01934 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01935 _v138 = val1.orientation
01936 _x = _v138
01937 start = end
01938 end += 32
01939 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01940 self.robot_state.multi_dof_joint_state.poses.append(val1)
01941 _x = self
01942 start = end
01943 end += 5
01944 (_x.check_collisions, _x.check_path_constraints, _x.check_goal_constraints, _x.check_joint_limits, _x.check_full_trajectory,) = _struct_5B.unpack(str[start:end])
01945 self.check_collisions = bool(self.check_collisions)
01946 self.check_path_constraints = bool(self.check_path_constraints)
01947 self.check_goal_constraints = bool(self.check_goal_constraints)
01948 self.check_joint_limits = bool(self.check_joint_limits)
01949 self.check_full_trajectory = bool(self.check_full_trajectory)
01950 start = end
01951 end += 4
01952 (length,) = _struct_I.unpack(str[start:end])
01953 self.path_constraints.joint_constraints = []
01954 for i in range(0, length):
01955 val1 = arm_navigation_msgs.msg.JointConstraint()
01956 start = end
01957 end += 4
01958 (length,) = _struct_I.unpack(str[start:end])
01959 start = end
01960 end += length
01961 if python3:
01962 val1.joint_name = str[start:end].decode('utf-8')
01963 else:
01964 val1.joint_name = str[start:end]
01965 _x = val1
01966 start = end
01967 end += 32
01968 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
01969 self.path_constraints.joint_constraints.append(val1)
01970 start = end
01971 end += 4
01972 (length,) = _struct_I.unpack(str[start:end])
01973 self.path_constraints.position_constraints = []
01974 for i in range(0, length):
01975 val1 = arm_navigation_msgs.msg.PositionConstraint()
01976 _v139 = val1.header
01977 start = end
01978 end += 4
01979 (_v139.seq,) = _struct_I.unpack(str[start:end])
01980 _v140 = _v139.stamp
01981 _x = _v140
01982 start = end
01983 end += 8
01984 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01985 start = end
01986 end += 4
01987 (length,) = _struct_I.unpack(str[start:end])
01988 start = end
01989 end += length
01990 if python3:
01991 _v139.frame_id = str[start:end].decode('utf-8')
01992 else:
01993 _v139.frame_id = str[start:end]
01994 start = end
01995 end += 4
01996 (length,) = _struct_I.unpack(str[start:end])
01997 start = end
01998 end += length
01999 if python3:
02000 val1.link_name = str[start:end].decode('utf-8')
02001 else:
02002 val1.link_name = str[start:end]
02003 _v141 = val1.target_point_offset
02004 _x = _v141
02005 start = end
02006 end += 24
02007 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02008 _v142 = val1.position
02009 _x = _v142
02010 start = end
02011 end += 24
02012 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02013 _v143 = val1.constraint_region_shape
02014 start = end
02015 end += 1
02016 (_v143.type,) = _struct_b.unpack(str[start:end])
02017 start = end
02018 end += 4
02019 (length,) = _struct_I.unpack(str[start:end])
02020 pattern = '<%sd'%length
02021 start = end
02022 end += struct.calcsize(pattern)
02023 _v143.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02024 start = end
02025 end += 4
02026 (length,) = _struct_I.unpack(str[start:end])
02027 pattern = '<%si'%length
02028 start = end
02029 end += struct.calcsize(pattern)
02030 _v143.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
02031 start = end
02032 end += 4
02033 (length,) = _struct_I.unpack(str[start:end])
02034 _v143.vertices = []
02035 for i in range(0, length):
02036 val3 = geometry_msgs.msg.Point()
02037 _x = val3
02038 start = end
02039 end += 24
02040 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02041 _v143.vertices.append(val3)
02042 _v144 = val1.constraint_region_orientation
02043 _x = _v144
02044 start = end
02045 end += 32
02046 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02047 start = end
02048 end += 8
02049 (val1.weight,) = _struct_d.unpack(str[start:end])
02050 self.path_constraints.position_constraints.append(val1)
02051 start = end
02052 end += 4
02053 (length,) = _struct_I.unpack(str[start:end])
02054 self.path_constraints.orientation_constraints = []
02055 for i in range(0, length):
02056 val1 = arm_navigation_msgs.msg.OrientationConstraint()
02057 _v145 = val1.header
02058 start = end
02059 end += 4
02060 (_v145.seq,) = _struct_I.unpack(str[start:end])
02061 _v146 = _v145.stamp
02062 _x = _v146
02063 start = end
02064 end += 8
02065 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02066 start = end
02067 end += 4
02068 (length,) = _struct_I.unpack(str[start:end])
02069 start = end
02070 end += length
02071 if python3:
02072 _v145.frame_id = str[start:end].decode('utf-8')
02073 else:
02074 _v145.frame_id = str[start:end]
02075 start = end
02076 end += 4
02077 (length,) = _struct_I.unpack(str[start:end])
02078 start = end
02079 end += length
02080 if python3:
02081 val1.link_name = str[start:end].decode('utf-8')
02082 else:
02083 val1.link_name = str[start:end]
02084 start = end
02085 end += 4
02086 (val1.type,) = _struct_i.unpack(str[start:end])
02087 _v147 = val1.orientation
02088 _x = _v147
02089 start = end
02090 end += 32
02091 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02092 _x = val1
02093 start = end
02094 end += 32
02095 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
02096 self.path_constraints.orientation_constraints.append(val1)
02097 start = end
02098 end += 4
02099 (length,) = _struct_I.unpack(str[start:end])
02100 self.path_constraints.visibility_constraints = []
02101 for i in range(0, length):
02102 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
02103 _v148 = val1.header
02104 start = end
02105 end += 4
02106 (_v148.seq,) = _struct_I.unpack(str[start:end])
02107 _v149 = _v148.stamp
02108 _x = _v149
02109 start = end
02110 end += 8
02111 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02112 start = end
02113 end += 4
02114 (length,) = _struct_I.unpack(str[start:end])
02115 start = end
02116 end += length
02117 if python3:
02118 _v148.frame_id = str[start:end].decode('utf-8')
02119 else:
02120 _v148.frame_id = str[start:end]
02121 _v150 = val1.target
02122 _v151 = _v150.header
02123 start = end
02124 end += 4
02125 (_v151.seq,) = _struct_I.unpack(str[start:end])
02126 _v152 = _v151.stamp
02127 _x = _v152
02128 start = end
02129 end += 8
02130 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02131 start = end
02132 end += 4
02133 (length,) = _struct_I.unpack(str[start:end])
02134 start = end
02135 end += length
02136 if python3:
02137 _v151.frame_id = str[start:end].decode('utf-8')
02138 else:
02139 _v151.frame_id = str[start:end]
02140 _v153 = _v150.point
02141 _x = _v153
02142 start = end
02143 end += 24
02144 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02145 _v154 = val1.sensor_pose
02146 _v155 = _v154.header
02147 start = end
02148 end += 4
02149 (_v155.seq,) = _struct_I.unpack(str[start:end])
02150 _v156 = _v155.stamp
02151 _x = _v156
02152 start = end
02153 end += 8
02154 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02155 start = end
02156 end += 4
02157 (length,) = _struct_I.unpack(str[start:end])
02158 start = end
02159 end += length
02160 if python3:
02161 _v155.frame_id = str[start:end].decode('utf-8')
02162 else:
02163 _v155.frame_id = str[start:end]
02164 _v157 = _v154.pose
02165 _v158 = _v157.position
02166 _x = _v158
02167 start = end
02168 end += 24
02169 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02170 _v159 = _v157.orientation
02171 _x = _v159
02172 start = end
02173 end += 32
02174 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02175 start = end
02176 end += 8
02177 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
02178 self.path_constraints.visibility_constraints.append(val1)
02179 start = end
02180 end += 4
02181 (length,) = _struct_I.unpack(str[start:end])
02182 self.goal_constraints.joint_constraints = []
02183 for i in range(0, length):
02184 val1 = arm_navigation_msgs.msg.JointConstraint()
02185 start = end
02186 end += 4
02187 (length,) = _struct_I.unpack(str[start:end])
02188 start = end
02189 end += length
02190 if python3:
02191 val1.joint_name = str[start:end].decode('utf-8')
02192 else:
02193 val1.joint_name = str[start:end]
02194 _x = val1
02195 start = end
02196 end += 32
02197 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
02198 self.goal_constraints.joint_constraints.append(val1)
02199 start = end
02200 end += 4
02201 (length,) = _struct_I.unpack(str[start:end])
02202 self.goal_constraints.position_constraints = []
02203 for i in range(0, length):
02204 val1 = arm_navigation_msgs.msg.PositionConstraint()
02205 _v160 = val1.header
02206 start = end
02207 end += 4
02208 (_v160.seq,) = _struct_I.unpack(str[start:end])
02209 _v161 = _v160.stamp
02210 _x = _v161
02211 start = end
02212 end += 8
02213 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02214 start = end
02215 end += 4
02216 (length,) = _struct_I.unpack(str[start:end])
02217 start = end
02218 end += length
02219 if python3:
02220 _v160.frame_id = str[start:end].decode('utf-8')
02221 else:
02222 _v160.frame_id = str[start:end]
02223 start = end
02224 end += 4
02225 (length,) = _struct_I.unpack(str[start:end])
02226 start = end
02227 end += length
02228 if python3:
02229 val1.link_name = str[start:end].decode('utf-8')
02230 else:
02231 val1.link_name = str[start:end]
02232 _v162 = val1.target_point_offset
02233 _x = _v162
02234 start = end
02235 end += 24
02236 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02237 _v163 = val1.position
02238 _x = _v163
02239 start = end
02240 end += 24
02241 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02242 _v164 = val1.constraint_region_shape
02243 start = end
02244 end += 1
02245 (_v164.type,) = _struct_b.unpack(str[start:end])
02246 start = end
02247 end += 4
02248 (length,) = _struct_I.unpack(str[start:end])
02249 pattern = '<%sd'%length
02250 start = end
02251 end += struct.calcsize(pattern)
02252 _v164.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02253 start = end
02254 end += 4
02255 (length,) = _struct_I.unpack(str[start:end])
02256 pattern = '<%si'%length
02257 start = end
02258 end += struct.calcsize(pattern)
02259 _v164.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
02260 start = end
02261 end += 4
02262 (length,) = _struct_I.unpack(str[start:end])
02263 _v164.vertices = []
02264 for i in range(0, length):
02265 val3 = geometry_msgs.msg.Point()
02266 _x = val3
02267 start = end
02268 end += 24
02269 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02270 _v164.vertices.append(val3)
02271 _v165 = val1.constraint_region_orientation
02272 _x = _v165
02273 start = end
02274 end += 32
02275 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02276 start = end
02277 end += 8
02278 (val1.weight,) = _struct_d.unpack(str[start:end])
02279 self.goal_constraints.position_constraints.append(val1)
02280 start = end
02281 end += 4
02282 (length,) = _struct_I.unpack(str[start:end])
02283 self.goal_constraints.orientation_constraints = []
02284 for i in range(0, length):
02285 val1 = arm_navigation_msgs.msg.OrientationConstraint()
02286 _v166 = val1.header
02287 start = end
02288 end += 4
02289 (_v166.seq,) = _struct_I.unpack(str[start:end])
02290 _v167 = _v166.stamp
02291 _x = _v167
02292 start = end
02293 end += 8
02294 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02295 start = end
02296 end += 4
02297 (length,) = _struct_I.unpack(str[start:end])
02298 start = end
02299 end += length
02300 if python3:
02301 _v166.frame_id = str[start:end].decode('utf-8')
02302 else:
02303 _v166.frame_id = str[start:end]
02304 start = end
02305 end += 4
02306 (length,) = _struct_I.unpack(str[start:end])
02307 start = end
02308 end += length
02309 if python3:
02310 val1.link_name = str[start:end].decode('utf-8')
02311 else:
02312 val1.link_name = str[start:end]
02313 start = end
02314 end += 4
02315 (val1.type,) = _struct_i.unpack(str[start:end])
02316 _v168 = val1.orientation
02317 _x = _v168
02318 start = end
02319 end += 32
02320 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02321 _x = val1
02322 start = end
02323 end += 32
02324 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
02325 self.goal_constraints.orientation_constraints.append(val1)
02326 start = end
02327 end += 4
02328 (length,) = _struct_I.unpack(str[start:end])
02329 self.goal_constraints.visibility_constraints = []
02330 for i in range(0, length):
02331 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
02332 _v169 = val1.header
02333 start = end
02334 end += 4
02335 (_v169.seq,) = _struct_I.unpack(str[start:end])
02336 _v170 = _v169.stamp
02337 _x = _v170
02338 start = end
02339 end += 8
02340 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02341 start = end
02342 end += 4
02343 (length,) = _struct_I.unpack(str[start:end])
02344 start = end
02345 end += length
02346 if python3:
02347 _v169.frame_id = str[start:end].decode('utf-8')
02348 else:
02349 _v169.frame_id = str[start:end]
02350 _v171 = val1.target
02351 _v172 = _v171.header
02352 start = end
02353 end += 4
02354 (_v172.seq,) = _struct_I.unpack(str[start:end])
02355 _v173 = _v172.stamp
02356 _x = _v173
02357 start = end
02358 end += 8
02359 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02360 start = end
02361 end += 4
02362 (length,) = _struct_I.unpack(str[start:end])
02363 start = end
02364 end += length
02365 if python3:
02366 _v172.frame_id = str[start:end].decode('utf-8')
02367 else:
02368 _v172.frame_id = str[start:end]
02369 _v174 = _v171.point
02370 _x = _v174
02371 start = end
02372 end += 24
02373 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02374 _v175 = val1.sensor_pose
02375 _v176 = _v175.header
02376 start = end
02377 end += 4
02378 (_v176.seq,) = _struct_I.unpack(str[start:end])
02379 _v177 = _v176.stamp
02380 _x = _v177
02381 start = end
02382 end += 8
02383 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02384 start = end
02385 end += 4
02386 (length,) = _struct_I.unpack(str[start:end])
02387 start = end
02388 end += length
02389 if python3:
02390 _v176.frame_id = str[start:end].decode('utf-8')
02391 else:
02392 _v176.frame_id = str[start:end]
02393 _v178 = _v175.pose
02394 _v179 = _v178.position
02395 _x = _v179
02396 start = end
02397 end += 24
02398 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02399 _v180 = _v178.orientation
02400 _x = _v180
02401 start = end
02402 end += 32
02403 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02404 start = end
02405 end += 8
02406 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
02407 self.goal_constraints.visibility_constraints.append(val1)
02408 return self
02409 except struct.error as e:
02410 raise genpy.DeserializationError(e)
02411
02412 _struct_I = genpy.struct_I
02413 _struct_b = struct.Struct("<b")
02414 _struct_d = struct.Struct("<d")
02415 _struct_2I = struct.Struct("<2I")
02416 _struct_i = struct.Struct("<i")
02417 _struct_3I = struct.Struct("<3I")
02418 _struct_4d = struct.Struct("<4d")
02419 _struct_3d = struct.Struct("<3d")
02420 _struct_2i = struct.Struct("<2i")
02421 _struct_5B = struct.Struct("<5B")
02422 """autogenerated by genpy from arm_navigation_msgs/GetJointTrajectoryValidityResponse.msg. Do not edit."""
02423 import sys
02424 python3 = True if sys.hexversion > 0x03000000 else False
02425 import genpy
02426 import struct
02427
02428 import arm_navigation_msgs.msg
02429 import geometry_msgs.msg
02430 import std_msgs.msg
02431
02432 class GetJointTrajectoryValidityResponse(genpy.Message):
02433 _md5sum = "a739823e2969bedb7e3343a4d8c097d4"
02434 _type = "arm_navigation_msgs/GetJointTrajectoryValidityResponse"
02435 _has_header = False
02436 _full_text = """
02437
02438
02439
02440 arm_navigation_msgs/ArmNavigationErrorCodes error_code
02441
02442
02443
02444
02445 arm_navigation_msgs/ArmNavigationErrorCodes[] trajectory_error_codes
02446
02447 arm_navigation_msgs/ContactInformation[] contacts
02448
02449
02450 ================================================================================
02451 MSG: arm_navigation_msgs/ArmNavigationErrorCodes
02452 int32 val
02453
02454 # overall behavior
02455 int32 PLANNING_FAILED=-1
02456 int32 SUCCESS=1
02457 int32 TIMED_OUT=-2
02458
02459 # start state errors
02460 int32 START_STATE_IN_COLLISION=-3
02461 int32 START_STATE_VIOLATES_PATH_CONSTRAINTS=-4
02462
02463 # goal errors
02464 int32 GOAL_IN_COLLISION=-5
02465 int32 GOAL_VIOLATES_PATH_CONSTRAINTS=-6
02466
02467 # robot state
02468 int32 INVALID_ROBOT_STATE=-7
02469 int32 INCOMPLETE_ROBOT_STATE=-8
02470
02471 # planning request errors
02472 int32 INVALID_PLANNER_ID=-9
02473 int32 INVALID_NUM_PLANNING_ATTEMPTS=-10
02474 int32 INVALID_ALLOWED_PLANNING_TIME=-11
02475 int32 INVALID_GROUP_NAME=-12
02476 int32 INVALID_GOAL_JOINT_CONSTRAINTS=-13
02477 int32 INVALID_GOAL_POSITION_CONSTRAINTS=-14
02478 int32 INVALID_GOAL_ORIENTATION_CONSTRAINTS=-15
02479 int32 INVALID_PATH_JOINT_CONSTRAINTS=-16
02480 int32 INVALID_PATH_POSITION_CONSTRAINTS=-17
02481 int32 INVALID_PATH_ORIENTATION_CONSTRAINTS=-18
02482
02483 # state/trajectory monitor errors
02484 int32 INVALID_TRAJECTORY=-19
02485 int32 INVALID_INDEX=-20
02486 int32 JOINT_LIMITS_VIOLATED=-21
02487 int32 PATH_CONSTRAINTS_VIOLATED=-22
02488 int32 COLLISION_CONSTRAINTS_VIOLATED=-23
02489 int32 GOAL_CONSTRAINTS_VIOLATED=-24
02490 int32 JOINTS_NOT_MOVING=-25
02491 int32 TRAJECTORY_CONTROLLER_FAILED=-26
02492
02493 # system errors
02494 int32 FRAME_TRANSFORM_FAILURE=-27
02495 int32 COLLISION_CHECKING_UNAVAILABLE=-28
02496 int32 ROBOT_STATE_STALE=-29
02497 int32 SENSOR_INFO_STALE=-30
02498
02499 # kinematics errors
02500 int32 NO_IK_SOLUTION=-31
02501 int32 INVALID_LINK_NAME=-32
02502 int32 IK_LINK_IN_COLLISION=-33
02503 int32 NO_FK_SOLUTION=-34
02504 int32 KINEMATICS_STATE_IN_COLLISION=-35
02505
02506 # general errors
02507 int32 INVALID_TIMEOUT=-36
02508
02509
02510 ================================================================================
02511 MSG: arm_navigation_msgs/ContactInformation
02512 # Standard ROS header contains information
02513 # about the frame in which this
02514 # contact is specified
02515 Header header
02516
02517 # Position of the contact point
02518 geometry_msgs/Point position
02519
02520 # Normal corresponding to the contact point
02521 geometry_msgs/Vector3 normal
02522
02523 # Depth of contact point
02524 float64 depth
02525
02526 # Name of the first body that is in contact
02527 # This could be a link or a namespace that represents a body
02528 string contact_body_1
02529 string attached_body_1
02530 uint32 body_type_1
02531
02532 # Name of the second body that is in contact
02533 # This could be a link or a namespace that represents a body
02534 string contact_body_2
02535 string attached_body_2
02536 uint32 body_type_2
02537
02538 uint32 ROBOT_LINK=0
02539 uint32 OBJECT=1
02540 uint32 ATTACHED_BODY=2
02541 ================================================================================
02542 MSG: std_msgs/Header
02543 # Standard metadata for higher-level stamped data types.
02544 # This is generally used to communicate timestamped data
02545 # in a particular coordinate frame.
02546 #
02547 # sequence ID: consecutively increasing ID
02548 uint32 seq
02549 #Two-integer timestamp that is expressed as:
02550 # * stamp.secs: seconds (stamp_secs) since epoch
02551 # * stamp.nsecs: nanoseconds since stamp_secs
02552 # time-handling sugar is provided by the client library
02553 time stamp
02554 #Frame this data is associated with
02555 # 0: no frame
02556 # 1: global frame
02557 string frame_id
02558
02559 ================================================================================
02560 MSG: geometry_msgs/Point
02561 # This contains the position of a point in free space
02562 float64 x
02563 float64 y
02564 float64 z
02565
02566 ================================================================================
02567 MSG: geometry_msgs/Vector3
02568 # This represents a vector in free space.
02569
02570 float64 x
02571 float64 y
02572 float64 z
02573 """
02574 __slots__ = ['error_code','trajectory_error_codes','contacts']
02575 _slot_types = ['arm_navigation_msgs/ArmNavigationErrorCodes','arm_navigation_msgs/ArmNavigationErrorCodes[]','arm_navigation_msgs/ContactInformation[]']
02576
02577 def __init__(self, *args, **kwds):
02578 """
02579 Constructor. Any message fields that are implicitly/explicitly
02580 set to None will be assigned a default value. The recommend
02581 use is keyword arguments as this is more robust to future message
02582 changes. You cannot mix in-order arguments and keyword arguments.
02583
02584 The available fields are:
02585 error_code,trajectory_error_codes,contacts
02586
02587 :param args: complete set of field values, in .msg order
02588 :param kwds: use keyword arguments corresponding to message field names
02589 to set specific fields.
02590 """
02591 if args or kwds:
02592 super(GetJointTrajectoryValidityResponse, self).__init__(*args, **kwds)
02593
02594 if self.error_code is None:
02595 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02596 if self.trajectory_error_codes is None:
02597 self.trajectory_error_codes = []
02598 if self.contacts is None:
02599 self.contacts = []
02600 else:
02601 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02602 self.trajectory_error_codes = []
02603 self.contacts = []
02604
02605 def _get_types(self):
02606 """
02607 internal API method
02608 """
02609 return self._slot_types
02610
02611 def serialize(self, buff):
02612 """
02613 serialize message into buffer
02614 :param buff: buffer, ``StringIO``
02615 """
02616 try:
02617 buff.write(_struct_i.pack(self.error_code.val))
02618 length = len(self.trajectory_error_codes)
02619 buff.write(_struct_I.pack(length))
02620 for val1 in self.trajectory_error_codes:
02621 buff.write(_struct_i.pack(val1.val))
02622 length = len(self.contacts)
02623 buff.write(_struct_I.pack(length))
02624 for val1 in self.contacts:
02625 _v181 = val1.header
02626 buff.write(_struct_I.pack(_v181.seq))
02627 _v182 = _v181.stamp
02628 _x = _v182
02629 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02630 _x = _v181.frame_id
02631 length = len(_x)
02632 if python3 or type(_x) == unicode:
02633 _x = _x.encode('utf-8')
02634 length = len(_x)
02635 buff.write(struct.pack('<I%ss'%length, length, _x))
02636 _v183 = val1.position
02637 _x = _v183
02638 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02639 _v184 = val1.normal
02640 _x = _v184
02641 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02642 buff.write(_struct_d.pack(val1.depth))
02643 _x = val1.contact_body_1
02644 length = len(_x)
02645 if python3 or type(_x) == unicode:
02646 _x = _x.encode('utf-8')
02647 length = len(_x)
02648 buff.write(struct.pack('<I%ss'%length, length, _x))
02649 _x = val1.attached_body_1
02650 length = len(_x)
02651 if python3 or type(_x) == unicode:
02652 _x = _x.encode('utf-8')
02653 length = len(_x)
02654 buff.write(struct.pack('<I%ss'%length, length, _x))
02655 buff.write(_struct_I.pack(val1.body_type_1))
02656 _x = val1.contact_body_2
02657 length = len(_x)
02658 if python3 or type(_x) == unicode:
02659 _x = _x.encode('utf-8')
02660 length = len(_x)
02661 buff.write(struct.pack('<I%ss'%length, length, _x))
02662 _x = val1.attached_body_2
02663 length = len(_x)
02664 if python3 or type(_x) == unicode:
02665 _x = _x.encode('utf-8')
02666 length = len(_x)
02667 buff.write(struct.pack('<I%ss'%length, length, _x))
02668 buff.write(_struct_I.pack(val1.body_type_2))
02669 except struct.error as se: self._check_types(se)
02670 except TypeError as te: self._check_types(te)
02671
02672 def deserialize(self, str):
02673 """
02674 unpack serialized message in str into this message instance
02675 :param str: byte array of serialized message, ``str``
02676 """
02677 try:
02678 if self.error_code is None:
02679 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02680 if self.trajectory_error_codes is None:
02681 self.trajectory_error_codes = None
02682 if self.contacts is None:
02683 self.contacts = None
02684 end = 0
02685 start = end
02686 end += 4
02687 (self.error_code.val,) = _struct_i.unpack(str[start:end])
02688 start = end
02689 end += 4
02690 (length,) = _struct_I.unpack(str[start:end])
02691 self.trajectory_error_codes = []
02692 for i in range(0, length):
02693 val1 = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02694 start = end
02695 end += 4
02696 (val1.val,) = _struct_i.unpack(str[start:end])
02697 self.trajectory_error_codes.append(val1)
02698 start = end
02699 end += 4
02700 (length,) = _struct_I.unpack(str[start:end])
02701 self.contacts = []
02702 for i in range(0, length):
02703 val1 = arm_navigation_msgs.msg.ContactInformation()
02704 _v185 = val1.header
02705 start = end
02706 end += 4
02707 (_v185.seq,) = _struct_I.unpack(str[start:end])
02708 _v186 = _v185.stamp
02709 _x = _v186
02710 start = end
02711 end += 8
02712 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02713 start = end
02714 end += 4
02715 (length,) = _struct_I.unpack(str[start:end])
02716 start = end
02717 end += length
02718 if python3:
02719 _v185.frame_id = str[start:end].decode('utf-8')
02720 else:
02721 _v185.frame_id = str[start:end]
02722 _v187 = val1.position
02723 _x = _v187
02724 start = end
02725 end += 24
02726 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02727 _v188 = val1.normal
02728 _x = _v188
02729 start = end
02730 end += 24
02731 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02732 start = end
02733 end += 8
02734 (val1.depth,) = _struct_d.unpack(str[start:end])
02735 start = end
02736 end += 4
02737 (length,) = _struct_I.unpack(str[start:end])
02738 start = end
02739 end += length
02740 if python3:
02741 val1.contact_body_1 = str[start:end].decode('utf-8')
02742 else:
02743 val1.contact_body_1 = str[start:end]
02744 start = end
02745 end += 4
02746 (length,) = _struct_I.unpack(str[start:end])
02747 start = end
02748 end += length
02749 if python3:
02750 val1.attached_body_1 = str[start:end].decode('utf-8')
02751 else:
02752 val1.attached_body_1 = str[start:end]
02753 start = end
02754 end += 4
02755 (val1.body_type_1,) = _struct_I.unpack(str[start:end])
02756 start = end
02757 end += 4
02758 (length,) = _struct_I.unpack(str[start:end])
02759 start = end
02760 end += length
02761 if python3:
02762 val1.contact_body_2 = str[start:end].decode('utf-8')
02763 else:
02764 val1.contact_body_2 = str[start:end]
02765 start = end
02766 end += 4
02767 (length,) = _struct_I.unpack(str[start:end])
02768 start = end
02769 end += length
02770 if python3:
02771 val1.attached_body_2 = str[start:end].decode('utf-8')
02772 else:
02773 val1.attached_body_2 = str[start:end]
02774 start = end
02775 end += 4
02776 (val1.body_type_2,) = _struct_I.unpack(str[start:end])
02777 self.contacts.append(val1)
02778 return self
02779 except struct.error as e:
02780 raise genpy.DeserializationError(e)
02781
02782
02783 def serialize_numpy(self, buff, numpy):
02784 """
02785 serialize message with numpy array types into buffer
02786 :param buff: buffer, ``StringIO``
02787 :param numpy: numpy python module
02788 """
02789 try:
02790 buff.write(_struct_i.pack(self.error_code.val))
02791 length = len(self.trajectory_error_codes)
02792 buff.write(_struct_I.pack(length))
02793 for val1 in self.trajectory_error_codes:
02794 buff.write(_struct_i.pack(val1.val))
02795 length = len(self.contacts)
02796 buff.write(_struct_I.pack(length))
02797 for val1 in self.contacts:
02798 _v189 = val1.header
02799 buff.write(_struct_I.pack(_v189.seq))
02800 _v190 = _v189.stamp
02801 _x = _v190
02802 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02803 _x = _v189.frame_id
02804 length = len(_x)
02805 if python3 or type(_x) == unicode:
02806 _x = _x.encode('utf-8')
02807 length = len(_x)
02808 buff.write(struct.pack('<I%ss'%length, length, _x))
02809 _v191 = val1.position
02810 _x = _v191
02811 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02812 _v192 = val1.normal
02813 _x = _v192
02814 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02815 buff.write(_struct_d.pack(val1.depth))
02816 _x = val1.contact_body_1
02817 length = len(_x)
02818 if python3 or type(_x) == unicode:
02819 _x = _x.encode('utf-8')
02820 length = len(_x)
02821 buff.write(struct.pack('<I%ss'%length, length, _x))
02822 _x = val1.attached_body_1
02823 length = len(_x)
02824 if python3 or type(_x) == unicode:
02825 _x = _x.encode('utf-8')
02826 length = len(_x)
02827 buff.write(struct.pack('<I%ss'%length, length, _x))
02828 buff.write(_struct_I.pack(val1.body_type_1))
02829 _x = val1.contact_body_2
02830 length = len(_x)
02831 if python3 or type(_x) == unicode:
02832 _x = _x.encode('utf-8')
02833 length = len(_x)
02834 buff.write(struct.pack('<I%ss'%length, length, _x))
02835 _x = val1.attached_body_2
02836 length = len(_x)
02837 if python3 or type(_x) == unicode:
02838 _x = _x.encode('utf-8')
02839 length = len(_x)
02840 buff.write(struct.pack('<I%ss'%length, length, _x))
02841 buff.write(_struct_I.pack(val1.body_type_2))
02842 except struct.error as se: self._check_types(se)
02843 except TypeError as te: self._check_types(te)
02844
02845 def deserialize_numpy(self, str, numpy):
02846 """
02847 unpack serialized message in str into this message instance using numpy for array types
02848 :param str: byte array of serialized message, ``str``
02849 :param numpy: numpy python module
02850 """
02851 try:
02852 if self.error_code is None:
02853 self.error_code = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02854 if self.trajectory_error_codes is None:
02855 self.trajectory_error_codes = None
02856 if self.contacts is None:
02857 self.contacts = None
02858 end = 0
02859 start = end
02860 end += 4
02861 (self.error_code.val,) = _struct_i.unpack(str[start:end])
02862 start = end
02863 end += 4
02864 (length,) = _struct_I.unpack(str[start:end])
02865 self.trajectory_error_codes = []
02866 for i in range(0, length):
02867 val1 = arm_navigation_msgs.msg.ArmNavigationErrorCodes()
02868 start = end
02869 end += 4
02870 (val1.val,) = _struct_i.unpack(str[start:end])
02871 self.trajectory_error_codes.append(val1)
02872 start = end
02873 end += 4
02874 (length,) = _struct_I.unpack(str[start:end])
02875 self.contacts = []
02876 for i in range(0, length):
02877 val1 = arm_navigation_msgs.msg.ContactInformation()
02878 _v193 = val1.header
02879 start = end
02880 end += 4
02881 (_v193.seq,) = _struct_I.unpack(str[start:end])
02882 _v194 = _v193.stamp
02883 _x = _v194
02884 start = end
02885 end += 8
02886 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02887 start = end
02888 end += 4
02889 (length,) = _struct_I.unpack(str[start:end])
02890 start = end
02891 end += length
02892 if python3:
02893 _v193.frame_id = str[start:end].decode('utf-8')
02894 else:
02895 _v193.frame_id = str[start:end]
02896 _v195 = val1.position
02897 _x = _v195
02898 start = end
02899 end += 24
02900 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02901 _v196 = val1.normal
02902 _x = _v196
02903 start = end
02904 end += 24
02905 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02906 start = end
02907 end += 8
02908 (val1.depth,) = _struct_d.unpack(str[start:end])
02909 start = end
02910 end += 4
02911 (length,) = _struct_I.unpack(str[start:end])
02912 start = end
02913 end += length
02914 if python3:
02915 val1.contact_body_1 = str[start:end].decode('utf-8')
02916 else:
02917 val1.contact_body_1 = str[start:end]
02918 start = end
02919 end += 4
02920 (length,) = _struct_I.unpack(str[start:end])
02921 start = end
02922 end += length
02923 if python3:
02924 val1.attached_body_1 = str[start:end].decode('utf-8')
02925 else:
02926 val1.attached_body_1 = str[start:end]
02927 start = end
02928 end += 4
02929 (val1.body_type_1,) = _struct_I.unpack(str[start:end])
02930 start = end
02931 end += 4
02932 (length,) = _struct_I.unpack(str[start:end])
02933 start = end
02934 end += length
02935 if python3:
02936 val1.contact_body_2 = str[start:end].decode('utf-8')
02937 else:
02938 val1.contact_body_2 = str[start:end]
02939 start = end
02940 end += 4
02941 (length,) = _struct_I.unpack(str[start:end])
02942 start = end
02943 end += length
02944 if python3:
02945 val1.attached_body_2 = str[start:end].decode('utf-8')
02946 else:
02947 val1.attached_body_2 = str[start:end]
02948 start = end
02949 end += 4
02950 (val1.body_type_2,) = _struct_I.unpack(str[start:end])
02951 self.contacts.append(val1)
02952 return self
02953 except struct.error as e:
02954 raise genpy.DeserializationError(e)
02955
02956 _struct_I = genpy.struct_I
02957 _struct_i = struct.Struct("<i")
02958 _struct_2I = struct.Struct("<2I")
02959 _struct_d = struct.Struct("<d")
02960 _struct_3d = struct.Struct("<3d")
02961 class GetJointTrajectoryValidity(object):
02962 _type = 'arm_navigation_msgs/GetJointTrajectoryValidity'
02963 _md5sum = '4e3f471462093adf968e2e6f6c2b6b2c'
02964 _request_class = GetJointTrajectoryValidityRequest
02965 _response_class = GetJointTrajectoryValidityResponse