00001 """autogenerated by genmsg_py from MoveArmGoal.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005 import arm_navigation_msgs.msg
00006 import geometry_msgs.msg
00007 import std_msgs.msg
00008 import roslib.rostime
00009 import sensor_msgs.msg
00010
00011 class MoveArmGoal(roslib.message.Message):
00012 _md5sum = "229373059043ad35d3ceeb2161f005d6"
00013 _type = "arm_navigation_msgs/MoveArmGoal"
00014 _has_header = False
00015 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00016 # Service name to call for getting a motion plan
00017 # Move arm will call a service on this service name
00018 # using the MotionPlanRequest specified here
00019 string planner_service_name
00020
00021 # A planning scene diff
00022 PlanningScene planning_scene_diff
00023
00024 # A motion planning request
00025 MotionPlanRequest motion_plan_request
00026
00027 # OPTIONAL: Diff uses ordered collision operations in addition to allowed_collision_matrix
00028 arm_navigation_msgs/OrderedCollisionOperations operations
00029
00030 # OPTIONAL flag
00031 # Setting this flag to true will allow move_arm to accept plans that do not go all the way to the goal
00032 bool accept_partial_plans
00033
00034 # OPTIONAL flag
00035 # Setting this flag to true will allow move_arm to accept invalid goals
00036 # This is useful if you are using a planner like CHOMP along with a noisy rapidly changing collision map
00037 # and you would like to plan to a goal near an object.
00038 bool accept_invalid_goals
00039
00040 # OPTIONAL flag
00041 # Setting this flag to true will disable the call to IK for a pose goal
00042 bool disable_ik
00043
00044 # OPTIONAL flag
00045 # Setting this flag to true will disable collision monitoring during execution of a trajectory
00046 bool disable_collision_monitoring
00047
00048 ================================================================================
00049 MSG: arm_navigation_msgs/PlanningScene
00050 #full robot state
00051 arm_navigation_msgs/RobotState robot_state
00052
00053 #additional frames for duplicating tf
00054 geometry_msgs/TransformStamped[] fixed_frame_transforms
00055
00056 #full allowed collision matrix
00057 AllowedCollisionMatrix allowed_collision_matrix
00058
00059 #allowed contacts
00060 arm_navigation_msgs/AllowedContactSpecification[] allowed_contacts
00061
00062 #all link paddings
00063 arm_navigation_msgs/LinkPadding[] link_padding
00064
00065 #collision objects
00066 arm_navigation_msgs/CollisionObject[] collision_objects
00067 arm_navigation_msgs/AttachedCollisionObject[] attached_collision_objects
00068
00069 #the collision map
00070 arm_navigation_msgs/CollisionMap collision_map
00071
00072 ================================================================================
00073 MSG: arm_navigation_msgs/RobotState
00074 # This message contains information about the robot state, i.e. the positions of its joints and links
00075 sensor_msgs/JointState joint_state
00076 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state
00077
00078 ================================================================================
00079 MSG: sensor_msgs/JointState
00080 # This is a message that holds data to describe the state of a set of torque controlled joints.
00081 #
00082 # The state of each joint (revolute or prismatic) is defined by:
00083 # * the position of the joint (rad or m),
00084 # * the velocity of the joint (rad/s or m/s) and
00085 # * the effort that is applied in the joint (Nm or N).
00086 #
00087 # Each joint is uniquely identified by its name
00088 # The header specifies the time at which the joint states were recorded. All the joint states
00089 # in one message have to be recorded at the same time.
00090 #
00091 # This message consists of a multiple arrays, one for each part of the joint state.
00092 # The goal is to make each of the fields optional. When e.g. your joints have no
00093 # effort associated with them, you can leave the effort array empty.
00094 #
00095 # All arrays in this message should have the same size, or be empty.
00096 # This is the only way to uniquely associate the joint name with the correct
00097 # states.
00098
00099
00100 Header header
00101
00102 string[] name
00103 float64[] position
00104 float64[] velocity
00105 float64[] effort
00106
00107 ================================================================================
00108 MSG: std_msgs/Header
00109 # Standard metadata for higher-level stamped data types.
00110 # This is generally used to communicate timestamped data
00111 # in a particular coordinate frame.
00112 #
00113 # sequence ID: consecutively increasing ID
00114 uint32 seq
00115 #Two-integer timestamp that is expressed as:
00116 # * stamp.secs: seconds (stamp_secs) since epoch
00117 # * stamp.nsecs: nanoseconds since stamp_secs
00118 # time-handling sugar is provided by the client library
00119 time stamp
00120 #Frame this data is associated with
00121 # 0: no frame
00122 # 1: global frame
00123 string frame_id
00124
00125 ================================================================================
00126 MSG: arm_navigation_msgs/MultiDOFJointState
00127 #A representation of a multi-dof joint state
00128 time stamp
00129 string[] joint_names
00130 string[] frame_ids
00131 string[] child_frame_ids
00132 geometry_msgs/Pose[] poses
00133
00134 ================================================================================
00135 MSG: geometry_msgs/Pose
00136 # A representation of pose in free space, composed of postion and orientation.
00137 Point position
00138 Quaternion orientation
00139
00140 ================================================================================
00141 MSG: geometry_msgs/Point
00142 # This contains the position of a point in free space
00143 float64 x
00144 float64 y
00145 float64 z
00146
00147 ================================================================================
00148 MSG: geometry_msgs/Quaternion
00149 # This represents an orientation in free space in quaternion form.
00150
00151 float64 x
00152 float64 y
00153 float64 z
00154 float64 w
00155
00156 ================================================================================
00157 MSG: geometry_msgs/TransformStamped
00158 # This expresses a transform from coordinate frame header.frame_id
00159 # to the coordinate frame child_frame_id
00160 #
00161 # This message is mostly used by the
00162 # <a href="http://www.ros.org/wiki/tf">tf</a> package.
00163 # See it's documentation for more information.
00164
00165 Header header
00166 string child_frame_id # the frame id of the child frame
00167 Transform transform
00168
00169 ================================================================================
00170 MSG: geometry_msgs/Transform
00171 # This represents the transform between two coordinate frames in free space.
00172
00173 Vector3 translation
00174 Quaternion rotation
00175
00176 ================================================================================
00177 MSG: geometry_msgs/Vector3
00178 # This represents a vector in free space.
00179
00180 float64 x
00181 float64 y
00182 float64 z
00183 ================================================================================
00184 MSG: arm_navigation_msgs/AllowedCollisionMatrix
00185 # the list of link names in the matrix
00186 string[] link_names
00187
00188 # the individual entries in the allowed collision matrix
00189 # symmetric, with same order as link_names
00190 AllowedCollisionEntry[] entries
00191
00192 ================================================================================
00193 MSG: arm_navigation_msgs/AllowedCollisionEntry
00194 # whether or not collision checking is enabled
00195 bool[] enabled
00196
00197 ================================================================================
00198 MSG: arm_navigation_msgs/AllowedContactSpecification
00199 # The names of the regions
00200 string name
00201
00202 # The shape of the region in the environment
00203 arm_navigation_msgs/Shape shape
00204
00205 # The pose of the space defining the region
00206 geometry_msgs/PoseStamped pose_stamped
00207
00208 # The set of links that will be allowed to have penetration contact within this region
00209 string[] link_names
00210
00211 # The maximum penetration depth allowed for every link
00212 float64 penetration_depth
00213
00214 ================================================================================
00215 MSG: arm_navigation_msgs/Shape
00216 byte SPHERE=0
00217 byte BOX=1
00218 byte CYLINDER=2
00219 byte MESH=3
00220
00221 byte type
00222
00223
00224 #### define sphere, box, cylinder ####
00225 # the origin of each shape is considered at the shape's center
00226
00227 # for sphere
00228 # radius := dimensions[0]
00229
00230 # for cylinder
00231 # radius := dimensions[0]
00232 # length := dimensions[1]
00233 # the length is along the Z axis
00234
00235 # for box
00236 # size_x := dimensions[0]
00237 # size_y := dimensions[1]
00238 # size_z := dimensions[2]
00239 float64[] dimensions
00240
00241
00242 #### define mesh ####
00243
00244 # list of triangles; triangle k is defined by tre vertices located
00245 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]
00246 int32[] triangles
00247 geometry_msgs/Point[] vertices
00248
00249 ================================================================================
00250 MSG: geometry_msgs/PoseStamped
00251 # A Pose with reference coordinate frame and timestamp
00252 Header header
00253 Pose pose
00254
00255 ================================================================================
00256 MSG: arm_navigation_msgs/LinkPadding
00257 #name for the link
00258 string link_name
00259
00260 # padding to apply to the link
00261 float64 padding
00262
00263 ================================================================================
00264 MSG: arm_navigation_msgs/CollisionObject
00265 # a header, used for interpreting the poses
00266 Header header
00267
00268 # the id of the object
00269 string id
00270
00271 # The padding used for filtering points near the object.
00272 # This does not affect collision checking for the object.
00273 # Set to negative to get zero padding.
00274 float32 padding
00275
00276 #This contains what is to be done with the object
00277 CollisionObjectOperation operation
00278
00279 #the shapes associated with the object
00280 arm_navigation_msgs/Shape[] shapes
00281
00282 #the poses associated with the shapes - will be transformed using the header
00283 geometry_msgs/Pose[] poses
00284
00285 ================================================================================
00286 MSG: arm_navigation_msgs/CollisionObjectOperation
00287 #Puts the object into the environment
00288 #or updates the object if already added
00289 byte ADD=0
00290
00291 #Removes the object from the environment entirely
00292 byte REMOVE=1
00293
00294 #Only valid within the context of a CollisionAttachedObject message
00295 #Will be ignored if sent with an CollisionObject message
00296 #Takes an attached object, detaches from the attached link
00297 #But adds back in as regular object
00298 byte DETACH_AND_ADD_AS_OBJECT=2
00299
00300 #Only valid within the context of a CollisionAttachedObject message
00301 #Will be ignored if sent with an CollisionObject message
00302 #Takes current object in the environment and removes it as
00303 #a regular object
00304 byte ATTACH_AND_REMOVE_AS_OBJECT=3
00305
00306 # Byte code for operation
00307 byte operation
00308
00309 ================================================================================
00310 MSG: arm_navigation_msgs/AttachedCollisionObject
00311 # The CollisionObject will be attached with a fixed joint to this link
00312 # If link name is set to REMOVE_ALL_ATTACHED_OBJECTS and object.operation
00313 # is set to REMOVE will remove all attached bodies attached to any object
00314 string link_name
00315
00316 #Reserved for indicating that all attached objects should be removed
00317 string REMOVE_ALL_ATTACHED_OBJECTS = "all"
00318
00319 #This contains the actual shapes and poses for the CollisionObject
00320 #to be attached to the link
00321 #If action is remove and no object.id is set, all objects
00322 #attached to the link indicated by link_name will be removed
00323 CollisionObject object
00324
00325 # The set of links that the attached objects are allowed to touch
00326 # by default - the link_name is included by default
00327 string[] touch_links
00328
00329 ================================================================================
00330 MSG: arm_navigation_msgs/CollisionMap
00331 #header for interpreting box positions
00332 Header header
00333
00334 #boxes for use in collision testing
00335 OrientedBoundingBox[] boxes
00336
00337 ================================================================================
00338 MSG: arm_navigation_msgs/OrientedBoundingBox
00339 #the center of the box
00340 geometry_msgs/Point32 center
00341
00342 #the extents of the box, assuming the center is at the point
00343 geometry_msgs/Point32 extents
00344
00345 #the axis of the box
00346 geometry_msgs/Point32 axis
00347
00348 #the angle of rotation around the axis
00349 float32 angle
00350
00351 ================================================================================
00352 MSG: geometry_msgs/Point32
00353 # This contains the position of a point in free space(with 32 bits of precision).
00354 # It is recommeded to use Point wherever possible instead of Point32.
00355 #
00356 # This recommendation is to promote interoperability.
00357 #
00358 # This message is designed to take up less space when sending
00359 # lots of points at once, as in the case of a PointCloud.
00360
00361 float32 x
00362 float32 y
00363 float32 z
00364 ================================================================================
00365 MSG: arm_navigation_msgs/MotionPlanRequest
00366 # This service contains the definition for a request to the motion
00367 # planner and the output it provides
00368
00369 # Parameters for the workspace that the planner should work inside
00370 arm_navigation_msgs/WorkspaceParameters workspace_parameters
00371
00372 # Starting state updates. If certain joints should be considered
00373 # at positions other than the current ones, these positions should
00374 # be set here
00375 arm_navigation_msgs/RobotState start_state
00376
00377 # The goal state for the model to plan for. The goal is achieved
00378 # if all constraints are satisfied
00379 arm_navigation_msgs/Constraints goal_constraints
00380
00381 # No state at any point along the path in the produced motion plan will violate these constraints
00382 arm_navigation_msgs/Constraints path_constraints
00383
00384 # The name of the motion planner to use. If no name is specified,
00385 # a default motion planner will be used
00386 string planner_id
00387
00388 # The name of the group of joints on which this planner is operating
00389 string group_name
00390
00391 # The number of times this plan is to be computed. Shortest solution
00392 # will be reported.
00393 int32 num_planning_attempts
00394
00395 # The maximum amount of time the motion planner is allowed to plan for
00396 duration allowed_planning_time
00397
00398 # An expected path duration (in seconds) along with an expected discretization of the path allows the planner to determine the discretization of the trajectory that it returns
00399 duration expected_path_duration
00400 duration expected_path_dt
00401
00402 ================================================================================
00403 MSG: arm_navigation_msgs/WorkspaceParameters
00404 # This message contains a set of parameters useful in
00405 # setting up the workspace for planning
00406 arm_navigation_msgs/Shape workspace_region_shape
00407 geometry_msgs/PoseStamped workspace_region_pose
00408
00409
00410 ================================================================================
00411 MSG: arm_navigation_msgs/Constraints
00412 # This message contains a list of motion planning constraints.
00413
00414 arm_navigation_msgs/JointConstraint[] joint_constraints
00415 arm_navigation_msgs/PositionConstraint[] position_constraints
00416 arm_navigation_msgs/OrientationConstraint[] orientation_constraints
00417 arm_navigation_msgs/VisibilityConstraint[] visibility_constraints
00418
00419 ================================================================================
00420 MSG: arm_navigation_msgs/JointConstraint
00421 # Constrain the position of a joint to be within a certain bound
00422 string joint_name
00423
00424 # the bound to be achieved is [position - tolerance_below, position + tolerance_above]
00425 float64 position
00426 float64 tolerance_above
00427 float64 tolerance_below
00428
00429 # A weighting factor for this constraint
00430 float64 weight
00431 ================================================================================
00432 MSG: arm_navigation_msgs/PositionConstraint
00433 # This message contains the definition of a position constraint.
00434 Header header
00435
00436 # The robot link this constraint refers to
00437 string link_name
00438
00439 # The offset (in the link frame) for the target point on the link we are planning for
00440 geometry_msgs/Point target_point_offset
00441
00442 # The nominal/target position for the point we are planning for
00443 geometry_msgs/Point position
00444
00445 # The shape of the bounded region that constrains the position of the end-effector
00446 # This region is always centered at the position defined above
00447 arm_navigation_msgs/Shape constraint_region_shape
00448
00449 # The orientation of the bounded region that constrains the position of the end-effector.
00450 # This allows the specification of non-axis aligned constraints
00451 geometry_msgs/Quaternion constraint_region_orientation
00452
00453 # Constraint weighting factor - a weight for this constraint
00454 float64 weight
00455
00456 ================================================================================
00457 MSG: arm_navigation_msgs/OrientationConstraint
00458 # This message contains the definition of an orientation constraint.
00459 Header header
00460
00461 # The robot link this constraint refers to
00462 string link_name
00463
00464 # The type of the constraint
00465 int32 type
00466 int32 LINK_FRAME=0
00467 int32 HEADER_FRAME=1
00468
00469 # The desired orientation of the robot link specified as a quaternion
00470 geometry_msgs/Quaternion orientation
00471
00472 # optional RPY error tolerances specified if
00473 float64 absolute_roll_tolerance
00474 float64 absolute_pitch_tolerance
00475 float64 absolute_yaw_tolerance
00476
00477 # Constraint weighting factor - a weight for this constraint
00478 float64 weight
00479
00480 ================================================================================
00481 MSG: arm_navigation_msgs/VisibilityConstraint
00482 # This message contains the definition of a visibility constraint.
00483 Header header
00484
00485 # The point stamped target that needs to be kept within view of the sensor
00486 geometry_msgs/PointStamped target
00487
00488 # The local pose of the frame in which visibility is to be maintained
00489 # The frame id should represent the robot link to which the sensor is attached
00490 # The visual axis of the sensor is assumed to be along the X axis of this frame
00491 geometry_msgs/PoseStamped sensor_pose
00492
00493 # The deviation (in radians) that will be tolerated
00494 # Constraint error will be measured as the solid angle between the
00495 # X axis of the frame defined above and the vector between the origin
00496 # of the frame defined above and the target location
00497 float64 absolute_tolerance
00498
00499
00500 ================================================================================
00501 MSG: geometry_msgs/PointStamped
00502 # This represents a Point with reference coordinate frame and timestamp
00503 Header header
00504 Point point
00505
00506 ================================================================================
00507 MSG: arm_navigation_msgs/OrderedCollisionOperations
00508 # A set of collision operations that will be performed in the order they are specified
00509 CollisionOperation[] collision_operations
00510 ================================================================================
00511 MSG: arm_navigation_msgs/CollisionOperation
00512 # A definition of a collision operation
00513 # E.g. ("gripper",COLLISION_SET_ALL,ENABLE) will enable collisions
00514 # between the gripper and all objects in the collision space
00515
00516 string object1
00517 string object2
00518 string COLLISION_SET_ALL="all"
00519 string COLLISION_SET_OBJECTS="objects"
00520 string COLLISION_SET_ATTACHED_OBJECTS="attached"
00521
00522 # The penetration distance to which collisions are allowed. This is 0.0 by default.
00523 float64 penetration_distance
00524
00525 # Flag that determines whether collisions will be enabled or disabled for the pair of objects specified above
00526 int32 operation
00527 int32 DISABLE=0
00528 int32 ENABLE=1
00529
00530 """
00531 __slots__ = ['planner_service_name','planning_scene_diff','motion_plan_request','operations','accept_partial_plans','accept_invalid_goals','disable_ik','disable_collision_monitoring']
00532 _slot_types = ['string','arm_navigation_msgs/PlanningScene','arm_navigation_msgs/MotionPlanRequest','arm_navigation_msgs/OrderedCollisionOperations','bool','bool','bool','bool']
00533
00534 def __init__(self, *args, **kwds):
00535 """
00536 Constructor. Any message fields that are implicitly/explicitly
00537 set to None will be assigned a default value. The recommend
00538 use is keyword arguments as this is more robust to future message
00539 changes. You cannot mix in-order arguments and keyword arguments.
00540
00541 The available fields are:
00542 planner_service_name,planning_scene_diff,motion_plan_request,operations,accept_partial_plans,accept_invalid_goals,disable_ik,disable_collision_monitoring
00543
00544 @param args: complete set of field values, in .msg order
00545 @param kwds: use keyword arguments corresponding to message field names
00546 to set specific fields.
00547 """
00548 if args or kwds:
00549 super(MoveArmGoal, self).__init__(*args, **kwds)
00550
00551 if self.planner_service_name is None:
00552 self.planner_service_name = ''
00553 if self.planning_scene_diff is None:
00554 self.planning_scene_diff = arm_navigation_msgs.msg.PlanningScene()
00555 if self.motion_plan_request is None:
00556 self.motion_plan_request = arm_navigation_msgs.msg.MotionPlanRequest()
00557 if self.operations is None:
00558 self.operations = arm_navigation_msgs.msg.OrderedCollisionOperations()
00559 if self.accept_partial_plans is None:
00560 self.accept_partial_plans = False
00561 if self.accept_invalid_goals is None:
00562 self.accept_invalid_goals = False
00563 if self.disable_ik is None:
00564 self.disable_ik = False
00565 if self.disable_collision_monitoring is None:
00566 self.disable_collision_monitoring = False
00567 else:
00568 self.planner_service_name = ''
00569 self.planning_scene_diff = arm_navigation_msgs.msg.PlanningScene()
00570 self.motion_plan_request = arm_navigation_msgs.msg.MotionPlanRequest()
00571 self.operations = arm_navigation_msgs.msg.OrderedCollisionOperations()
00572 self.accept_partial_plans = False
00573 self.accept_invalid_goals = False
00574 self.disable_ik = False
00575 self.disable_collision_monitoring = False
00576
00577 def _get_types(self):
00578 """
00579 internal API method
00580 """
00581 return self._slot_types
00582
00583 def serialize(self, buff):
00584 """
00585 serialize message into buffer
00586 @param buff: buffer
00587 @type buff: StringIO
00588 """
00589 try:
00590 _x = self.planner_service_name
00591 length = len(_x)
00592 buff.write(struct.pack('<I%ss'%length, length, _x))
00593 _x = self
00594 buff.write(_struct_3I.pack(_x.planning_scene_diff.robot_state.joint_state.header.seq, _x.planning_scene_diff.robot_state.joint_state.header.stamp.secs, _x.planning_scene_diff.robot_state.joint_state.header.stamp.nsecs))
00595 _x = self.planning_scene_diff.robot_state.joint_state.header.frame_id
00596 length = len(_x)
00597 buff.write(struct.pack('<I%ss'%length, length, _x))
00598 length = len(self.planning_scene_diff.robot_state.joint_state.name)
00599 buff.write(_struct_I.pack(length))
00600 for val1 in self.planning_scene_diff.robot_state.joint_state.name:
00601 length = len(val1)
00602 buff.write(struct.pack('<I%ss'%length, length, val1))
00603 length = len(self.planning_scene_diff.robot_state.joint_state.position)
00604 buff.write(_struct_I.pack(length))
00605 pattern = '<%sd'%length
00606 buff.write(struct.pack(pattern, *self.planning_scene_diff.robot_state.joint_state.position))
00607 length = len(self.planning_scene_diff.robot_state.joint_state.velocity)
00608 buff.write(_struct_I.pack(length))
00609 pattern = '<%sd'%length
00610 buff.write(struct.pack(pattern, *self.planning_scene_diff.robot_state.joint_state.velocity))
00611 length = len(self.planning_scene_diff.robot_state.joint_state.effort)
00612 buff.write(_struct_I.pack(length))
00613 pattern = '<%sd'%length
00614 buff.write(struct.pack(pattern, *self.planning_scene_diff.robot_state.joint_state.effort))
00615 _x = self
00616 buff.write(_struct_2I.pack(_x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.secs, _x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.nsecs))
00617 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names)
00618 buff.write(_struct_I.pack(length))
00619 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names:
00620 length = len(val1)
00621 buff.write(struct.pack('<I%ss'%length, length, val1))
00622 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids)
00623 buff.write(_struct_I.pack(length))
00624 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids:
00625 length = len(val1)
00626 buff.write(struct.pack('<I%ss'%length, length, val1))
00627 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids)
00628 buff.write(_struct_I.pack(length))
00629 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids:
00630 length = len(val1)
00631 buff.write(struct.pack('<I%ss'%length, length, val1))
00632 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.poses)
00633 buff.write(_struct_I.pack(length))
00634 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.poses:
00635 _v1 = val1.position
00636 _x = _v1
00637 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00638 _v2 = val1.orientation
00639 _x = _v2
00640 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00641 length = len(self.planning_scene_diff.fixed_frame_transforms)
00642 buff.write(_struct_I.pack(length))
00643 for val1 in self.planning_scene_diff.fixed_frame_transforms:
00644 _v3 = val1.header
00645 buff.write(_struct_I.pack(_v3.seq))
00646 _v4 = _v3.stamp
00647 _x = _v4
00648 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00649 _x = _v3.frame_id
00650 length = len(_x)
00651 buff.write(struct.pack('<I%ss'%length, length, _x))
00652 _x = val1.child_frame_id
00653 length = len(_x)
00654 buff.write(struct.pack('<I%ss'%length, length, _x))
00655 _v5 = val1.transform
00656 _v6 = _v5.translation
00657 _x = _v6
00658 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00659 _v7 = _v5.rotation
00660 _x = _v7
00661 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00662 length = len(self.planning_scene_diff.allowed_collision_matrix.link_names)
00663 buff.write(_struct_I.pack(length))
00664 for val1 in self.planning_scene_diff.allowed_collision_matrix.link_names:
00665 length = len(val1)
00666 buff.write(struct.pack('<I%ss'%length, length, val1))
00667 length = len(self.planning_scene_diff.allowed_collision_matrix.entries)
00668 buff.write(_struct_I.pack(length))
00669 for val1 in self.planning_scene_diff.allowed_collision_matrix.entries:
00670 length = len(val1.enabled)
00671 buff.write(_struct_I.pack(length))
00672 pattern = '<%sB'%length
00673 buff.write(struct.pack(pattern, *val1.enabled))
00674 length = len(self.planning_scene_diff.allowed_contacts)
00675 buff.write(_struct_I.pack(length))
00676 for val1 in self.planning_scene_diff.allowed_contacts:
00677 _x = val1.name
00678 length = len(_x)
00679 buff.write(struct.pack('<I%ss'%length, length, _x))
00680 _v8 = val1.shape
00681 buff.write(_struct_b.pack(_v8.type))
00682 length = len(_v8.dimensions)
00683 buff.write(_struct_I.pack(length))
00684 pattern = '<%sd'%length
00685 buff.write(struct.pack(pattern, *_v8.dimensions))
00686 length = len(_v8.triangles)
00687 buff.write(_struct_I.pack(length))
00688 pattern = '<%si'%length
00689 buff.write(struct.pack(pattern, *_v8.triangles))
00690 length = len(_v8.vertices)
00691 buff.write(_struct_I.pack(length))
00692 for val3 in _v8.vertices:
00693 _x = val3
00694 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00695 _v9 = val1.pose_stamped
00696 _v10 = _v9.header
00697 buff.write(_struct_I.pack(_v10.seq))
00698 _v11 = _v10.stamp
00699 _x = _v11
00700 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00701 _x = _v10.frame_id
00702 length = len(_x)
00703 buff.write(struct.pack('<I%ss'%length, length, _x))
00704 _v12 = _v9.pose
00705 _v13 = _v12.position
00706 _x = _v13
00707 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00708 _v14 = _v12.orientation
00709 _x = _v14
00710 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00711 length = len(val1.link_names)
00712 buff.write(_struct_I.pack(length))
00713 for val2 in val1.link_names:
00714 length = len(val2)
00715 buff.write(struct.pack('<I%ss'%length, length, val2))
00716 buff.write(_struct_d.pack(val1.penetration_depth))
00717 length = len(self.planning_scene_diff.link_padding)
00718 buff.write(_struct_I.pack(length))
00719 for val1 in self.planning_scene_diff.link_padding:
00720 _x = val1.link_name
00721 length = len(_x)
00722 buff.write(struct.pack('<I%ss'%length, length, _x))
00723 buff.write(_struct_d.pack(val1.padding))
00724 length = len(self.planning_scene_diff.collision_objects)
00725 buff.write(_struct_I.pack(length))
00726 for val1 in self.planning_scene_diff.collision_objects:
00727 _v15 = val1.header
00728 buff.write(_struct_I.pack(_v15.seq))
00729 _v16 = _v15.stamp
00730 _x = _v16
00731 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00732 _x = _v15.frame_id
00733 length = len(_x)
00734 buff.write(struct.pack('<I%ss'%length, length, _x))
00735 _x = val1.id
00736 length = len(_x)
00737 buff.write(struct.pack('<I%ss'%length, length, _x))
00738 buff.write(_struct_f.pack(val1.padding))
00739 _v17 = val1.operation
00740 buff.write(_struct_b.pack(_v17.operation))
00741 length = len(val1.shapes)
00742 buff.write(_struct_I.pack(length))
00743 for val2 in val1.shapes:
00744 buff.write(_struct_b.pack(val2.type))
00745 length = len(val2.dimensions)
00746 buff.write(_struct_I.pack(length))
00747 pattern = '<%sd'%length
00748 buff.write(struct.pack(pattern, *val2.dimensions))
00749 length = len(val2.triangles)
00750 buff.write(_struct_I.pack(length))
00751 pattern = '<%si'%length
00752 buff.write(struct.pack(pattern, *val2.triangles))
00753 length = len(val2.vertices)
00754 buff.write(_struct_I.pack(length))
00755 for val3 in val2.vertices:
00756 _x = val3
00757 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00758 length = len(val1.poses)
00759 buff.write(_struct_I.pack(length))
00760 for val2 in val1.poses:
00761 _v18 = val2.position
00762 _x = _v18
00763 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00764 _v19 = val2.orientation
00765 _x = _v19
00766 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00767 length = len(self.planning_scene_diff.attached_collision_objects)
00768 buff.write(_struct_I.pack(length))
00769 for val1 in self.planning_scene_diff.attached_collision_objects:
00770 _x = val1.link_name
00771 length = len(_x)
00772 buff.write(struct.pack('<I%ss'%length, length, _x))
00773 _v20 = val1.object
00774 _v21 = _v20.header
00775 buff.write(_struct_I.pack(_v21.seq))
00776 _v22 = _v21.stamp
00777 _x = _v22
00778 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00779 _x = _v21.frame_id
00780 length = len(_x)
00781 buff.write(struct.pack('<I%ss'%length, length, _x))
00782 _x = _v20.id
00783 length = len(_x)
00784 buff.write(struct.pack('<I%ss'%length, length, _x))
00785 buff.write(_struct_f.pack(_v20.padding))
00786 _v23 = _v20.operation
00787 buff.write(_struct_b.pack(_v23.operation))
00788 length = len(_v20.shapes)
00789 buff.write(_struct_I.pack(length))
00790 for val3 in _v20.shapes:
00791 buff.write(_struct_b.pack(val3.type))
00792 length = len(val3.dimensions)
00793 buff.write(_struct_I.pack(length))
00794 pattern = '<%sd'%length
00795 buff.write(struct.pack(pattern, *val3.dimensions))
00796 length = len(val3.triangles)
00797 buff.write(_struct_I.pack(length))
00798 pattern = '<%si'%length
00799 buff.write(struct.pack(pattern, *val3.triangles))
00800 length = len(val3.vertices)
00801 buff.write(_struct_I.pack(length))
00802 for val4 in val3.vertices:
00803 _x = val4
00804 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00805 length = len(_v20.poses)
00806 buff.write(_struct_I.pack(length))
00807 for val3 in _v20.poses:
00808 _v24 = val3.position
00809 _x = _v24
00810 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00811 _v25 = val3.orientation
00812 _x = _v25
00813 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00814 length = len(val1.touch_links)
00815 buff.write(_struct_I.pack(length))
00816 for val2 in val1.touch_links:
00817 length = len(val2)
00818 buff.write(struct.pack('<I%ss'%length, length, val2))
00819 _x = self
00820 buff.write(_struct_3I.pack(_x.planning_scene_diff.collision_map.header.seq, _x.planning_scene_diff.collision_map.header.stamp.secs, _x.planning_scene_diff.collision_map.header.stamp.nsecs))
00821 _x = self.planning_scene_diff.collision_map.header.frame_id
00822 length = len(_x)
00823 buff.write(struct.pack('<I%ss'%length, length, _x))
00824 length = len(self.planning_scene_diff.collision_map.boxes)
00825 buff.write(_struct_I.pack(length))
00826 for val1 in self.planning_scene_diff.collision_map.boxes:
00827 _v26 = val1.center
00828 _x = _v26
00829 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
00830 _v27 = val1.extents
00831 _x = _v27
00832 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
00833 _v28 = val1.axis
00834 _x = _v28
00835 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
00836 buff.write(_struct_f.pack(val1.angle))
00837 buff.write(_struct_b.pack(self.motion_plan_request.workspace_parameters.workspace_region_shape.type))
00838 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions)
00839 buff.write(_struct_I.pack(length))
00840 pattern = '<%sd'%length
00841 buff.write(struct.pack(pattern, *self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions))
00842 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles)
00843 buff.write(_struct_I.pack(length))
00844 pattern = '<%si'%length
00845 buff.write(struct.pack(pattern, *self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles))
00846 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices)
00847 buff.write(_struct_I.pack(length))
00848 for val1 in self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices:
00849 _x = val1
00850 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00851 _x = self
00852 buff.write(_struct_3I.pack(_x.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs))
00853 _x = self.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id
00854 length = len(_x)
00855 buff.write(struct.pack('<I%ss'%length, length, _x))
00856 _x = self
00857 buff.write(_struct_7d3I.pack(_x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.motion_plan_request.start_state.joint_state.header.seq, _x.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.motion_plan_request.start_state.joint_state.header.stamp.nsecs))
00858 _x = self.motion_plan_request.start_state.joint_state.header.frame_id
00859 length = len(_x)
00860 buff.write(struct.pack('<I%ss'%length, length, _x))
00861 length = len(self.motion_plan_request.start_state.joint_state.name)
00862 buff.write(_struct_I.pack(length))
00863 for val1 in self.motion_plan_request.start_state.joint_state.name:
00864 length = len(val1)
00865 buff.write(struct.pack('<I%ss'%length, length, val1))
00866 length = len(self.motion_plan_request.start_state.joint_state.position)
00867 buff.write(_struct_I.pack(length))
00868 pattern = '<%sd'%length
00869 buff.write(struct.pack(pattern, *self.motion_plan_request.start_state.joint_state.position))
00870 length = len(self.motion_plan_request.start_state.joint_state.velocity)
00871 buff.write(_struct_I.pack(length))
00872 pattern = '<%sd'%length
00873 buff.write(struct.pack(pattern, *self.motion_plan_request.start_state.joint_state.velocity))
00874 length = len(self.motion_plan_request.start_state.joint_state.effort)
00875 buff.write(_struct_I.pack(length))
00876 pattern = '<%sd'%length
00877 buff.write(struct.pack(pattern, *self.motion_plan_request.start_state.joint_state.effort))
00878 _x = self
00879 buff.write(_struct_2I.pack(_x.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs))
00880 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.joint_names)
00881 buff.write(_struct_I.pack(length))
00882 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.joint_names:
00883 length = len(val1)
00884 buff.write(struct.pack('<I%ss'%length, length, val1))
00885 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids)
00886 buff.write(_struct_I.pack(length))
00887 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids:
00888 length = len(val1)
00889 buff.write(struct.pack('<I%ss'%length, length, val1))
00890 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids)
00891 buff.write(_struct_I.pack(length))
00892 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids:
00893 length = len(val1)
00894 buff.write(struct.pack('<I%ss'%length, length, val1))
00895 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.poses)
00896 buff.write(_struct_I.pack(length))
00897 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.poses:
00898 _v29 = val1.position
00899 _x = _v29
00900 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00901 _v30 = val1.orientation
00902 _x = _v30
00903 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00904 length = len(self.motion_plan_request.goal_constraints.joint_constraints)
00905 buff.write(_struct_I.pack(length))
00906 for val1 in self.motion_plan_request.goal_constraints.joint_constraints:
00907 _x = val1.joint_name
00908 length = len(_x)
00909 buff.write(struct.pack('<I%ss'%length, length, _x))
00910 _x = val1
00911 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
00912 length = len(self.motion_plan_request.goal_constraints.position_constraints)
00913 buff.write(_struct_I.pack(length))
00914 for val1 in self.motion_plan_request.goal_constraints.position_constraints:
00915 _v31 = val1.header
00916 buff.write(_struct_I.pack(_v31.seq))
00917 _v32 = _v31.stamp
00918 _x = _v32
00919 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00920 _x = _v31.frame_id
00921 length = len(_x)
00922 buff.write(struct.pack('<I%ss'%length, length, _x))
00923 _x = val1.link_name
00924 length = len(_x)
00925 buff.write(struct.pack('<I%ss'%length, length, _x))
00926 _v33 = val1.target_point_offset
00927 _x = _v33
00928 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00929 _v34 = val1.position
00930 _x = _v34
00931 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00932 _v35 = val1.constraint_region_shape
00933 buff.write(_struct_b.pack(_v35.type))
00934 length = len(_v35.dimensions)
00935 buff.write(_struct_I.pack(length))
00936 pattern = '<%sd'%length
00937 buff.write(struct.pack(pattern, *_v35.dimensions))
00938 length = len(_v35.triangles)
00939 buff.write(_struct_I.pack(length))
00940 pattern = '<%si'%length
00941 buff.write(struct.pack(pattern, *_v35.triangles))
00942 length = len(_v35.vertices)
00943 buff.write(_struct_I.pack(length))
00944 for val3 in _v35.vertices:
00945 _x = val3
00946 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00947 _v36 = val1.constraint_region_orientation
00948 _x = _v36
00949 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00950 buff.write(_struct_d.pack(val1.weight))
00951 length = len(self.motion_plan_request.goal_constraints.orientation_constraints)
00952 buff.write(_struct_I.pack(length))
00953 for val1 in self.motion_plan_request.goal_constraints.orientation_constraints:
00954 _v37 = val1.header
00955 buff.write(_struct_I.pack(_v37.seq))
00956 _v38 = _v37.stamp
00957 _x = _v38
00958 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00959 _x = _v37.frame_id
00960 length = len(_x)
00961 buff.write(struct.pack('<I%ss'%length, length, _x))
00962 _x = val1.link_name
00963 length = len(_x)
00964 buff.write(struct.pack('<I%ss'%length, length, _x))
00965 buff.write(_struct_i.pack(val1.type))
00966 _v39 = val1.orientation
00967 _x = _v39
00968 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00969 _x = val1
00970 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
00971 length = len(self.motion_plan_request.goal_constraints.visibility_constraints)
00972 buff.write(_struct_I.pack(length))
00973 for val1 in self.motion_plan_request.goal_constraints.visibility_constraints:
00974 _v40 = val1.header
00975 buff.write(_struct_I.pack(_v40.seq))
00976 _v41 = _v40.stamp
00977 _x = _v41
00978 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00979 _x = _v40.frame_id
00980 length = len(_x)
00981 buff.write(struct.pack('<I%ss'%length, length, _x))
00982 _v42 = val1.target
00983 _v43 = _v42.header
00984 buff.write(_struct_I.pack(_v43.seq))
00985 _v44 = _v43.stamp
00986 _x = _v44
00987 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00988 _x = _v43.frame_id
00989 length = len(_x)
00990 buff.write(struct.pack('<I%ss'%length, length, _x))
00991 _v45 = _v42.point
00992 _x = _v45
00993 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00994 _v46 = val1.sensor_pose
00995 _v47 = _v46.header
00996 buff.write(_struct_I.pack(_v47.seq))
00997 _v48 = _v47.stamp
00998 _x = _v48
00999 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01000 _x = _v47.frame_id
01001 length = len(_x)
01002 buff.write(struct.pack('<I%ss'%length, length, _x))
01003 _v49 = _v46.pose
01004 _v50 = _v49.position
01005 _x = _v50
01006 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01007 _v51 = _v49.orientation
01008 _x = _v51
01009 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01010 buff.write(_struct_d.pack(val1.absolute_tolerance))
01011 length = len(self.motion_plan_request.path_constraints.joint_constraints)
01012 buff.write(_struct_I.pack(length))
01013 for val1 in self.motion_plan_request.path_constraints.joint_constraints:
01014 _x = val1.joint_name
01015 length = len(_x)
01016 buff.write(struct.pack('<I%ss'%length, length, _x))
01017 _x = val1
01018 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
01019 length = len(self.motion_plan_request.path_constraints.position_constraints)
01020 buff.write(_struct_I.pack(length))
01021 for val1 in self.motion_plan_request.path_constraints.position_constraints:
01022 _v52 = val1.header
01023 buff.write(_struct_I.pack(_v52.seq))
01024 _v53 = _v52.stamp
01025 _x = _v53
01026 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01027 _x = _v52.frame_id
01028 length = len(_x)
01029 buff.write(struct.pack('<I%ss'%length, length, _x))
01030 _x = val1.link_name
01031 length = len(_x)
01032 buff.write(struct.pack('<I%ss'%length, length, _x))
01033 _v54 = val1.target_point_offset
01034 _x = _v54
01035 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01036 _v55 = val1.position
01037 _x = _v55
01038 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01039 _v56 = val1.constraint_region_shape
01040 buff.write(_struct_b.pack(_v56.type))
01041 length = len(_v56.dimensions)
01042 buff.write(_struct_I.pack(length))
01043 pattern = '<%sd'%length
01044 buff.write(struct.pack(pattern, *_v56.dimensions))
01045 length = len(_v56.triangles)
01046 buff.write(_struct_I.pack(length))
01047 pattern = '<%si'%length
01048 buff.write(struct.pack(pattern, *_v56.triangles))
01049 length = len(_v56.vertices)
01050 buff.write(_struct_I.pack(length))
01051 for val3 in _v56.vertices:
01052 _x = val3
01053 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01054 _v57 = val1.constraint_region_orientation
01055 _x = _v57
01056 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01057 buff.write(_struct_d.pack(val1.weight))
01058 length = len(self.motion_plan_request.path_constraints.orientation_constraints)
01059 buff.write(_struct_I.pack(length))
01060 for val1 in self.motion_plan_request.path_constraints.orientation_constraints:
01061 _v58 = val1.header
01062 buff.write(_struct_I.pack(_v58.seq))
01063 _v59 = _v58.stamp
01064 _x = _v59
01065 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01066 _x = _v58.frame_id
01067 length = len(_x)
01068 buff.write(struct.pack('<I%ss'%length, length, _x))
01069 _x = val1.link_name
01070 length = len(_x)
01071 buff.write(struct.pack('<I%ss'%length, length, _x))
01072 buff.write(_struct_i.pack(val1.type))
01073 _v60 = val1.orientation
01074 _x = _v60
01075 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01076 _x = val1
01077 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
01078 length = len(self.motion_plan_request.path_constraints.visibility_constraints)
01079 buff.write(_struct_I.pack(length))
01080 for val1 in self.motion_plan_request.path_constraints.visibility_constraints:
01081 _v61 = val1.header
01082 buff.write(_struct_I.pack(_v61.seq))
01083 _v62 = _v61.stamp
01084 _x = _v62
01085 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01086 _x = _v61.frame_id
01087 length = len(_x)
01088 buff.write(struct.pack('<I%ss'%length, length, _x))
01089 _v63 = val1.target
01090 _v64 = _v63.header
01091 buff.write(_struct_I.pack(_v64.seq))
01092 _v65 = _v64.stamp
01093 _x = _v65
01094 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01095 _x = _v64.frame_id
01096 length = len(_x)
01097 buff.write(struct.pack('<I%ss'%length, length, _x))
01098 _v66 = _v63.point
01099 _x = _v66
01100 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01101 _v67 = val1.sensor_pose
01102 _v68 = _v67.header
01103 buff.write(_struct_I.pack(_v68.seq))
01104 _v69 = _v68.stamp
01105 _x = _v69
01106 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01107 _x = _v68.frame_id
01108 length = len(_x)
01109 buff.write(struct.pack('<I%ss'%length, length, _x))
01110 _v70 = _v67.pose
01111 _v71 = _v70.position
01112 _x = _v71
01113 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01114 _v72 = _v70.orientation
01115 _x = _v72
01116 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01117 buff.write(_struct_d.pack(val1.absolute_tolerance))
01118 _x = self.motion_plan_request.planner_id
01119 length = len(_x)
01120 buff.write(struct.pack('<I%ss'%length, length, _x))
01121 _x = self.motion_plan_request.group_name
01122 length = len(_x)
01123 buff.write(struct.pack('<I%ss'%length, length, _x))
01124 _x = self
01125 buff.write(_struct_7i.pack(_x.motion_plan_request.num_planning_attempts, _x.motion_plan_request.allowed_planning_time.secs, _x.motion_plan_request.allowed_planning_time.nsecs, _x.motion_plan_request.expected_path_duration.secs, _x.motion_plan_request.expected_path_duration.nsecs, _x.motion_plan_request.expected_path_dt.secs, _x.motion_plan_request.expected_path_dt.nsecs))
01126 length = len(self.operations.collision_operations)
01127 buff.write(_struct_I.pack(length))
01128 for val1 in self.operations.collision_operations:
01129 _x = val1.object1
01130 length = len(_x)
01131 buff.write(struct.pack('<I%ss'%length, length, _x))
01132 _x = val1.object2
01133 length = len(_x)
01134 buff.write(struct.pack('<I%ss'%length, length, _x))
01135 _x = val1
01136 buff.write(_struct_di.pack(_x.penetration_distance, _x.operation))
01137 _x = self
01138 buff.write(_struct_4B.pack(_x.accept_partial_plans, _x.accept_invalid_goals, _x.disable_ik, _x.disable_collision_monitoring))
01139 except struct.error as se: self._check_types(se)
01140 except TypeError as te: self._check_types(te)
01141
01142 def deserialize(self, str):
01143 """
01144 unpack serialized message in str into this message instance
01145 @param str: byte array of serialized message
01146 @type str: str
01147 """
01148 try:
01149 if self.planning_scene_diff is None:
01150 self.planning_scene_diff = arm_navigation_msgs.msg.PlanningScene()
01151 if self.motion_plan_request is None:
01152 self.motion_plan_request = arm_navigation_msgs.msg.MotionPlanRequest()
01153 if self.operations is None:
01154 self.operations = arm_navigation_msgs.msg.OrderedCollisionOperations()
01155 end = 0
01156 start = end
01157 end += 4
01158 (length,) = _struct_I.unpack(str[start:end])
01159 start = end
01160 end += length
01161 self.planner_service_name = str[start:end]
01162 _x = self
01163 start = end
01164 end += 12
01165 (_x.planning_scene_diff.robot_state.joint_state.header.seq, _x.planning_scene_diff.robot_state.joint_state.header.stamp.secs, _x.planning_scene_diff.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01166 start = end
01167 end += 4
01168 (length,) = _struct_I.unpack(str[start:end])
01169 start = end
01170 end += length
01171 self.planning_scene_diff.robot_state.joint_state.header.frame_id = str[start:end]
01172 start = end
01173 end += 4
01174 (length,) = _struct_I.unpack(str[start:end])
01175 self.planning_scene_diff.robot_state.joint_state.name = []
01176 for i in range(0, length):
01177 start = end
01178 end += 4
01179 (length,) = _struct_I.unpack(str[start:end])
01180 start = end
01181 end += length
01182 val1 = str[start:end]
01183 self.planning_scene_diff.robot_state.joint_state.name.append(val1)
01184 start = end
01185 end += 4
01186 (length,) = _struct_I.unpack(str[start:end])
01187 pattern = '<%sd'%length
01188 start = end
01189 end += struct.calcsize(pattern)
01190 self.planning_scene_diff.robot_state.joint_state.position = struct.unpack(pattern, str[start:end])
01191 start = end
01192 end += 4
01193 (length,) = _struct_I.unpack(str[start:end])
01194 pattern = '<%sd'%length
01195 start = end
01196 end += struct.calcsize(pattern)
01197 self.planning_scene_diff.robot_state.joint_state.velocity = struct.unpack(pattern, str[start:end])
01198 start = end
01199 end += 4
01200 (length,) = _struct_I.unpack(str[start:end])
01201 pattern = '<%sd'%length
01202 start = end
01203 end += struct.calcsize(pattern)
01204 self.planning_scene_diff.robot_state.joint_state.effort = struct.unpack(pattern, str[start:end])
01205 _x = self
01206 start = end
01207 end += 8
01208 (_x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.secs, _x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01209 start = end
01210 end += 4
01211 (length,) = _struct_I.unpack(str[start:end])
01212 self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names = []
01213 for i in range(0, length):
01214 start = end
01215 end += 4
01216 (length,) = _struct_I.unpack(str[start:end])
01217 start = end
01218 end += length
01219 val1 = str[start:end]
01220 self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names.append(val1)
01221 start = end
01222 end += 4
01223 (length,) = _struct_I.unpack(str[start:end])
01224 self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids = []
01225 for i in range(0, length):
01226 start = end
01227 end += 4
01228 (length,) = _struct_I.unpack(str[start:end])
01229 start = end
01230 end += length
01231 val1 = str[start:end]
01232 self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids.append(val1)
01233 start = end
01234 end += 4
01235 (length,) = _struct_I.unpack(str[start:end])
01236 self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids = []
01237 for i in range(0, length):
01238 start = end
01239 end += 4
01240 (length,) = _struct_I.unpack(str[start:end])
01241 start = end
01242 end += length
01243 val1 = str[start:end]
01244 self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids.append(val1)
01245 start = end
01246 end += 4
01247 (length,) = _struct_I.unpack(str[start:end])
01248 self.planning_scene_diff.robot_state.multi_dof_joint_state.poses = []
01249 for i in range(0, length):
01250 val1 = geometry_msgs.msg.Pose()
01251 _v73 = val1.position
01252 _x = _v73
01253 start = end
01254 end += 24
01255 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01256 _v74 = val1.orientation
01257 _x = _v74
01258 start = end
01259 end += 32
01260 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01261 self.planning_scene_diff.robot_state.multi_dof_joint_state.poses.append(val1)
01262 start = end
01263 end += 4
01264 (length,) = _struct_I.unpack(str[start:end])
01265 self.planning_scene_diff.fixed_frame_transforms = []
01266 for i in range(0, length):
01267 val1 = geometry_msgs.msg.TransformStamped()
01268 _v75 = val1.header
01269 start = end
01270 end += 4
01271 (_v75.seq,) = _struct_I.unpack(str[start:end])
01272 _v76 = _v75.stamp
01273 _x = _v76
01274 start = end
01275 end += 8
01276 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01277 start = end
01278 end += 4
01279 (length,) = _struct_I.unpack(str[start:end])
01280 start = end
01281 end += length
01282 _v75.frame_id = str[start:end]
01283 start = end
01284 end += 4
01285 (length,) = _struct_I.unpack(str[start:end])
01286 start = end
01287 end += length
01288 val1.child_frame_id = str[start:end]
01289 _v77 = val1.transform
01290 _v78 = _v77.translation
01291 _x = _v78
01292 start = end
01293 end += 24
01294 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01295 _v79 = _v77.rotation
01296 _x = _v79
01297 start = end
01298 end += 32
01299 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01300 self.planning_scene_diff.fixed_frame_transforms.append(val1)
01301 start = end
01302 end += 4
01303 (length,) = _struct_I.unpack(str[start:end])
01304 self.planning_scene_diff.allowed_collision_matrix.link_names = []
01305 for i in range(0, length):
01306 start = end
01307 end += 4
01308 (length,) = _struct_I.unpack(str[start:end])
01309 start = end
01310 end += length
01311 val1 = str[start:end]
01312 self.planning_scene_diff.allowed_collision_matrix.link_names.append(val1)
01313 start = end
01314 end += 4
01315 (length,) = _struct_I.unpack(str[start:end])
01316 self.planning_scene_diff.allowed_collision_matrix.entries = []
01317 for i in range(0, length):
01318 val1 = arm_navigation_msgs.msg.AllowedCollisionEntry()
01319 start = end
01320 end += 4
01321 (length,) = _struct_I.unpack(str[start:end])
01322 pattern = '<%sB'%length
01323 start = end
01324 end += struct.calcsize(pattern)
01325 val1.enabled = struct.unpack(pattern, str[start:end])
01326 val1.enabled = map(bool, val1.enabled)
01327 self.planning_scene_diff.allowed_collision_matrix.entries.append(val1)
01328 start = end
01329 end += 4
01330 (length,) = _struct_I.unpack(str[start:end])
01331 self.planning_scene_diff.allowed_contacts = []
01332 for i in range(0, length):
01333 val1 = arm_navigation_msgs.msg.AllowedContactSpecification()
01334 start = end
01335 end += 4
01336 (length,) = _struct_I.unpack(str[start:end])
01337 start = end
01338 end += length
01339 val1.name = str[start:end]
01340 _v80 = val1.shape
01341 start = end
01342 end += 1
01343 (_v80.type,) = _struct_b.unpack(str[start:end])
01344 start = end
01345 end += 4
01346 (length,) = _struct_I.unpack(str[start:end])
01347 pattern = '<%sd'%length
01348 start = end
01349 end += struct.calcsize(pattern)
01350 _v80.dimensions = struct.unpack(pattern, str[start:end])
01351 start = end
01352 end += 4
01353 (length,) = _struct_I.unpack(str[start:end])
01354 pattern = '<%si'%length
01355 start = end
01356 end += struct.calcsize(pattern)
01357 _v80.triangles = struct.unpack(pattern, str[start:end])
01358 start = end
01359 end += 4
01360 (length,) = _struct_I.unpack(str[start:end])
01361 _v80.vertices = []
01362 for i in range(0, length):
01363 val3 = geometry_msgs.msg.Point()
01364 _x = val3
01365 start = end
01366 end += 24
01367 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01368 _v80.vertices.append(val3)
01369 _v81 = val1.pose_stamped
01370 _v82 = _v81.header
01371 start = end
01372 end += 4
01373 (_v82.seq,) = _struct_I.unpack(str[start:end])
01374 _v83 = _v82.stamp
01375 _x = _v83
01376 start = end
01377 end += 8
01378 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01379 start = end
01380 end += 4
01381 (length,) = _struct_I.unpack(str[start:end])
01382 start = end
01383 end += length
01384 _v82.frame_id = str[start:end]
01385 _v84 = _v81.pose
01386 _v85 = _v84.position
01387 _x = _v85
01388 start = end
01389 end += 24
01390 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01391 _v86 = _v84.orientation
01392 _x = _v86
01393 start = end
01394 end += 32
01395 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01396 start = end
01397 end += 4
01398 (length,) = _struct_I.unpack(str[start:end])
01399 val1.link_names = []
01400 for i in range(0, length):
01401 start = end
01402 end += 4
01403 (length,) = _struct_I.unpack(str[start:end])
01404 start = end
01405 end += length
01406 val2 = str[start:end]
01407 val1.link_names.append(val2)
01408 start = end
01409 end += 8
01410 (val1.penetration_depth,) = _struct_d.unpack(str[start:end])
01411 self.planning_scene_diff.allowed_contacts.append(val1)
01412 start = end
01413 end += 4
01414 (length,) = _struct_I.unpack(str[start:end])
01415 self.planning_scene_diff.link_padding = []
01416 for i in range(0, length):
01417 val1 = arm_navigation_msgs.msg.LinkPadding()
01418 start = end
01419 end += 4
01420 (length,) = _struct_I.unpack(str[start:end])
01421 start = end
01422 end += length
01423 val1.link_name = str[start:end]
01424 start = end
01425 end += 8
01426 (val1.padding,) = _struct_d.unpack(str[start:end])
01427 self.planning_scene_diff.link_padding.append(val1)
01428 start = end
01429 end += 4
01430 (length,) = _struct_I.unpack(str[start:end])
01431 self.planning_scene_diff.collision_objects = []
01432 for i in range(0, length):
01433 val1 = arm_navigation_msgs.msg.CollisionObject()
01434 _v87 = val1.header
01435 start = end
01436 end += 4
01437 (_v87.seq,) = _struct_I.unpack(str[start:end])
01438 _v88 = _v87.stamp
01439 _x = _v88
01440 start = end
01441 end += 8
01442 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01443 start = end
01444 end += 4
01445 (length,) = _struct_I.unpack(str[start:end])
01446 start = end
01447 end += length
01448 _v87.frame_id = str[start:end]
01449 start = end
01450 end += 4
01451 (length,) = _struct_I.unpack(str[start:end])
01452 start = end
01453 end += length
01454 val1.id = str[start:end]
01455 start = end
01456 end += 4
01457 (val1.padding,) = _struct_f.unpack(str[start:end])
01458 _v89 = val1.operation
01459 start = end
01460 end += 1
01461 (_v89.operation,) = _struct_b.unpack(str[start:end])
01462 start = end
01463 end += 4
01464 (length,) = _struct_I.unpack(str[start:end])
01465 val1.shapes = []
01466 for i in range(0, length):
01467 val2 = arm_navigation_msgs.msg.Shape()
01468 start = end
01469 end += 1
01470 (val2.type,) = _struct_b.unpack(str[start:end])
01471 start = end
01472 end += 4
01473 (length,) = _struct_I.unpack(str[start:end])
01474 pattern = '<%sd'%length
01475 start = end
01476 end += struct.calcsize(pattern)
01477 val2.dimensions = struct.unpack(pattern, str[start:end])
01478 start = end
01479 end += 4
01480 (length,) = _struct_I.unpack(str[start:end])
01481 pattern = '<%si'%length
01482 start = end
01483 end += struct.calcsize(pattern)
01484 val2.triangles = struct.unpack(pattern, str[start:end])
01485 start = end
01486 end += 4
01487 (length,) = _struct_I.unpack(str[start:end])
01488 val2.vertices = []
01489 for i in range(0, length):
01490 val3 = geometry_msgs.msg.Point()
01491 _x = val3
01492 start = end
01493 end += 24
01494 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01495 val2.vertices.append(val3)
01496 val1.shapes.append(val2)
01497 start = end
01498 end += 4
01499 (length,) = _struct_I.unpack(str[start:end])
01500 val1.poses = []
01501 for i in range(0, length):
01502 val2 = geometry_msgs.msg.Pose()
01503 _v90 = val2.position
01504 _x = _v90
01505 start = end
01506 end += 24
01507 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01508 _v91 = val2.orientation
01509 _x = _v91
01510 start = end
01511 end += 32
01512 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01513 val1.poses.append(val2)
01514 self.planning_scene_diff.collision_objects.append(val1)
01515 start = end
01516 end += 4
01517 (length,) = _struct_I.unpack(str[start:end])
01518 self.planning_scene_diff.attached_collision_objects = []
01519 for i in range(0, length):
01520 val1 = arm_navigation_msgs.msg.AttachedCollisionObject()
01521 start = end
01522 end += 4
01523 (length,) = _struct_I.unpack(str[start:end])
01524 start = end
01525 end += length
01526 val1.link_name = str[start:end]
01527 _v92 = val1.object
01528 _v93 = _v92.header
01529 start = end
01530 end += 4
01531 (_v93.seq,) = _struct_I.unpack(str[start:end])
01532 _v94 = _v93.stamp
01533 _x = _v94
01534 start = end
01535 end += 8
01536 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01537 start = end
01538 end += 4
01539 (length,) = _struct_I.unpack(str[start:end])
01540 start = end
01541 end += length
01542 _v93.frame_id = str[start:end]
01543 start = end
01544 end += 4
01545 (length,) = _struct_I.unpack(str[start:end])
01546 start = end
01547 end += length
01548 _v92.id = str[start:end]
01549 start = end
01550 end += 4
01551 (_v92.padding,) = _struct_f.unpack(str[start:end])
01552 _v95 = _v92.operation
01553 start = end
01554 end += 1
01555 (_v95.operation,) = _struct_b.unpack(str[start:end])
01556 start = end
01557 end += 4
01558 (length,) = _struct_I.unpack(str[start:end])
01559 _v92.shapes = []
01560 for i in range(0, length):
01561 val3 = arm_navigation_msgs.msg.Shape()
01562 start = end
01563 end += 1
01564 (val3.type,) = _struct_b.unpack(str[start:end])
01565 start = end
01566 end += 4
01567 (length,) = _struct_I.unpack(str[start:end])
01568 pattern = '<%sd'%length
01569 start = end
01570 end += struct.calcsize(pattern)
01571 val3.dimensions = struct.unpack(pattern, str[start:end])
01572 start = end
01573 end += 4
01574 (length,) = _struct_I.unpack(str[start:end])
01575 pattern = '<%si'%length
01576 start = end
01577 end += struct.calcsize(pattern)
01578 val3.triangles = struct.unpack(pattern, str[start:end])
01579 start = end
01580 end += 4
01581 (length,) = _struct_I.unpack(str[start:end])
01582 val3.vertices = []
01583 for i in range(0, length):
01584 val4 = geometry_msgs.msg.Point()
01585 _x = val4
01586 start = end
01587 end += 24
01588 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01589 val3.vertices.append(val4)
01590 _v92.shapes.append(val3)
01591 start = end
01592 end += 4
01593 (length,) = _struct_I.unpack(str[start:end])
01594 _v92.poses = []
01595 for i in range(0, length):
01596 val3 = geometry_msgs.msg.Pose()
01597 _v96 = val3.position
01598 _x = _v96
01599 start = end
01600 end += 24
01601 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01602 _v97 = val3.orientation
01603 _x = _v97
01604 start = end
01605 end += 32
01606 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01607 _v92.poses.append(val3)
01608 start = end
01609 end += 4
01610 (length,) = _struct_I.unpack(str[start:end])
01611 val1.touch_links = []
01612 for i in range(0, length):
01613 start = end
01614 end += 4
01615 (length,) = _struct_I.unpack(str[start:end])
01616 start = end
01617 end += length
01618 val2 = str[start:end]
01619 val1.touch_links.append(val2)
01620 self.planning_scene_diff.attached_collision_objects.append(val1)
01621 _x = self
01622 start = end
01623 end += 12
01624 (_x.planning_scene_diff.collision_map.header.seq, _x.planning_scene_diff.collision_map.header.stamp.secs, _x.planning_scene_diff.collision_map.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01625 start = end
01626 end += 4
01627 (length,) = _struct_I.unpack(str[start:end])
01628 start = end
01629 end += length
01630 self.planning_scene_diff.collision_map.header.frame_id = str[start:end]
01631 start = end
01632 end += 4
01633 (length,) = _struct_I.unpack(str[start:end])
01634 self.planning_scene_diff.collision_map.boxes = []
01635 for i in range(0, length):
01636 val1 = arm_navigation_msgs.msg.OrientedBoundingBox()
01637 _v98 = val1.center
01638 _x = _v98
01639 start = end
01640 end += 12
01641 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
01642 _v99 = val1.extents
01643 _x = _v99
01644 start = end
01645 end += 12
01646 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
01647 _v100 = val1.axis
01648 _x = _v100
01649 start = end
01650 end += 12
01651 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
01652 start = end
01653 end += 4
01654 (val1.angle,) = _struct_f.unpack(str[start:end])
01655 self.planning_scene_diff.collision_map.boxes.append(val1)
01656 start = end
01657 end += 1
01658 (self.motion_plan_request.workspace_parameters.workspace_region_shape.type,) = _struct_b.unpack(str[start:end])
01659 start = end
01660 end += 4
01661 (length,) = _struct_I.unpack(str[start:end])
01662 pattern = '<%sd'%length
01663 start = end
01664 end += struct.calcsize(pattern)
01665 self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions = struct.unpack(pattern, str[start:end])
01666 start = end
01667 end += 4
01668 (length,) = _struct_I.unpack(str[start:end])
01669 pattern = '<%si'%length
01670 start = end
01671 end += struct.calcsize(pattern)
01672 self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles = struct.unpack(pattern, str[start:end])
01673 start = end
01674 end += 4
01675 (length,) = _struct_I.unpack(str[start:end])
01676 self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices = []
01677 for i in range(0, length):
01678 val1 = geometry_msgs.msg.Point()
01679 _x = val1
01680 start = end
01681 end += 24
01682 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01683 self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices.append(val1)
01684 _x = self
01685 start = end
01686 end += 12
01687 (_x.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
01688 start = end
01689 end += 4
01690 (length,) = _struct_I.unpack(str[start:end])
01691 start = end
01692 end += length
01693 self.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id = str[start:end]
01694 _x = self
01695 start = end
01696 end += 68
01697 (_x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.motion_plan_request.start_state.joint_state.header.seq, _x.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.motion_plan_request.start_state.joint_state.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end])
01698 start = end
01699 end += 4
01700 (length,) = _struct_I.unpack(str[start:end])
01701 start = end
01702 end += length
01703 self.motion_plan_request.start_state.joint_state.header.frame_id = str[start:end]
01704 start = end
01705 end += 4
01706 (length,) = _struct_I.unpack(str[start:end])
01707 self.motion_plan_request.start_state.joint_state.name = []
01708 for i in range(0, length):
01709 start = end
01710 end += 4
01711 (length,) = _struct_I.unpack(str[start:end])
01712 start = end
01713 end += length
01714 val1 = str[start:end]
01715 self.motion_plan_request.start_state.joint_state.name.append(val1)
01716 start = end
01717 end += 4
01718 (length,) = _struct_I.unpack(str[start:end])
01719 pattern = '<%sd'%length
01720 start = end
01721 end += struct.calcsize(pattern)
01722 self.motion_plan_request.start_state.joint_state.position = struct.unpack(pattern, str[start:end])
01723 start = end
01724 end += 4
01725 (length,) = _struct_I.unpack(str[start:end])
01726 pattern = '<%sd'%length
01727 start = end
01728 end += struct.calcsize(pattern)
01729 self.motion_plan_request.start_state.joint_state.velocity = struct.unpack(pattern, str[start:end])
01730 start = end
01731 end += 4
01732 (length,) = _struct_I.unpack(str[start:end])
01733 pattern = '<%sd'%length
01734 start = end
01735 end += struct.calcsize(pattern)
01736 self.motion_plan_request.start_state.joint_state.effort = struct.unpack(pattern, str[start:end])
01737 _x = self
01738 start = end
01739 end += 8
01740 (_x.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
01741 start = end
01742 end += 4
01743 (length,) = _struct_I.unpack(str[start:end])
01744 self.motion_plan_request.start_state.multi_dof_joint_state.joint_names = []
01745 for i in range(0, length):
01746 start = end
01747 end += 4
01748 (length,) = _struct_I.unpack(str[start:end])
01749 start = end
01750 end += length
01751 val1 = str[start:end]
01752 self.motion_plan_request.start_state.multi_dof_joint_state.joint_names.append(val1)
01753 start = end
01754 end += 4
01755 (length,) = _struct_I.unpack(str[start:end])
01756 self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids = []
01757 for i in range(0, length):
01758 start = end
01759 end += 4
01760 (length,) = _struct_I.unpack(str[start:end])
01761 start = end
01762 end += length
01763 val1 = str[start:end]
01764 self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids.append(val1)
01765 start = end
01766 end += 4
01767 (length,) = _struct_I.unpack(str[start:end])
01768 self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids = []
01769 for i in range(0, length):
01770 start = end
01771 end += 4
01772 (length,) = _struct_I.unpack(str[start:end])
01773 start = end
01774 end += length
01775 val1 = str[start:end]
01776 self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids.append(val1)
01777 start = end
01778 end += 4
01779 (length,) = _struct_I.unpack(str[start:end])
01780 self.motion_plan_request.start_state.multi_dof_joint_state.poses = []
01781 for i in range(0, length):
01782 val1 = geometry_msgs.msg.Pose()
01783 _v101 = val1.position
01784 _x = _v101
01785 start = end
01786 end += 24
01787 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01788 _v102 = val1.orientation
01789 _x = _v102
01790 start = end
01791 end += 32
01792 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01793 self.motion_plan_request.start_state.multi_dof_joint_state.poses.append(val1)
01794 start = end
01795 end += 4
01796 (length,) = _struct_I.unpack(str[start:end])
01797 self.motion_plan_request.goal_constraints.joint_constraints = []
01798 for i in range(0, length):
01799 val1 = arm_navigation_msgs.msg.JointConstraint()
01800 start = end
01801 end += 4
01802 (length,) = _struct_I.unpack(str[start:end])
01803 start = end
01804 end += length
01805 val1.joint_name = str[start:end]
01806 _x = val1
01807 start = end
01808 end += 32
01809 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
01810 self.motion_plan_request.goal_constraints.joint_constraints.append(val1)
01811 start = end
01812 end += 4
01813 (length,) = _struct_I.unpack(str[start:end])
01814 self.motion_plan_request.goal_constraints.position_constraints = []
01815 for i in range(0, length):
01816 val1 = arm_navigation_msgs.msg.PositionConstraint()
01817 _v103 = val1.header
01818 start = end
01819 end += 4
01820 (_v103.seq,) = _struct_I.unpack(str[start:end])
01821 _v104 = _v103.stamp
01822 _x = _v104
01823 start = end
01824 end += 8
01825 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01826 start = end
01827 end += 4
01828 (length,) = _struct_I.unpack(str[start:end])
01829 start = end
01830 end += length
01831 _v103.frame_id = str[start:end]
01832 start = end
01833 end += 4
01834 (length,) = _struct_I.unpack(str[start:end])
01835 start = end
01836 end += length
01837 val1.link_name = str[start:end]
01838 _v105 = val1.target_point_offset
01839 _x = _v105
01840 start = end
01841 end += 24
01842 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01843 _v106 = val1.position
01844 _x = _v106
01845 start = end
01846 end += 24
01847 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01848 _v107 = val1.constraint_region_shape
01849 start = end
01850 end += 1
01851 (_v107.type,) = _struct_b.unpack(str[start:end])
01852 start = end
01853 end += 4
01854 (length,) = _struct_I.unpack(str[start:end])
01855 pattern = '<%sd'%length
01856 start = end
01857 end += struct.calcsize(pattern)
01858 _v107.dimensions = struct.unpack(pattern, str[start:end])
01859 start = end
01860 end += 4
01861 (length,) = _struct_I.unpack(str[start:end])
01862 pattern = '<%si'%length
01863 start = end
01864 end += struct.calcsize(pattern)
01865 _v107.triangles = struct.unpack(pattern, str[start:end])
01866 start = end
01867 end += 4
01868 (length,) = _struct_I.unpack(str[start:end])
01869 _v107.vertices = []
01870 for i in range(0, length):
01871 val3 = geometry_msgs.msg.Point()
01872 _x = val3
01873 start = end
01874 end += 24
01875 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01876 _v107.vertices.append(val3)
01877 _v108 = val1.constraint_region_orientation
01878 _x = _v108
01879 start = end
01880 end += 32
01881 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01882 start = end
01883 end += 8
01884 (val1.weight,) = _struct_d.unpack(str[start:end])
01885 self.motion_plan_request.goal_constraints.position_constraints.append(val1)
01886 start = end
01887 end += 4
01888 (length,) = _struct_I.unpack(str[start:end])
01889 self.motion_plan_request.goal_constraints.orientation_constraints = []
01890 for i in range(0, length):
01891 val1 = arm_navigation_msgs.msg.OrientationConstraint()
01892 _v109 = val1.header
01893 start = end
01894 end += 4
01895 (_v109.seq,) = _struct_I.unpack(str[start:end])
01896 _v110 = _v109.stamp
01897 _x = _v110
01898 start = end
01899 end += 8
01900 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01901 start = end
01902 end += 4
01903 (length,) = _struct_I.unpack(str[start:end])
01904 start = end
01905 end += length
01906 _v109.frame_id = str[start:end]
01907 start = end
01908 end += 4
01909 (length,) = _struct_I.unpack(str[start:end])
01910 start = end
01911 end += length
01912 val1.link_name = str[start:end]
01913 start = end
01914 end += 4
01915 (val1.type,) = _struct_i.unpack(str[start:end])
01916 _v111 = val1.orientation
01917 _x = _v111
01918 start = end
01919 end += 32
01920 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01921 _x = val1
01922 start = end
01923 end += 32
01924 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
01925 self.motion_plan_request.goal_constraints.orientation_constraints.append(val1)
01926 start = end
01927 end += 4
01928 (length,) = _struct_I.unpack(str[start:end])
01929 self.motion_plan_request.goal_constraints.visibility_constraints = []
01930 for i in range(0, length):
01931 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
01932 _v112 = val1.header
01933 start = end
01934 end += 4
01935 (_v112.seq,) = _struct_I.unpack(str[start:end])
01936 _v113 = _v112.stamp
01937 _x = _v113
01938 start = end
01939 end += 8
01940 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01941 start = end
01942 end += 4
01943 (length,) = _struct_I.unpack(str[start:end])
01944 start = end
01945 end += length
01946 _v112.frame_id = str[start:end]
01947 _v114 = val1.target
01948 _v115 = _v114.header
01949 start = end
01950 end += 4
01951 (_v115.seq,) = _struct_I.unpack(str[start:end])
01952 _v116 = _v115.stamp
01953 _x = _v116
01954 start = end
01955 end += 8
01956 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01957 start = end
01958 end += 4
01959 (length,) = _struct_I.unpack(str[start:end])
01960 start = end
01961 end += length
01962 _v115.frame_id = str[start:end]
01963 _v117 = _v114.point
01964 _x = _v117
01965 start = end
01966 end += 24
01967 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01968 _v118 = val1.sensor_pose
01969 _v119 = _v118.header
01970 start = end
01971 end += 4
01972 (_v119.seq,) = _struct_I.unpack(str[start:end])
01973 _v120 = _v119.stamp
01974 _x = _v120
01975 start = end
01976 end += 8
01977 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01978 start = end
01979 end += 4
01980 (length,) = _struct_I.unpack(str[start:end])
01981 start = end
01982 end += length
01983 _v119.frame_id = str[start:end]
01984 _v121 = _v118.pose
01985 _v122 = _v121.position
01986 _x = _v122
01987 start = end
01988 end += 24
01989 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01990 _v123 = _v121.orientation
01991 _x = _v123
01992 start = end
01993 end += 32
01994 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01995 start = end
01996 end += 8
01997 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
01998 self.motion_plan_request.goal_constraints.visibility_constraints.append(val1)
01999 start = end
02000 end += 4
02001 (length,) = _struct_I.unpack(str[start:end])
02002 self.motion_plan_request.path_constraints.joint_constraints = []
02003 for i in range(0, length):
02004 val1 = arm_navigation_msgs.msg.JointConstraint()
02005 start = end
02006 end += 4
02007 (length,) = _struct_I.unpack(str[start:end])
02008 start = end
02009 end += length
02010 val1.joint_name = str[start:end]
02011 _x = val1
02012 start = end
02013 end += 32
02014 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
02015 self.motion_plan_request.path_constraints.joint_constraints.append(val1)
02016 start = end
02017 end += 4
02018 (length,) = _struct_I.unpack(str[start:end])
02019 self.motion_plan_request.path_constraints.position_constraints = []
02020 for i in range(0, length):
02021 val1 = arm_navigation_msgs.msg.PositionConstraint()
02022 _v124 = val1.header
02023 start = end
02024 end += 4
02025 (_v124.seq,) = _struct_I.unpack(str[start:end])
02026 _v125 = _v124.stamp
02027 _x = _v125
02028 start = end
02029 end += 8
02030 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02031 start = end
02032 end += 4
02033 (length,) = _struct_I.unpack(str[start:end])
02034 start = end
02035 end += length
02036 _v124.frame_id = str[start:end]
02037 start = end
02038 end += 4
02039 (length,) = _struct_I.unpack(str[start:end])
02040 start = end
02041 end += length
02042 val1.link_name = str[start:end]
02043 _v126 = val1.target_point_offset
02044 _x = _v126
02045 start = end
02046 end += 24
02047 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02048 _v127 = val1.position
02049 _x = _v127
02050 start = end
02051 end += 24
02052 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02053 _v128 = val1.constraint_region_shape
02054 start = end
02055 end += 1
02056 (_v128.type,) = _struct_b.unpack(str[start:end])
02057 start = end
02058 end += 4
02059 (length,) = _struct_I.unpack(str[start:end])
02060 pattern = '<%sd'%length
02061 start = end
02062 end += struct.calcsize(pattern)
02063 _v128.dimensions = struct.unpack(pattern, str[start:end])
02064 start = end
02065 end += 4
02066 (length,) = _struct_I.unpack(str[start:end])
02067 pattern = '<%si'%length
02068 start = end
02069 end += struct.calcsize(pattern)
02070 _v128.triangles = struct.unpack(pattern, str[start:end])
02071 start = end
02072 end += 4
02073 (length,) = _struct_I.unpack(str[start:end])
02074 _v128.vertices = []
02075 for i in range(0, length):
02076 val3 = geometry_msgs.msg.Point()
02077 _x = val3
02078 start = end
02079 end += 24
02080 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02081 _v128.vertices.append(val3)
02082 _v129 = val1.constraint_region_orientation
02083 _x = _v129
02084 start = end
02085 end += 32
02086 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02087 start = end
02088 end += 8
02089 (val1.weight,) = _struct_d.unpack(str[start:end])
02090 self.motion_plan_request.path_constraints.position_constraints.append(val1)
02091 start = end
02092 end += 4
02093 (length,) = _struct_I.unpack(str[start:end])
02094 self.motion_plan_request.path_constraints.orientation_constraints = []
02095 for i in range(0, length):
02096 val1 = arm_navigation_msgs.msg.OrientationConstraint()
02097 _v130 = val1.header
02098 start = end
02099 end += 4
02100 (_v130.seq,) = _struct_I.unpack(str[start:end])
02101 _v131 = _v130.stamp
02102 _x = _v131
02103 start = end
02104 end += 8
02105 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02106 start = end
02107 end += 4
02108 (length,) = _struct_I.unpack(str[start:end])
02109 start = end
02110 end += length
02111 _v130.frame_id = str[start:end]
02112 start = end
02113 end += 4
02114 (length,) = _struct_I.unpack(str[start:end])
02115 start = end
02116 end += length
02117 val1.link_name = str[start:end]
02118 start = end
02119 end += 4
02120 (val1.type,) = _struct_i.unpack(str[start:end])
02121 _v132 = val1.orientation
02122 _x = _v132
02123 start = end
02124 end += 32
02125 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02126 _x = val1
02127 start = end
02128 end += 32
02129 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
02130 self.motion_plan_request.path_constraints.orientation_constraints.append(val1)
02131 start = end
02132 end += 4
02133 (length,) = _struct_I.unpack(str[start:end])
02134 self.motion_plan_request.path_constraints.visibility_constraints = []
02135 for i in range(0, length):
02136 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
02137 _v133 = val1.header
02138 start = end
02139 end += 4
02140 (_v133.seq,) = _struct_I.unpack(str[start:end])
02141 _v134 = _v133.stamp
02142 _x = _v134
02143 start = end
02144 end += 8
02145 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02146 start = end
02147 end += 4
02148 (length,) = _struct_I.unpack(str[start:end])
02149 start = end
02150 end += length
02151 _v133.frame_id = str[start:end]
02152 _v135 = val1.target
02153 _v136 = _v135.header
02154 start = end
02155 end += 4
02156 (_v136.seq,) = _struct_I.unpack(str[start:end])
02157 _v137 = _v136.stamp
02158 _x = _v137
02159 start = end
02160 end += 8
02161 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02162 start = end
02163 end += 4
02164 (length,) = _struct_I.unpack(str[start:end])
02165 start = end
02166 end += length
02167 _v136.frame_id = str[start:end]
02168 _v138 = _v135.point
02169 _x = _v138
02170 start = end
02171 end += 24
02172 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02173 _v139 = val1.sensor_pose
02174 _v140 = _v139.header
02175 start = end
02176 end += 4
02177 (_v140.seq,) = _struct_I.unpack(str[start:end])
02178 _v141 = _v140.stamp
02179 _x = _v141
02180 start = end
02181 end += 8
02182 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02183 start = end
02184 end += 4
02185 (length,) = _struct_I.unpack(str[start:end])
02186 start = end
02187 end += length
02188 _v140.frame_id = str[start:end]
02189 _v142 = _v139.pose
02190 _v143 = _v142.position
02191 _x = _v143
02192 start = end
02193 end += 24
02194 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02195 _v144 = _v142.orientation
02196 _x = _v144
02197 start = end
02198 end += 32
02199 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02200 start = end
02201 end += 8
02202 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
02203 self.motion_plan_request.path_constraints.visibility_constraints.append(val1)
02204 start = end
02205 end += 4
02206 (length,) = _struct_I.unpack(str[start:end])
02207 start = end
02208 end += length
02209 self.motion_plan_request.planner_id = str[start:end]
02210 start = end
02211 end += 4
02212 (length,) = _struct_I.unpack(str[start:end])
02213 start = end
02214 end += length
02215 self.motion_plan_request.group_name = str[start:end]
02216 _x = self
02217 start = end
02218 end += 28
02219 (_x.motion_plan_request.num_planning_attempts, _x.motion_plan_request.allowed_planning_time.secs, _x.motion_plan_request.allowed_planning_time.nsecs, _x.motion_plan_request.expected_path_duration.secs, _x.motion_plan_request.expected_path_duration.nsecs, _x.motion_plan_request.expected_path_dt.secs, _x.motion_plan_request.expected_path_dt.nsecs,) = _struct_7i.unpack(str[start:end])
02220 start = end
02221 end += 4
02222 (length,) = _struct_I.unpack(str[start:end])
02223 self.operations.collision_operations = []
02224 for i in range(0, length):
02225 val1 = arm_navigation_msgs.msg.CollisionOperation()
02226 start = end
02227 end += 4
02228 (length,) = _struct_I.unpack(str[start:end])
02229 start = end
02230 end += length
02231 val1.object1 = str[start:end]
02232 start = end
02233 end += 4
02234 (length,) = _struct_I.unpack(str[start:end])
02235 start = end
02236 end += length
02237 val1.object2 = str[start:end]
02238 _x = val1
02239 start = end
02240 end += 12
02241 (_x.penetration_distance, _x.operation,) = _struct_di.unpack(str[start:end])
02242 self.operations.collision_operations.append(val1)
02243 _x = self
02244 start = end
02245 end += 4
02246 (_x.accept_partial_plans, _x.accept_invalid_goals, _x.disable_ik, _x.disable_collision_monitoring,) = _struct_4B.unpack(str[start:end])
02247 self.accept_partial_plans = bool(self.accept_partial_plans)
02248 self.accept_invalid_goals = bool(self.accept_invalid_goals)
02249 self.disable_ik = bool(self.disable_ik)
02250 self.disable_collision_monitoring = bool(self.disable_collision_monitoring)
02251 return self
02252 except struct.error as e:
02253 raise roslib.message.DeserializationError(e)
02254
02255
02256 def serialize_numpy(self, buff, numpy):
02257 """
02258 serialize message with numpy array types into buffer
02259 @param buff: buffer
02260 @type buff: StringIO
02261 @param numpy: numpy python module
02262 @type numpy module
02263 """
02264 try:
02265 _x = self.planner_service_name
02266 length = len(_x)
02267 buff.write(struct.pack('<I%ss'%length, length, _x))
02268 _x = self
02269 buff.write(_struct_3I.pack(_x.planning_scene_diff.robot_state.joint_state.header.seq, _x.planning_scene_diff.robot_state.joint_state.header.stamp.secs, _x.planning_scene_diff.robot_state.joint_state.header.stamp.nsecs))
02270 _x = self.planning_scene_diff.robot_state.joint_state.header.frame_id
02271 length = len(_x)
02272 buff.write(struct.pack('<I%ss'%length, length, _x))
02273 length = len(self.planning_scene_diff.robot_state.joint_state.name)
02274 buff.write(_struct_I.pack(length))
02275 for val1 in self.planning_scene_diff.robot_state.joint_state.name:
02276 length = len(val1)
02277 buff.write(struct.pack('<I%ss'%length, length, val1))
02278 length = len(self.planning_scene_diff.robot_state.joint_state.position)
02279 buff.write(_struct_I.pack(length))
02280 pattern = '<%sd'%length
02281 buff.write(self.planning_scene_diff.robot_state.joint_state.position.tostring())
02282 length = len(self.planning_scene_diff.robot_state.joint_state.velocity)
02283 buff.write(_struct_I.pack(length))
02284 pattern = '<%sd'%length
02285 buff.write(self.planning_scene_diff.robot_state.joint_state.velocity.tostring())
02286 length = len(self.planning_scene_diff.robot_state.joint_state.effort)
02287 buff.write(_struct_I.pack(length))
02288 pattern = '<%sd'%length
02289 buff.write(self.planning_scene_diff.robot_state.joint_state.effort.tostring())
02290 _x = self
02291 buff.write(_struct_2I.pack(_x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.secs, _x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.nsecs))
02292 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names)
02293 buff.write(_struct_I.pack(length))
02294 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names:
02295 length = len(val1)
02296 buff.write(struct.pack('<I%ss'%length, length, val1))
02297 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids)
02298 buff.write(_struct_I.pack(length))
02299 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids:
02300 length = len(val1)
02301 buff.write(struct.pack('<I%ss'%length, length, val1))
02302 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids)
02303 buff.write(_struct_I.pack(length))
02304 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids:
02305 length = len(val1)
02306 buff.write(struct.pack('<I%ss'%length, length, val1))
02307 length = len(self.planning_scene_diff.robot_state.multi_dof_joint_state.poses)
02308 buff.write(_struct_I.pack(length))
02309 for val1 in self.planning_scene_diff.robot_state.multi_dof_joint_state.poses:
02310 _v145 = val1.position
02311 _x = _v145
02312 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02313 _v146 = val1.orientation
02314 _x = _v146
02315 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02316 length = len(self.planning_scene_diff.fixed_frame_transforms)
02317 buff.write(_struct_I.pack(length))
02318 for val1 in self.planning_scene_diff.fixed_frame_transforms:
02319 _v147 = val1.header
02320 buff.write(_struct_I.pack(_v147.seq))
02321 _v148 = _v147.stamp
02322 _x = _v148
02323 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02324 _x = _v147.frame_id
02325 length = len(_x)
02326 buff.write(struct.pack('<I%ss'%length, length, _x))
02327 _x = val1.child_frame_id
02328 length = len(_x)
02329 buff.write(struct.pack('<I%ss'%length, length, _x))
02330 _v149 = val1.transform
02331 _v150 = _v149.translation
02332 _x = _v150
02333 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02334 _v151 = _v149.rotation
02335 _x = _v151
02336 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02337 length = len(self.planning_scene_diff.allowed_collision_matrix.link_names)
02338 buff.write(_struct_I.pack(length))
02339 for val1 in self.planning_scene_diff.allowed_collision_matrix.link_names:
02340 length = len(val1)
02341 buff.write(struct.pack('<I%ss'%length, length, val1))
02342 length = len(self.planning_scene_diff.allowed_collision_matrix.entries)
02343 buff.write(_struct_I.pack(length))
02344 for val1 in self.planning_scene_diff.allowed_collision_matrix.entries:
02345 length = len(val1.enabled)
02346 buff.write(_struct_I.pack(length))
02347 pattern = '<%sB'%length
02348 buff.write(val1.enabled.tostring())
02349 length = len(self.planning_scene_diff.allowed_contacts)
02350 buff.write(_struct_I.pack(length))
02351 for val1 in self.planning_scene_diff.allowed_contacts:
02352 _x = val1.name
02353 length = len(_x)
02354 buff.write(struct.pack('<I%ss'%length, length, _x))
02355 _v152 = val1.shape
02356 buff.write(_struct_b.pack(_v152.type))
02357 length = len(_v152.dimensions)
02358 buff.write(_struct_I.pack(length))
02359 pattern = '<%sd'%length
02360 buff.write(_v152.dimensions.tostring())
02361 length = len(_v152.triangles)
02362 buff.write(_struct_I.pack(length))
02363 pattern = '<%si'%length
02364 buff.write(_v152.triangles.tostring())
02365 length = len(_v152.vertices)
02366 buff.write(_struct_I.pack(length))
02367 for val3 in _v152.vertices:
02368 _x = val3
02369 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02370 _v153 = val1.pose_stamped
02371 _v154 = _v153.header
02372 buff.write(_struct_I.pack(_v154.seq))
02373 _v155 = _v154.stamp
02374 _x = _v155
02375 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02376 _x = _v154.frame_id
02377 length = len(_x)
02378 buff.write(struct.pack('<I%ss'%length, length, _x))
02379 _v156 = _v153.pose
02380 _v157 = _v156.position
02381 _x = _v157
02382 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02383 _v158 = _v156.orientation
02384 _x = _v158
02385 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02386 length = len(val1.link_names)
02387 buff.write(_struct_I.pack(length))
02388 for val2 in val1.link_names:
02389 length = len(val2)
02390 buff.write(struct.pack('<I%ss'%length, length, val2))
02391 buff.write(_struct_d.pack(val1.penetration_depth))
02392 length = len(self.planning_scene_diff.link_padding)
02393 buff.write(_struct_I.pack(length))
02394 for val1 in self.planning_scene_diff.link_padding:
02395 _x = val1.link_name
02396 length = len(_x)
02397 buff.write(struct.pack('<I%ss'%length, length, _x))
02398 buff.write(_struct_d.pack(val1.padding))
02399 length = len(self.planning_scene_diff.collision_objects)
02400 buff.write(_struct_I.pack(length))
02401 for val1 in self.planning_scene_diff.collision_objects:
02402 _v159 = val1.header
02403 buff.write(_struct_I.pack(_v159.seq))
02404 _v160 = _v159.stamp
02405 _x = _v160
02406 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02407 _x = _v159.frame_id
02408 length = len(_x)
02409 buff.write(struct.pack('<I%ss'%length, length, _x))
02410 _x = val1.id
02411 length = len(_x)
02412 buff.write(struct.pack('<I%ss'%length, length, _x))
02413 buff.write(_struct_f.pack(val1.padding))
02414 _v161 = val1.operation
02415 buff.write(_struct_b.pack(_v161.operation))
02416 length = len(val1.shapes)
02417 buff.write(_struct_I.pack(length))
02418 for val2 in val1.shapes:
02419 buff.write(_struct_b.pack(val2.type))
02420 length = len(val2.dimensions)
02421 buff.write(_struct_I.pack(length))
02422 pattern = '<%sd'%length
02423 buff.write(val2.dimensions.tostring())
02424 length = len(val2.triangles)
02425 buff.write(_struct_I.pack(length))
02426 pattern = '<%si'%length
02427 buff.write(val2.triangles.tostring())
02428 length = len(val2.vertices)
02429 buff.write(_struct_I.pack(length))
02430 for val3 in val2.vertices:
02431 _x = val3
02432 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02433 length = len(val1.poses)
02434 buff.write(_struct_I.pack(length))
02435 for val2 in val1.poses:
02436 _v162 = val2.position
02437 _x = _v162
02438 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02439 _v163 = val2.orientation
02440 _x = _v163
02441 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02442 length = len(self.planning_scene_diff.attached_collision_objects)
02443 buff.write(_struct_I.pack(length))
02444 for val1 in self.planning_scene_diff.attached_collision_objects:
02445 _x = val1.link_name
02446 length = len(_x)
02447 buff.write(struct.pack('<I%ss'%length, length, _x))
02448 _v164 = val1.object
02449 _v165 = _v164.header
02450 buff.write(_struct_I.pack(_v165.seq))
02451 _v166 = _v165.stamp
02452 _x = _v166
02453 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02454 _x = _v165.frame_id
02455 length = len(_x)
02456 buff.write(struct.pack('<I%ss'%length, length, _x))
02457 _x = _v164.id
02458 length = len(_x)
02459 buff.write(struct.pack('<I%ss'%length, length, _x))
02460 buff.write(_struct_f.pack(_v164.padding))
02461 _v167 = _v164.operation
02462 buff.write(_struct_b.pack(_v167.operation))
02463 length = len(_v164.shapes)
02464 buff.write(_struct_I.pack(length))
02465 for val3 in _v164.shapes:
02466 buff.write(_struct_b.pack(val3.type))
02467 length = len(val3.dimensions)
02468 buff.write(_struct_I.pack(length))
02469 pattern = '<%sd'%length
02470 buff.write(val3.dimensions.tostring())
02471 length = len(val3.triangles)
02472 buff.write(_struct_I.pack(length))
02473 pattern = '<%si'%length
02474 buff.write(val3.triangles.tostring())
02475 length = len(val3.vertices)
02476 buff.write(_struct_I.pack(length))
02477 for val4 in val3.vertices:
02478 _x = val4
02479 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02480 length = len(_v164.poses)
02481 buff.write(_struct_I.pack(length))
02482 for val3 in _v164.poses:
02483 _v168 = val3.position
02484 _x = _v168
02485 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02486 _v169 = val3.orientation
02487 _x = _v169
02488 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02489 length = len(val1.touch_links)
02490 buff.write(_struct_I.pack(length))
02491 for val2 in val1.touch_links:
02492 length = len(val2)
02493 buff.write(struct.pack('<I%ss'%length, length, val2))
02494 _x = self
02495 buff.write(_struct_3I.pack(_x.planning_scene_diff.collision_map.header.seq, _x.planning_scene_diff.collision_map.header.stamp.secs, _x.planning_scene_diff.collision_map.header.stamp.nsecs))
02496 _x = self.planning_scene_diff.collision_map.header.frame_id
02497 length = len(_x)
02498 buff.write(struct.pack('<I%ss'%length, length, _x))
02499 length = len(self.planning_scene_diff.collision_map.boxes)
02500 buff.write(_struct_I.pack(length))
02501 for val1 in self.planning_scene_diff.collision_map.boxes:
02502 _v170 = val1.center
02503 _x = _v170
02504 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
02505 _v171 = val1.extents
02506 _x = _v171
02507 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
02508 _v172 = val1.axis
02509 _x = _v172
02510 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
02511 buff.write(_struct_f.pack(val1.angle))
02512 buff.write(_struct_b.pack(self.motion_plan_request.workspace_parameters.workspace_region_shape.type))
02513 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions)
02514 buff.write(_struct_I.pack(length))
02515 pattern = '<%sd'%length
02516 buff.write(self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions.tostring())
02517 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles)
02518 buff.write(_struct_I.pack(length))
02519 pattern = '<%si'%length
02520 buff.write(self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles.tostring())
02521 length = len(self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices)
02522 buff.write(_struct_I.pack(length))
02523 for val1 in self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices:
02524 _x = val1
02525 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02526 _x = self
02527 buff.write(_struct_3I.pack(_x.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs))
02528 _x = self.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id
02529 length = len(_x)
02530 buff.write(struct.pack('<I%ss'%length, length, _x))
02531 _x = self
02532 buff.write(_struct_7d3I.pack(_x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.motion_plan_request.start_state.joint_state.header.seq, _x.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.motion_plan_request.start_state.joint_state.header.stamp.nsecs))
02533 _x = self.motion_plan_request.start_state.joint_state.header.frame_id
02534 length = len(_x)
02535 buff.write(struct.pack('<I%ss'%length, length, _x))
02536 length = len(self.motion_plan_request.start_state.joint_state.name)
02537 buff.write(_struct_I.pack(length))
02538 for val1 in self.motion_plan_request.start_state.joint_state.name:
02539 length = len(val1)
02540 buff.write(struct.pack('<I%ss'%length, length, val1))
02541 length = len(self.motion_plan_request.start_state.joint_state.position)
02542 buff.write(_struct_I.pack(length))
02543 pattern = '<%sd'%length
02544 buff.write(self.motion_plan_request.start_state.joint_state.position.tostring())
02545 length = len(self.motion_plan_request.start_state.joint_state.velocity)
02546 buff.write(_struct_I.pack(length))
02547 pattern = '<%sd'%length
02548 buff.write(self.motion_plan_request.start_state.joint_state.velocity.tostring())
02549 length = len(self.motion_plan_request.start_state.joint_state.effort)
02550 buff.write(_struct_I.pack(length))
02551 pattern = '<%sd'%length
02552 buff.write(self.motion_plan_request.start_state.joint_state.effort.tostring())
02553 _x = self
02554 buff.write(_struct_2I.pack(_x.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs))
02555 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.joint_names)
02556 buff.write(_struct_I.pack(length))
02557 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.joint_names:
02558 length = len(val1)
02559 buff.write(struct.pack('<I%ss'%length, length, val1))
02560 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids)
02561 buff.write(_struct_I.pack(length))
02562 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids:
02563 length = len(val1)
02564 buff.write(struct.pack('<I%ss'%length, length, val1))
02565 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids)
02566 buff.write(_struct_I.pack(length))
02567 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids:
02568 length = len(val1)
02569 buff.write(struct.pack('<I%ss'%length, length, val1))
02570 length = len(self.motion_plan_request.start_state.multi_dof_joint_state.poses)
02571 buff.write(_struct_I.pack(length))
02572 for val1 in self.motion_plan_request.start_state.multi_dof_joint_state.poses:
02573 _v173 = val1.position
02574 _x = _v173
02575 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02576 _v174 = val1.orientation
02577 _x = _v174
02578 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02579 length = len(self.motion_plan_request.goal_constraints.joint_constraints)
02580 buff.write(_struct_I.pack(length))
02581 for val1 in self.motion_plan_request.goal_constraints.joint_constraints:
02582 _x = val1.joint_name
02583 length = len(_x)
02584 buff.write(struct.pack('<I%ss'%length, length, _x))
02585 _x = val1
02586 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
02587 length = len(self.motion_plan_request.goal_constraints.position_constraints)
02588 buff.write(_struct_I.pack(length))
02589 for val1 in self.motion_plan_request.goal_constraints.position_constraints:
02590 _v175 = val1.header
02591 buff.write(_struct_I.pack(_v175.seq))
02592 _v176 = _v175.stamp
02593 _x = _v176
02594 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02595 _x = _v175.frame_id
02596 length = len(_x)
02597 buff.write(struct.pack('<I%ss'%length, length, _x))
02598 _x = val1.link_name
02599 length = len(_x)
02600 buff.write(struct.pack('<I%ss'%length, length, _x))
02601 _v177 = val1.target_point_offset
02602 _x = _v177
02603 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02604 _v178 = val1.position
02605 _x = _v178
02606 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02607 _v179 = val1.constraint_region_shape
02608 buff.write(_struct_b.pack(_v179.type))
02609 length = len(_v179.dimensions)
02610 buff.write(_struct_I.pack(length))
02611 pattern = '<%sd'%length
02612 buff.write(_v179.dimensions.tostring())
02613 length = len(_v179.triangles)
02614 buff.write(_struct_I.pack(length))
02615 pattern = '<%si'%length
02616 buff.write(_v179.triangles.tostring())
02617 length = len(_v179.vertices)
02618 buff.write(_struct_I.pack(length))
02619 for val3 in _v179.vertices:
02620 _x = val3
02621 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02622 _v180 = val1.constraint_region_orientation
02623 _x = _v180
02624 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02625 buff.write(_struct_d.pack(val1.weight))
02626 length = len(self.motion_plan_request.goal_constraints.orientation_constraints)
02627 buff.write(_struct_I.pack(length))
02628 for val1 in self.motion_plan_request.goal_constraints.orientation_constraints:
02629 _v181 = val1.header
02630 buff.write(_struct_I.pack(_v181.seq))
02631 _v182 = _v181.stamp
02632 _x = _v182
02633 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02634 _x = _v181.frame_id
02635 length = len(_x)
02636 buff.write(struct.pack('<I%ss'%length, length, _x))
02637 _x = val1.link_name
02638 length = len(_x)
02639 buff.write(struct.pack('<I%ss'%length, length, _x))
02640 buff.write(_struct_i.pack(val1.type))
02641 _v183 = val1.orientation
02642 _x = _v183
02643 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02644 _x = val1
02645 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
02646 length = len(self.motion_plan_request.goal_constraints.visibility_constraints)
02647 buff.write(_struct_I.pack(length))
02648 for val1 in self.motion_plan_request.goal_constraints.visibility_constraints:
02649 _v184 = val1.header
02650 buff.write(_struct_I.pack(_v184.seq))
02651 _v185 = _v184.stamp
02652 _x = _v185
02653 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02654 _x = _v184.frame_id
02655 length = len(_x)
02656 buff.write(struct.pack('<I%ss'%length, length, _x))
02657 _v186 = val1.target
02658 _v187 = _v186.header
02659 buff.write(_struct_I.pack(_v187.seq))
02660 _v188 = _v187.stamp
02661 _x = _v188
02662 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02663 _x = _v187.frame_id
02664 length = len(_x)
02665 buff.write(struct.pack('<I%ss'%length, length, _x))
02666 _v189 = _v186.point
02667 _x = _v189
02668 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02669 _v190 = val1.sensor_pose
02670 _v191 = _v190.header
02671 buff.write(_struct_I.pack(_v191.seq))
02672 _v192 = _v191.stamp
02673 _x = _v192
02674 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02675 _x = _v191.frame_id
02676 length = len(_x)
02677 buff.write(struct.pack('<I%ss'%length, length, _x))
02678 _v193 = _v190.pose
02679 _v194 = _v193.position
02680 _x = _v194
02681 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02682 _v195 = _v193.orientation
02683 _x = _v195
02684 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02685 buff.write(_struct_d.pack(val1.absolute_tolerance))
02686 length = len(self.motion_plan_request.path_constraints.joint_constraints)
02687 buff.write(_struct_I.pack(length))
02688 for val1 in self.motion_plan_request.path_constraints.joint_constraints:
02689 _x = val1.joint_name
02690 length = len(_x)
02691 buff.write(struct.pack('<I%ss'%length, length, _x))
02692 _x = val1
02693 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight))
02694 length = len(self.motion_plan_request.path_constraints.position_constraints)
02695 buff.write(_struct_I.pack(length))
02696 for val1 in self.motion_plan_request.path_constraints.position_constraints:
02697 _v196 = val1.header
02698 buff.write(_struct_I.pack(_v196.seq))
02699 _v197 = _v196.stamp
02700 _x = _v197
02701 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02702 _x = _v196.frame_id
02703 length = len(_x)
02704 buff.write(struct.pack('<I%ss'%length, length, _x))
02705 _x = val1.link_name
02706 length = len(_x)
02707 buff.write(struct.pack('<I%ss'%length, length, _x))
02708 _v198 = val1.target_point_offset
02709 _x = _v198
02710 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02711 _v199 = val1.position
02712 _x = _v199
02713 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02714 _v200 = val1.constraint_region_shape
02715 buff.write(_struct_b.pack(_v200.type))
02716 length = len(_v200.dimensions)
02717 buff.write(_struct_I.pack(length))
02718 pattern = '<%sd'%length
02719 buff.write(_v200.dimensions.tostring())
02720 length = len(_v200.triangles)
02721 buff.write(_struct_I.pack(length))
02722 pattern = '<%si'%length
02723 buff.write(_v200.triangles.tostring())
02724 length = len(_v200.vertices)
02725 buff.write(_struct_I.pack(length))
02726 for val3 in _v200.vertices:
02727 _x = val3
02728 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02729 _v201 = val1.constraint_region_orientation
02730 _x = _v201
02731 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02732 buff.write(_struct_d.pack(val1.weight))
02733 length = len(self.motion_plan_request.path_constraints.orientation_constraints)
02734 buff.write(_struct_I.pack(length))
02735 for val1 in self.motion_plan_request.path_constraints.orientation_constraints:
02736 _v202 = val1.header
02737 buff.write(_struct_I.pack(_v202.seq))
02738 _v203 = _v202.stamp
02739 _x = _v203
02740 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02741 _x = _v202.frame_id
02742 length = len(_x)
02743 buff.write(struct.pack('<I%ss'%length, length, _x))
02744 _x = val1.link_name
02745 length = len(_x)
02746 buff.write(struct.pack('<I%ss'%length, length, _x))
02747 buff.write(_struct_i.pack(val1.type))
02748 _v204 = val1.orientation
02749 _x = _v204
02750 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02751 _x = val1
02752 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight))
02753 length = len(self.motion_plan_request.path_constraints.visibility_constraints)
02754 buff.write(_struct_I.pack(length))
02755 for val1 in self.motion_plan_request.path_constraints.visibility_constraints:
02756 _v205 = val1.header
02757 buff.write(_struct_I.pack(_v205.seq))
02758 _v206 = _v205.stamp
02759 _x = _v206
02760 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02761 _x = _v205.frame_id
02762 length = len(_x)
02763 buff.write(struct.pack('<I%ss'%length, length, _x))
02764 _v207 = val1.target
02765 _v208 = _v207.header
02766 buff.write(_struct_I.pack(_v208.seq))
02767 _v209 = _v208.stamp
02768 _x = _v209
02769 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02770 _x = _v208.frame_id
02771 length = len(_x)
02772 buff.write(struct.pack('<I%ss'%length, length, _x))
02773 _v210 = _v207.point
02774 _x = _v210
02775 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02776 _v211 = val1.sensor_pose
02777 _v212 = _v211.header
02778 buff.write(_struct_I.pack(_v212.seq))
02779 _v213 = _v212.stamp
02780 _x = _v213
02781 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
02782 _x = _v212.frame_id
02783 length = len(_x)
02784 buff.write(struct.pack('<I%ss'%length, length, _x))
02785 _v214 = _v211.pose
02786 _v215 = _v214.position
02787 _x = _v215
02788 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
02789 _v216 = _v214.orientation
02790 _x = _v216
02791 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
02792 buff.write(_struct_d.pack(val1.absolute_tolerance))
02793 _x = self.motion_plan_request.planner_id
02794 length = len(_x)
02795 buff.write(struct.pack('<I%ss'%length, length, _x))
02796 _x = self.motion_plan_request.group_name
02797 length = len(_x)
02798 buff.write(struct.pack('<I%ss'%length, length, _x))
02799 _x = self
02800 buff.write(_struct_7i.pack(_x.motion_plan_request.num_planning_attempts, _x.motion_plan_request.allowed_planning_time.secs, _x.motion_plan_request.allowed_planning_time.nsecs, _x.motion_plan_request.expected_path_duration.secs, _x.motion_plan_request.expected_path_duration.nsecs, _x.motion_plan_request.expected_path_dt.secs, _x.motion_plan_request.expected_path_dt.nsecs))
02801 length = len(self.operations.collision_operations)
02802 buff.write(_struct_I.pack(length))
02803 for val1 in self.operations.collision_operations:
02804 _x = val1.object1
02805 length = len(_x)
02806 buff.write(struct.pack('<I%ss'%length, length, _x))
02807 _x = val1.object2
02808 length = len(_x)
02809 buff.write(struct.pack('<I%ss'%length, length, _x))
02810 _x = val1
02811 buff.write(_struct_di.pack(_x.penetration_distance, _x.operation))
02812 _x = self
02813 buff.write(_struct_4B.pack(_x.accept_partial_plans, _x.accept_invalid_goals, _x.disable_ik, _x.disable_collision_monitoring))
02814 except struct.error as se: self._check_types(se)
02815 except TypeError as te: self._check_types(te)
02816
02817 def deserialize_numpy(self, str, numpy):
02818 """
02819 unpack serialized message in str into this message instance using numpy for array types
02820 @param str: byte array of serialized message
02821 @type str: str
02822 @param numpy: numpy python module
02823 @type numpy: module
02824 """
02825 try:
02826 if self.planning_scene_diff is None:
02827 self.planning_scene_diff = arm_navigation_msgs.msg.PlanningScene()
02828 if self.motion_plan_request is None:
02829 self.motion_plan_request = arm_navigation_msgs.msg.MotionPlanRequest()
02830 if self.operations is None:
02831 self.operations = arm_navigation_msgs.msg.OrderedCollisionOperations()
02832 end = 0
02833 start = end
02834 end += 4
02835 (length,) = _struct_I.unpack(str[start:end])
02836 start = end
02837 end += length
02838 self.planner_service_name = str[start:end]
02839 _x = self
02840 start = end
02841 end += 12
02842 (_x.planning_scene_diff.robot_state.joint_state.header.seq, _x.planning_scene_diff.robot_state.joint_state.header.stamp.secs, _x.planning_scene_diff.robot_state.joint_state.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
02843 start = end
02844 end += 4
02845 (length,) = _struct_I.unpack(str[start:end])
02846 start = end
02847 end += length
02848 self.planning_scene_diff.robot_state.joint_state.header.frame_id = str[start:end]
02849 start = end
02850 end += 4
02851 (length,) = _struct_I.unpack(str[start:end])
02852 self.planning_scene_diff.robot_state.joint_state.name = []
02853 for i in range(0, length):
02854 start = end
02855 end += 4
02856 (length,) = _struct_I.unpack(str[start:end])
02857 start = end
02858 end += length
02859 val1 = str[start:end]
02860 self.planning_scene_diff.robot_state.joint_state.name.append(val1)
02861 start = end
02862 end += 4
02863 (length,) = _struct_I.unpack(str[start:end])
02864 pattern = '<%sd'%length
02865 start = end
02866 end += struct.calcsize(pattern)
02867 self.planning_scene_diff.robot_state.joint_state.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02868 start = end
02869 end += 4
02870 (length,) = _struct_I.unpack(str[start:end])
02871 pattern = '<%sd'%length
02872 start = end
02873 end += struct.calcsize(pattern)
02874 self.planning_scene_diff.robot_state.joint_state.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02875 start = end
02876 end += 4
02877 (length,) = _struct_I.unpack(str[start:end])
02878 pattern = '<%sd'%length
02879 start = end
02880 end += struct.calcsize(pattern)
02881 self.planning_scene_diff.robot_state.joint_state.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02882 _x = self
02883 start = end
02884 end += 8
02885 (_x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.secs, _x.planning_scene_diff.robot_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
02886 start = end
02887 end += 4
02888 (length,) = _struct_I.unpack(str[start:end])
02889 self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names = []
02890 for i in range(0, length):
02891 start = end
02892 end += 4
02893 (length,) = _struct_I.unpack(str[start:end])
02894 start = end
02895 end += length
02896 val1 = str[start:end]
02897 self.planning_scene_diff.robot_state.multi_dof_joint_state.joint_names.append(val1)
02898 start = end
02899 end += 4
02900 (length,) = _struct_I.unpack(str[start:end])
02901 self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids = []
02902 for i in range(0, length):
02903 start = end
02904 end += 4
02905 (length,) = _struct_I.unpack(str[start:end])
02906 start = end
02907 end += length
02908 val1 = str[start:end]
02909 self.planning_scene_diff.robot_state.multi_dof_joint_state.frame_ids.append(val1)
02910 start = end
02911 end += 4
02912 (length,) = _struct_I.unpack(str[start:end])
02913 self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids = []
02914 for i in range(0, length):
02915 start = end
02916 end += 4
02917 (length,) = _struct_I.unpack(str[start:end])
02918 start = end
02919 end += length
02920 val1 = str[start:end]
02921 self.planning_scene_diff.robot_state.multi_dof_joint_state.child_frame_ids.append(val1)
02922 start = end
02923 end += 4
02924 (length,) = _struct_I.unpack(str[start:end])
02925 self.planning_scene_diff.robot_state.multi_dof_joint_state.poses = []
02926 for i in range(0, length):
02927 val1 = geometry_msgs.msg.Pose()
02928 _v217 = val1.position
02929 _x = _v217
02930 start = end
02931 end += 24
02932 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02933 _v218 = val1.orientation
02934 _x = _v218
02935 start = end
02936 end += 32
02937 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02938 self.planning_scene_diff.robot_state.multi_dof_joint_state.poses.append(val1)
02939 start = end
02940 end += 4
02941 (length,) = _struct_I.unpack(str[start:end])
02942 self.planning_scene_diff.fixed_frame_transforms = []
02943 for i in range(0, length):
02944 val1 = geometry_msgs.msg.TransformStamped()
02945 _v219 = val1.header
02946 start = end
02947 end += 4
02948 (_v219.seq,) = _struct_I.unpack(str[start:end])
02949 _v220 = _v219.stamp
02950 _x = _v220
02951 start = end
02952 end += 8
02953 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02954 start = end
02955 end += 4
02956 (length,) = _struct_I.unpack(str[start:end])
02957 start = end
02958 end += length
02959 _v219.frame_id = str[start:end]
02960 start = end
02961 end += 4
02962 (length,) = _struct_I.unpack(str[start:end])
02963 start = end
02964 end += length
02965 val1.child_frame_id = str[start:end]
02966 _v221 = val1.transform
02967 _v222 = _v221.translation
02968 _x = _v222
02969 start = end
02970 end += 24
02971 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02972 _v223 = _v221.rotation
02973 _x = _v223
02974 start = end
02975 end += 32
02976 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02977 self.planning_scene_diff.fixed_frame_transforms.append(val1)
02978 start = end
02979 end += 4
02980 (length,) = _struct_I.unpack(str[start:end])
02981 self.planning_scene_diff.allowed_collision_matrix.link_names = []
02982 for i in range(0, length):
02983 start = end
02984 end += 4
02985 (length,) = _struct_I.unpack(str[start:end])
02986 start = end
02987 end += length
02988 val1 = str[start:end]
02989 self.planning_scene_diff.allowed_collision_matrix.link_names.append(val1)
02990 start = end
02991 end += 4
02992 (length,) = _struct_I.unpack(str[start:end])
02993 self.planning_scene_diff.allowed_collision_matrix.entries = []
02994 for i in range(0, length):
02995 val1 = arm_navigation_msgs.msg.AllowedCollisionEntry()
02996 start = end
02997 end += 4
02998 (length,) = _struct_I.unpack(str[start:end])
02999 pattern = '<%sB'%length
03000 start = end
03001 end += struct.calcsize(pattern)
03002 val1.enabled = numpy.frombuffer(str[start:end], dtype=numpy.bool, count=length)
03003 val1.enabled = map(bool, val1.enabled)
03004 self.planning_scene_diff.allowed_collision_matrix.entries.append(val1)
03005 start = end
03006 end += 4
03007 (length,) = _struct_I.unpack(str[start:end])
03008 self.planning_scene_diff.allowed_contacts = []
03009 for i in range(0, length):
03010 val1 = arm_navigation_msgs.msg.AllowedContactSpecification()
03011 start = end
03012 end += 4
03013 (length,) = _struct_I.unpack(str[start:end])
03014 start = end
03015 end += length
03016 val1.name = str[start:end]
03017 _v224 = val1.shape
03018 start = end
03019 end += 1
03020 (_v224.type,) = _struct_b.unpack(str[start:end])
03021 start = end
03022 end += 4
03023 (length,) = _struct_I.unpack(str[start:end])
03024 pattern = '<%sd'%length
03025 start = end
03026 end += struct.calcsize(pattern)
03027 _v224.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03028 start = end
03029 end += 4
03030 (length,) = _struct_I.unpack(str[start:end])
03031 pattern = '<%si'%length
03032 start = end
03033 end += struct.calcsize(pattern)
03034 _v224.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03035 start = end
03036 end += 4
03037 (length,) = _struct_I.unpack(str[start:end])
03038 _v224.vertices = []
03039 for i in range(0, length):
03040 val3 = geometry_msgs.msg.Point()
03041 _x = val3
03042 start = end
03043 end += 24
03044 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03045 _v224.vertices.append(val3)
03046 _v225 = val1.pose_stamped
03047 _v226 = _v225.header
03048 start = end
03049 end += 4
03050 (_v226.seq,) = _struct_I.unpack(str[start:end])
03051 _v227 = _v226.stamp
03052 _x = _v227
03053 start = end
03054 end += 8
03055 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03056 start = end
03057 end += 4
03058 (length,) = _struct_I.unpack(str[start:end])
03059 start = end
03060 end += length
03061 _v226.frame_id = str[start:end]
03062 _v228 = _v225.pose
03063 _v229 = _v228.position
03064 _x = _v229
03065 start = end
03066 end += 24
03067 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03068 _v230 = _v228.orientation
03069 _x = _v230
03070 start = end
03071 end += 32
03072 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03073 start = end
03074 end += 4
03075 (length,) = _struct_I.unpack(str[start:end])
03076 val1.link_names = []
03077 for i in range(0, length):
03078 start = end
03079 end += 4
03080 (length,) = _struct_I.unpack(str[start:end])
03081 start = end
03082 end += length
03083 val2 = str[start:end]
03084 val1.link_names.append(val2)
03085 start = end
03086 end += 8
03087 (val1.penetration_depth,) = _struct_d.unpack(str[start:end])
03088 self.planning_scene_diff.allowed_contacts.append(val1)
03089 start = end
03090 end += 4
03091 (length,) = _struct_I.unpack(str[start:end])
03092 self.planning_scene_diff.link_padding = []
03093 for i in range(0, length):
03094 val1 = arm_navigation_msgs.msg.LinkPadding()
03095 start = end
03096 end += 4
03097 (length,) = _struct_I.unpack(str[start:end])
03098 start = end
03099 end += length
03100 val1.link_name = str[start:end]
03101 start = end
03102 end += 8
03103 (val1.padding,) = _struct_d.unpack(str[start:end])
03104 self.planning_scene_diff.link_padding.append(val1)
03105 start = end
03106 end += 4
03107 (length,) = _struct_I.unpack(str[start:end])
03108 self.planning_scene_diff.collision_objects = []
03109 for i in range(0, length):
03110 val1 = arm_navigation_msgs.msg.CollisionObject()
03111 _v231 = val1.header
03112 start = end
03113 end += 4
03114 (_v231.seq,) = _struct_I.unpack(str[start:end])
03115 _v232 = _v231.stamp
03116 _x = _v232
03117 start = end
03118 end += 8
03119 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03120 start = end
03121 end += 4
03122 (length,) = _struct_I.unpack(str[start:end])
03123 start = end
03124 end += length
03125 _v231.frame_id = str[start:end]
03126 start = end
03127 end += 4
03128 (length,) = _struct_I.unpack(str[start:end])
03129 start = end
03130 end += length
03131 val1.id = str[start:end]
03132 start = end
03133 end += 4
03134 (val1.padding,) = _struct_f.unpack(str[start:end])
03135 _v233 = val1.operation
03136 start = end
03137 end += 1
03138 (_v233.operation,) = _struct_b.unpack(str[start:end])
03139 start = end
03140 end += 4
03141 (length,) = _struct_I.unpack(str[start:end])
03142 val1.shapes = []
03143 for i in range(0, length):
03144 val2 = arm_navigation_msgs.msg.Shape()
03145 start = end
03146 end += 1
03147 (val2.type,) = _struct_b.unpack(str[start:end])
03148 start = end
03149 end += 4
03150 (length,) = _struct_I.unpack(str[start:end])
03151 pattern = '<%sd'%length
03152 start = end
03153 end += struct.calcsize(pattern)
03154 val2.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03155 start = end
03156 end += 4
03157 (length,) = _struct_I.unpack(str[start:end])
03158 pattern = '<%si'%length
03159 start = end
03160 end += struct.calcsize(pattern)
03161 val2.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03162 start = end
03163 end += 4
03164 (length,) = _struct_I.unpack(str[start:end])
03165 val2.vertices = []
03166 for i in range(0, length):
03167 val3 = geometry_msgs.msg.Point()
03168 _x = val3
03169 start = end
03170 end += 24
03171 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03172 val2.vertices.append(val3)
03173 val1.shapes.append(val2)
03174 start = end
03175 end += 4
03176 (length,) = _struct_I.unpack(str[start:end])
03177 val1.poses = []
03178 for i in range(0, length):
03179 val2 = geometry_msgs.msg.Pose()
03180 _v234 = val2.position
03181 _x = _v234
03182 start = end
03183 end += 24
03184 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03185 _v235 = val2.orientation
03186 _x = _v235
03187 start = end
03188 end += 32
03189 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03190 val1.poses.append(val2)
03191 self.planning_scene_diff.collision_objects.append(val1)
03192 start = end
03193 end += 4
03194 (length,) = _struct_I.unpack(str[start:end])
03195 self.planning_scene_diff.attached_collision_objects = []
03196 for i in range(0, length):
03197 val1 = arm_navigation_msgs.msg.AttachedCollisionObject()
03198 start = end
03199 end += 4
03200 (length,) = _struct_I.unpack(str[start:end])
03201 start = end
03202 end += length
03203 val1.link_name = str[start:end]
03204 _v236 = val1.object
03205 _v237 = _v236.header
03206 start = end
03207 end += 4
03208 (_v237.seq,) = _struct_I.unpack(str[start:end])
03209 _v238 = _v237.stamp
03210 _x = _v238
03211 start = end
03212 end += 8
03213 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03214 start = end
03215 end += 4
03216 (length,) = _struct_I.unpack(str[start:end])
03217 start = end
03218 end += length
03219 _v237.frame_id = str[start:end]
03220 start = end
03221 end += 4
03222 (length,) = _struct_I.unpack(str[start:end])
03223 start = end
03224 end += length
03225 _v236.id = str[start:end]
03226 start = end
03227 end += 4
03228 (_v236.padding,) = _struct_f.unpack(str[start:end])
03229 _v239 = _v236.operation
03230 start = end
03231 end += 1
03232 (_v239.operation,) = _struct_b.unpack(str[start:end])
03233 start = end
03234 end += 4
03235 (length,) = _struct_I.unpack(str[start:end])
03236 _v236.shapes = []
03237 for i in range(0, length):
03238 val3 = arm_navigation_msgs.msg.Shape()
03239 start = end
03240 end += 1
03241 (val3.type,) = _struct_b.unpack(str[start:end])
03242 start = end
03243 end += 4
03244 (length,) = _struct_I.unpack(str[start:end])
03245 pattern = '<%sd'%length
03246 start = end
03247 end += struct.calcsize(pattern)
03248 val3.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03249 start = end
03250 end += 4
03251 (length,) = _struct_I.unpack(str[start:end])
03252 pattern = '<%si'%length
03253 start = end
03254 end += struct.calcsize(pattern)
03255 val3.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03256 start = end
03257 end += 4
03258 (length,) = _struct_I.unpack(str[start:end])
03259 val3.vertices = []
03260 for i in range(0, length):
03261 val4 = geometry_msgs.msg.Point()
03262 _x = val4
03263 start = end
03264 end += 24
03265 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03266 val3.vertices.append(val4)
03267 _v236.shapes.append(val3)
03268 start = end
03269 end += 4
03270 (length,) = _struct_I.unpack(str[start:end])
03271 _v236.poses = []
03272 for i in range(0, length):
03273 val3 = geometry_msgs.msg.Pose()
03274 _v240 = val3.position
03275 _x = _v240
03276 start = end
03277 end += 24
03278 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03279 _v241 = val3.orientation
03280 _x = _v241
03281 start = end
03282 end += 32
03283 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03284 _v236.poses.append(val3)
03285 start = end
03286 end += 4
03287 (length,) = _struct_I.unpack(str[start:end])
03288 val1.touch_links = []
03289 for i in range(0, length):
03290 start = end
03291 end += 4
03292 (length,) = _struct_I.unpack(str[start:end])
03293 start = end
03294 end += length
03295 val2 = str[start:end]
03296 val1.touch_links.append(val2)
03297 self.planning_scene_diff.attached_collision_objects.append(val1)
03298 _x = self
03299 start = end
03300 end += 12
03301 (_x.planning_scene_diff.collision_map.header.seq, _x.planning_scene_diff.collision_map.header.stamp.secs, _x.planning_scene_diff.collision_map.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
03302 start = end
03303 end += 4
03304 (length,) = _struct_I.unpack(str[start:end])
03305 start = end
03306 end += length
03307 self.planning_scene_diff.collision_map.header.frame_id = str[start:end]
03308 start = end
03309 end += 4
03310 (length,) = _struct_I.unpack(str[start:end])
03311 self.planning_scene_diff.collision_map.boxes = []
03312 for i in range(0, length):
03313 val1 = arm_navigation_msgs.msg.OrientedBoundingBox()
03314 _v242 = val1.center
03315 _x = _v242
03316 start = end
03317 end += 12
03318 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
03319 _v243 = val1.extents
03320 _x = _v243
03321 start = end
03322 end += 12
03323 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
03324 _v244 = val1.axis
03325 _x = _v244
03326 start = end
03327 end += 12
03328 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
03329 start = end
03330 end += 4
03331 (val1.angle,) = _struct_f.unpack(str[start:end])
03332 self.planning_scene_diff.collision_map.boxes.append(val1)
03333 start = end
03334 end += 1
03335 (self.motion_plan_request.workspace_parameters.workspace_region_shape.type,) = _struct_b.unpack(str[start:end])
03336 start = end
03337 end += 4
03338 (length,) = _struct_I.unpack(str[start:end])
03339 pattern = '<%sd'%length
03340 start = end
03341 end += struct.calcsize(pattern)
03342 self.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03343 start = end
03344 end += 4
03345 (length,) = _struct_I.unpack(str[start:end])
03346 pattern = '<%si'%length
03347 start = end
03348 end += struct.calcsize(pattern)
03349 self.motion_plan_request.workspace_parameters.workspace_region_shape.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03350 start = end
03351 end += 4
03352 (length,) = _struct_I.unpack(str[start:end])
03353 self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices = []
03354 for i in range(0, length):
03355 val1 = geometry_msgs.msg.Point()
03356 _x = val1
03357 start = end
03358 end += 24
03359 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03360 self.motion_plan_request.workspace_parameters.workspace_region_shape.vertices.append(val1)
03361 _x = self
03362 start = end
03363 end += 12
03364 (_x.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
03365 start = end
03366 end += 4
03367 (length,) = _struct_I.unpack(str[start:end])
03368 start = end
03369 end += length
03370 self.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id = str[start:end]
03371 _x = self
03372 start = end
03373 end += 68
03374 (_x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.motion_plan_request.start_state.joint_state.header.seq, _x.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.motion_plan_request.start_state.joint_state.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end])
03375 start = end
03376 end += 4
03377 (length,) = _struct_I.unpack(str[start:end])
03378 start = end
03379 end += length
03380 self.motion_plan_request.start_state.joint_state.header.frame_id = str[start:end]
03381 start = end
03382 end += 4
03383 (length,) = _struct_I.unpack(str[start:end])
03384 self.motion_plan_request.start_state.joint_state.name = []
03385 for i in range(0, length):
03386 start = end
03387 end += 4
03388 (length,) = _struct_I.unpack(str[start:end])
03389 start = end
03390 end += length
03391 val1 = str[start:end]
03392 self.motion_plan_request.start_state.joint_state.name.append(val1)
03393 start = end
03394 end += 4
03395 (length,) = _struct_I.unpack(str[start:end])
03396 pattern = '<%sd'%length
03397 start = end
03398 end += struct.calcsize(pattern)
03399 self.motion_plan_request.start_state.joint_state.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03400 start = end
03401 end += 4
03402 (length,) = _struct_I.unpack(str[start:end])
03403 pattern = '<%sd'%length
03404 start = end
03405 end += struct.calcsize(pattern)
03406 self.motion_plan_request.start_state.joint_state.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03407 start = end
03408 end += 4
03409 (length,) = _struct_I.unpack(str[start:end])
03410 pattern = '<%sd'%length
03411 start = end
03412 end += struct.calcsize(pattern)
03413 self.motion_plan_request.start_state.joint_state.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03414 _x = self
03415 start = end
03416 end += 8
03417 (_x.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
03418 start = end
03419 end += 4
03420 (length,) = _struct_I.unpack(str[start:end])
03421 self.motion_plan_request.start_state.multi_dof_joint_state.joint_names = []
03422 for i in range(0, length):
03423 start = end
03424 end += 4
03425 (length,) = _struct_I.unpack(str[start:end])
03426 start = end
03427 end += length
03428 val1 = str[start:end]
03429 self.motion_plan_request.start_state.multi_dof_joint_state.joint_names.append(val1)
03430 start = end
03431 end += 4
03432 (length,) = _struct_I.unpack(str[start:end])
03433 self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids = []
03434 for i in range(0, length):
03435 start = end
03436 end += 4
03437 (length,) = _struct_I.unpack(str[start:end])
03438 start = end
03439 end += length
03440 val1 = str[start:end]
03441 self.motion_plan_request.start_state.multi_dof_joint_state.frame_ids.append(val1)
03442 start = end
03443 end += 4
03444 (length,) = _struct_I.unpack(str[start:end])
03445 self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids = []
03446 for i in range(0, length):
03447 start = end
03448 end += 4
03449 (length,) = _struct_I.unpack(str[start:end])
03450 start = end
03451 end += length
03452 val1 = str[start:end]
03453 self.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids.append(val1)
03454 start = end
03455 end += 4
03456 (length,) = _struct_I.unpack(str[start:end])
03457 self.motion_plan_request.start_state.multi_dof_joint_state.poses = []
03458 for i in range(0, length):
03459 val1 = geometry_msgs.msg.Pose()
03460 _v245 = val1.position
03461 _x = _v245
03462 start = end
03463 end += 24
03464 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03465 _v246 = val1.orientation
03466 _x = _v246
03467 start = end
03468 end += 32
03469 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03470 self.motion_plan_request.start_state.multi_dof_joint_state.poses.append(val1)
03471 start = end
03472 end += 4
03473 (length,) = _struct_I.unpack(str[start:end])
03474 self.motion_plan_request.goal_constraints.joint_constraints = []
03475 for i in range(0, length):
03476 val1 = arm_navigation_msgs.msg.JointConstraint()
03477 start = end
03478 end += 4
03479 (length,) = _struct_I.unpack(str[start:end])
03480 start = end
03481 end += length
03482 val1.joint_name = str[start:end]
03483 _x = val1
03484 start = end
03485 end += 32
03486 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
03487 self.motion_plan_request.goal_constraints.joint_constraints.append(val1)
03488 start = end
03489 end += 4
03490 (length,) = _struct_I.unpack(str[start:end])
03491 self.motion_plan_request.goal_constraints.position_constraints = []
03492 for i in range(0, length):
03493 val1 = arm_navigation_msgs.msg.PositionConstraint()
03494 _v247 = val1.header
03495 start = end
03496 end += 4
03497 (_v247.seq,) = _struct_I.unpack(str[start:end])
03498 _v248 = _v247.stamp
03499 _x = _v248
03500 start = end
03501 end += 8
03502 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03503 start = end
03504 end += 4
03505 (length,) = _struct_I.unpack(str[start:end])
03506 start = end
03507 end += length
03508 _v247.frame_id = str[start:end]
03509 start = end
03510 end += 4
03511 (length,) = _struct_I.unpack(str[start:end])
03512 start = end
03513 end += length
03514 val1.link_name = str[start:end]
03515 _v249 = val1.target_point_offset
03516 _x = _v249
03517 start = end
03518 end += 24
03519 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03520 _v250 = val1.position
03521 _x = _v250
03522 start = end
03523 end += 24
03524 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03525 _v251 = val1.constraint_region_shape
03526 start = end
03527 end += 1
03528 (_v251.type,) = _struct_b.unpack(str[start:end])
03529 start = end
03530 end += 4
03531 (length,) = _struct_I.unpack(str[start:end])
03532 pattern = '<%sd'%length
03533 start = end
03534 end += struct.calcsize(pattern)
03535 _v251.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03536 start = end
03537 end += 4
03538 (length,) = _struct_I.unpack(str[start:end])
03539 pattern = '<%si'%length
03540 start = end
03541 end += struct.calcsize(pattern)
03542 _v251.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03543 start = end
03544 end += 4
03545 (length,) = _struct_I.unpack(str[start:end])
03546 _v251.vertices = []
03547 for i in range(0, length):
03548 val3 = geometry_msgs.msg.Point()
03549 _x = val3
03550 start = end
03551 end += 24
03552 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03553 _v251.vertices.append(val3)
03554 _v252 = val1.constraint_region_orientation
03555 _x = _v252
03556 start = end
03557 end += 32
03558 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03559 start = end
03560 end += 8
03561 (val1.weight,) = _struct_d.unpack(str[start:end])
03562 self.motion_plan_request.goal_constraints.position_constraints.append(val1)
03563 start = end
03564 end += 4
03565 (length,) = _struct_I.unpack(str[start:end])
03566 self.motion_plan_request.goal_constraints.orientation_constraints = []
03567 for i in range(0, length):
03568 val1 = arm_navigation_msgs.msg.OrientationConstraint()
03569 _v253 = val1.header
03570 start = end
03571 end += 4
03572 (_v253.seq,) = _struct_I.unpack(str[start:end])
03573 _v254 = _v253.stamp
03574 _x = _v254
03575 start = end
03576 end += 8
03577 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03578 start = end
03579 end += 4
03580 (length,) = _struct_I.unpack(str[start:end])
03581 start = end
03582 end += length
03583 _v253.frame_id = str[start:end]
03584 start = end
03585 end += 4
03586 (length,) = _struct_I.unpack(str[start:end])
03587 start = end
03588 end += length
03589 val1.link_name = str[start:end]
03590 start = end
03591 end += 4
03592 (val1.type,) = _struct_i.unpack(str[start:end])
03593 _v255 = val1.orientation
03594 _x = _v255
03595 start = end
03596 end += 32
03597 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03598 _x = val1
03599 start = end
03600 end += 32
03601 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
03602 self.motion_plan_request.goal_constraints.orientation_constraints.append(val1)
03603 start = end
03604 end += 4
03605 (length,) = _struct_I.unpack(str[start:end])
03606 self.motion_plan_request.goal_constraints.visibility_constraints = []
03607 for i in range(0, length):
03608 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
03609 _v256 = val1.header
03610 start = end
03611 end += 4
03612 (_v256.seq,) = _struct_I.unpack(str[start:end])
03613 _v257 = _v256.stamp
03614 _x = _v257
03615 start = end
03616 end += 8
03617 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03618 start = end
03619 end += 4
03620 (length,) = _struct_I.unpack(str[start:end])
03621 start = end
03622 end += length
03623 _v256.frame_id = str[start:end]
03624 _v258 = val1.target
03625 _v259 = _v258.header
03626 start = end
03627 end += 4
03628 (_v259.seq,) = _struct_I.unpack(str[start:end])
03629 _v260 = _v259.stamp
03630 _x = _v260
03631 start = end
03632 end += 8
03633 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03634 start = end
03635 end += 4
03636 (length,) = _struct_I.unpack(str[start:end])
03637 start = end
03638 end += length
03639 _v259.frame_id = str[start:end]
03640 _v261 = _v258.point
03641 _x = _v261
03642 start = end
03643 end += 24
03644 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03645 _v262 = val1.sensor_pose
03646 _v263 = _v262.header
03647 start = end
03648 end += 4
03649 (_v263.seq,) = _struct_I.unpack(str[start:end])
03650 _v264 = _v263.stamp
03651 _x = _v264
03652 start = end
03653 end += 8
03654 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03655 start = end
03656 end += 4
03657 (length,) = _struct_I.unpack(str[start:end])
03658 start = end
03659 end += length
03660 _v263.frame_id = str[start:end]
03661 _v265 = _v262.pose
03662 _v266 = _v265.position
03663 _x = _v266
03664 start = end
03665 end += 24
03666 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03667 _v267 = _v265.orientation
03668 _x = _v267
03669 start = end
03670 end += 32
03671 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03672 start = end
03673 end += 8
03674 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
03675 self.motion_plan_request.goal_constraints.visibility_constraints.append(val1)
03676 start = end
03677 end += 4
03678 (length,) = _struct_I.unpack(str[start:end])
03679 self.motion_plan_request.path_constraints.joint_constraints = []
03680 for i in range(0, length):
03681 val1 = arm_navigation_msgs.msg.JointConstraint()
03682 start = end
03683 end += 4
03684 (length,) = _struct_I.unpack(str[start:end])
03685 start = end
03686 end += length
03687 val1.joint_name = str[start:end]
03688 _x = val1
03689 start = end
03690 end += 32
03691 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end])
03692 self.motion_plan_request.path_constraints.joint_constraints.append(val1)
03693 start = end
03694 end += 4
03695 (length,) = _struct_I.unpack(str[start:end])
03696 self.motion_plan_request.path_constraints.position_constraints = []
03697 for i in range(0, length):
03698 val1 = arm_navigation_msgs.msg.PositionConstraint()
03699 _v268 = val1.header
03700 start = end
03701 end += 4
03702 (_v268.seq,) = _struct_I.unpack(str[start:end])
03703 _v269 = _v268.stamp
03704 _x = _v269
03705 start = end
03706 end += 8
03707 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03708 start = end
03709 end += 4
03710 (length,) = _struct_I.unpack(str[start:end])
03711 start = end
03712 end += length
03713 _v268.frame_id = str[start:end]
03714 start = end
03715 end += 4
03716 (length,) = _struct_I.unpack(str[start:end])
03717 start = end
03718 end += length
03719 val1.link_name = str[start:end]
03720 _v270 = val1.target_point_offset
03721 _x = _v270
03722 start = end
03723 end += 24
03724 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03725 _v271 = val1.position
03726 _x = _v271
03727 start = end
03728 end += 24
03729 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03730 _v272 = val1.constraint_region_shape
03731 start = end
03732 end += 1
03733 (_v272.type,) = _struct_b.unpack(str[start:end])
03734 start = end
03735 end += 4
03736 (length,) = _struct_I.unpack(str[start:end])
03737 pattern = '<%sd'%length
03738 start = end
03739 end += struct.calcsize(pattern)
03740 _v272.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
03741 start = end
03742 end += 4
03743 (length,) = _struct_I.unpack(str[start:end])
03744 pattern = '<%si'%length
03745 start = end
03746 end += struct.calcsize(pattern)
03747 _v272.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
03748 start = end
03749 end += 4
03750 (length,) = _struct_I.unpack(str[start:end])
03751 _v272.vertices = []
03752 for i in range(0, length):
03753 val3 = geometry_msgs.msg.Point()
03754 _x = val3
03755 start = end
03756 end += 24
03757 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03758 _v272.vertices.append(val3)
03759 _v273 = val1.constraint_region_orientation
03760 _x = _v273
03761 start = end
03762 end += 32
03763 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03764 start = end
03765 end += 8
03766 (val1.weight,) = _struct_d.unpack(str[start:end])
03767 self.motion_plan_request.path_constraints.position_constraints.append(val1)
03768 start = end
03769 end += 4
03770 (length,) = _struct_I.unpack(str[start:end])
03771 self.motion_plan_request.path_constraints.orientation_constraints = []
03772 for i in range(0, length):
03773 val1 = arm_navigation_msgs.msg.OrientationConstraint()
03774 _v274 = val1.header
03775 start = end
03776 end += 4
03777 (_v274.seq,) = _struct_I.unpack(str[start:end])
03778 _v275 = _v274.stamp
03779 _x = _v275
03780 start = end
03781 end += 8
03782 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03783 start = end
03784 end += 4
03785 (length,) = _struct_I.unpack(str[start:end])
03786 start = end
03787 end += length
03788 _v274.frame_id = str[start:end]
03789 start = end
03790 end += 4
03791 (length,) = _struct_I.unpack(str[start:end])
03792 start = end
03793 end += length
03794 val1.link_name = str[start:end]
03795 start = end
03796 end += 4
03797 (val1.type,) = _struct_i.unpack(str[start:end])
03798 _v276 = val1.orientation
03799 _x = _v276
03800 start = end
03801 end += 32
03802 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03803 _x = val1
03804 start = end
03805 end += 32
03806 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end])
03807 self.motion_plan_request.path_constraints.orientation_constraints.append(val1)
03808 start = end
03809 end += 4
03810 (length,) = _struct_I.unpack(str[start:end])
03811 self.motion_plan_request.path_constraints.visibility_constraints = []
03812 for i in range(0, length):
03813 val1 = arm_navigation_msgs.msg.VisibilityConstraint()
03814 _v277 = val1.header
03815 start = end
03816 end += 4
03817 (_v277.seq,) = _struct_I.unpack(str[start:end])
03818 _v278 = _v277.stamp
03819 _x = _v278
03820 start = end
03821 end += 8
03822 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03823 start = end
03824 end += 4
03825 (length,) = _struct_I.unpack(str[start:end])
03826 start = end
03827 end += length
03828 _v277.frame_id = str[start:end]
03829 _v279 = val1.target
03830 _v280 = _v279.header
03831 start = end
03832 end += 4
03833 (_v280.seq,) = _struct_I.unpack(str[start:end])
03834 _v281 = _v280.stamp
03835 _x = _v281
03836 start = end
03837 end += 8
03838 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03839 start = end
03840 end += 4
03841 (length,) = _struct_I.unpack(str[start:end])
03842 start = end
03843 end += length
03844 _v280.frame_id = str[start:end]
03845 _v282 = _v279.point
03846 _x = _v282
03847 start = end
03848 end += 24
03849 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03850 _v283 = val1.sensor_pose
03851 _v284 = _v283.header
03852 start = end
03853 end += 4
03854 (_v284.seq,) = _struct_I.unpack(str[start:end])
03855 _v285 = _v284.stamp
03856 _x = _v285
03857 start = end
03858 end += 8
03859 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
03860 start = end
03861 end += 4
03862 (length,) = _struct_I.unpack(str[start:end])
03863 start = end
03864 end += length
03865 _v284.frame_id = str[start:end]
03866 _v286 = _v283.pose
03867 _v287 = _v286.position
03868 _x = _v287
03869 start = end
03870 end += 24
03871 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
03872 _v288 = _v286.orientation
03873 _x = _v288
03874 start = end
03875 end += 32
03876 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
03877 start = end
03878 end += 8
03879 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end])
03880 self.motion_plan_request.path_constraints.visibility_constraints.append(val1)
03881 start = end
03882 end += 4
03883 (length,) = _struct_I.unpack(str[start:end])
03884 start = end
03885 end += length
03886 self.motion_plan_request.planner_id = str[start:end]
03887 start = end
03888 end += 4
03889 (length,) = _struct_I.unpack(str[start:end])
03890 start = end
03891 end += length
03892 self.motion_plan_request.group_name = str[start:end]
03893 _x = self
03894 start = end
03895 end += 28
03896 (_x.motion_plan_request.num_planning_attempts, _x.motion_plan_request.allowed_planning_time.secs, _x.motion_plan_request.allowed_planning_time.nsecs, _x.motion_plan_request.expected_path_duration.secs, _x.motion_plan_request.expected_path_duration.nsecs, _x.motion_plan_request.expected_path_dt.secs, _x.motion_plan_request.expected_path_dt.nsecs,) = _struct_7i.unpack(str[start:end])
03897 start = end
03898 end += 4
03899 (length,) = _struct_I.unpack(str[start:end])
03900 self.operations.collision_operations = []
03901 for i in range(0, length):
03902 val1 = arm_navigation_msgs.msg.CollisionOperation()
03903 start = end
03904 end += 4
03905 (length,) = _struct_I.unpack(str[start:end])
03906 start = end
03907 end += length
03908 val1.object1 = str[start:end]
03909 start = end
03910 end += 4
03911 (length,) = _struct_I.unpack(str[start:end])
03912 start = end
03913 end += length
03914 val1.object2 = str[start:end]
03915 _x = val1
03916 start = end
03917 end += 12
03918 (_x.penetration_distance, _x.operation,) = _struct_di.unpack(str[start:end])
03919 self.operations.collision_operations.append(val1)
03920 _x = self
03921 start = end
03922 end += 4
03923 (_x.accept_partial_plans, _x.accept_invalid_goals, _x.disable_ik, _x.disable_collision_monitoring,) = _struct_4B.unpack(str[start:end])
03924 self.accept_partial_plans = bool(self.accept_partial_plans)
03925 self.accept_invalid_goals = bool(self.accept_invalid_goals)
03926 self.disable_ik = bool(self.disable_ik)
03927 self.disable_collision_monitoring = bool(self.disable_collision_monitoring)
03928 return self
03929 except struct.error as e:
03930 raise roslib.message.DeserializationError(e)
03931
03932 _struct_I = roslib.message.struct_I
03933 _struct_7d3I = struct.Struct("<7d3I")
03934 _struct_b = struct.Struct("<b")
03935 _struct_d = struct.Struct("<d")
03936 _struct_f = struct.Struct("<f")
03937 _struct_di = struct.Struct("<di")
03938 _struct_7i = struct.Struct("<7i")
03939 _struct_3f = struct.Struct("<3f")
03940 _struct_i = struct.Struct("<i")
03941 _struct_3I = struct.Struct("<3I")
03942 _struct_4d = struct.Struct("<4d")
03943 _struct_4B = struct.Struct("<4B")
03944 _struct_2I = struct.Struct("<2I")
03945 _struct_3d = struct.Struct("<3d")