$search
00001 """autogenerated by genmsg_py from PreplanHeadScanAction.msg. Do not edit.""" 00002 import roslib.message 00003 import struct 00004 00005 import arm_navigation_msgs.msg 00006 import roslib.rostime 00007 import actionlib_msgs.msg 00008 import geometry_msgs.msg 00009 import head_monitor_msgs.msg 00010 import sensor_msgs.msg 00011 import std_msgs.msg 00012 00013 class PreplanHeadScanAction(roslib.message.Message): 00014 _md5sum = "febbaf17638d0245755e50701e422888" 00015 _type = "head_monitor_msgs/PreplanHeadScanAction" 00016 _has_header = False #flag to mark the presence of a Header object 00017 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00018 00019 PreplanHeadScanActionGoal action_goal 00020 PreplanHeadScanActionResult action_result 00021 PreplanHeadScanActionFeedback action_feedback 00022 00023 ================================================================================ 00024 MSG: head_monitor_msgs/PreplanHeadScanActionGoal 00025 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00026 00027 Header header 00028 actionlib_msgs/GoalID goal_id 00029 PreplanHeadScanGoal goal 00030 00031 ================================================================================ 00032 MSG: std_msgs/Header 00033 # Standard metadata for higher-level stamped data types. 00034 # This is generally used to communicate timestamped data 00035 # in a particular coordinate frame. 00036 # 00037 # sequence ID: consecutively increasing ID 00038 uint32 seq 00039 #Two-integer timestamp that is expressed as: 00040 # * stamp.secs: seconds (stamp_secs) since epoch 00041 # * stamp.nsecs: nanoseconds since stamp_secs 00042 # time-handling sugar is provided by the client library 00043 time stamp 00044 #Frame this data is associated with 00045 # 0: no frame 00046 # 1: global frame 00047 string frame_id 00048 00049 ================================================================================ 00050 MSG: actionlib_msgs/GoalID 00051 # The stamp should store the time at which this goal was requested. 00052 # It is used by an action server when it tries to preempt all 00053 # goals that were requested before a certain time 00054 time stamp 00055 00056 # The id provides a way to associate feedback and 00057 # result message with specific goal requests. The id 00058 # specified must be unique. 00059 string id 00060 00061 00062 ================================================================================ 00063 MSG: head_monitor_msgs/PreplanHeadScanGoal 00064 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00065 # The motion plan request 00066 string group_name 00067 string head_monitor_link 00068 arm_navigation_msgs/MotionPlanRequest motion_plan_request 00069 00070 ================================================================================ 00071 MSG: arm_navigation_msgs/MotionPlanRequest 00072 # This service contains the definition for a request to the motion 00073 # planner and the output it provides 00074 00075 # Parameters for the workspace that the planner should work inside 00076 arm_navigation_msgs/WorkspaceParameters workspace_parameters 00077 00078 # Starting state updates. If certain joints should be considered 00079 # at positions other than the current ones, these positions should 00080 # be set here 00081 arm_navigation_msgs/RobotState start_state 00082 00083 # The goal state for the model to plan for. The goal is achieved 00084 # if all constraints are satisfied 00085 arm_navigation_msgs/Constraints goal_constraints 00086 00087 # No state at any point along the path in the produced motion plan will violate these constraints 00088 arm_navigation_msgs/Constraints path_constraints 00089 00090 # The name of the motion planner to use. If no name is specified, 00091 # a default motion planner will be used 00092 string planner_id 00093 00094 # The name of the group of joints on which this planner is operating 00095 string group_name 00096 00097 # The number of times this plan is to be computed. Shortest solution 00098 # will be reported. 00099 int32 num_planning_attempts 00100 00101 # The maximum amount of time the motion planner is allowed to plan for 00102 duration allowed_planning_time 00103 00104 # 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 00105 duration expected_path_duration 00106 duration expected_path_dt 00107 00108 ================================================================================ 00109 MSG: arm_navigation_msgs/WorkspaceParameters 00110 # This message contains a set of parameters useful in 00111 # setting up the workspace for planning 00112 arm_navigation_msgs/Shape workspace_region_shape 00113 geometry_msgs/PoseStamped workspace_region_pose 00114 00115 00116 ================================================================================ 00117 MSG: arm_navigation_msgs/Shape 00118 byte SPHERE=0 00119 byte BOX=1 00120 byte CYLINDER=2 00121 byte MESH=3 00122 00123 byte type 00124 00125 00126 #### define sphere, box, cylinder #### 00127 # the origin of each shape is considered at the shape's center 00128 00129 # for sphere 00130 # radius := dimensions[0] 00131 00132 # for cylinder 00133 # radius := dimensions[0] 00134 # length := dimensions[1] 00135 # the length is along the Z axis 00136 00137 # for box 00138 # size_x := dimensions[0] 00139 # size_y := dimensions[1] 00140 # size_z := dimensions[2] 00141 float64[] dimensions 00142 00143 00144 #### define mesh #### 00145 00146 # list of triangles; triangle k is defined by tre vertices located 00147 # at indices triangles[3k], triangles[3k+1], triangles[3k+2] 00148 int32[] triangles 00149 geometry_msgs/Point[] vertices 00150 00151 ================================================================================ 00152 MSG: geometry_msgs/Point 00153 # This contains the position of a point in free space 00154 float64 x 00155 float64 y 00156 float64 z 00157 00158 ================================================================================ 00159 MSG: geometry_msgs/PoseStamped 00160 # A Pose with reference coordinate frame and timestamp 00161 Header header 00162 Pose pose 00163 00164 ================================================================================ 00165 MSG: geometry_msgs/Pose 00166 # A representation of pose in free space, composed of postion and orientation. 00167 Point position 00168 Quaternion orientation 00169 00170 ================================================================================ 00171 MSG: geometry_msgs/Quaternion 00172 # This represents an orientation in free space in quaternion form. 00173 00174 float64 x 00175 float64 y 00176 float64 z 00177 float64 w 00178 00179 ================================================================================ 00180 MSG: arm_navigation_msgs/RobotState 00181 # This message contains information about the robot state, i.e. the positions of its joints and links 00182 sensor_msgs/JointState joint_state 00183 arm_navigation_msgs/MultiDOFJointState multi_dof_joint_state 00184 00185 ================================================================================ 00186 MSG: sensor_msgs/JointState 00187 # This is a message that holds data to describe the state of a set of torque controlled joints. 00188 # 00189 # The state of each joint (revolute or prismatic) is defined by: 00190 # * the position of the joint (rad or m), 00191 # * the velocity of the joint (rad/s or m/s) and 00192 # * the effort that is applied in the joint (Nm or N). 00193 # 00194 # Each joint is uniquely identified by its name 00195 # The header specifies the time at which the joint states were recorded. All the joint states 00196 # in one message have to be recorded at the same time. 00197 # 00198 # This message consists of a multiple arrays, one for each part of the joint state. 00199 # The goal is to make each of the fields optional. When e.g. your joints have no 00200 # effort associated with them, you can leave the effort array empty. 00201 # 00202 # All arrays in this message should have the same size, or be empty. 00203 # This is the only way to uniquely associate the joint name with the correct 00204 # states. 00205 00206 00207 Header header 00208 00209 string[] name 00210 float64[] position 00211 float64[] velocity 00212 float64[] effort 00213 00214 ================================================================================ 00215 MSG: arm_navigation_msgs/MultiDOFJointState 00216 #A representation of a multi-dof joint state 00217 time stamp 00218 string[] joint_names 00219 string[] frame_ids 00220 string[] child_frame_ids 00221 geometry_msgs/Pose[] poses 00222 00223 ================================================================================ 00224 MSG: arm_navigation_msgs/Constraints 00225 # This message contains a list of motion planning constraints. 00226 00227 arm_navigation_msgs/JointConstraint[] joint_constraints 00228 arm_navigation_msgs/PositionConstraint[] position_constraints 00229 arm_navigation_msgs/OrientationConstraint[] orientation_constraints 00230 arm_navigation_msgs/VisibilityConstraint[] visibility_constraints 00231 00232 ================================================================================ 00233 MSG: arm_navigation_msgs/JointConstraint 00234 # Constrain the position of a joint to be within a certain bound 00235 string joint_name 00236 00237 # the bound to be achieved is [position - tolerance_below, position + tolerance_above] 00238 float64 position 00239 float64 tolerance_above 00240 float64 tolerance_below 00241 00242 # A weighting factor for this constraint 00243 float64 weight 00244 ================================================================================ 00245 MSG: arm_navigation_msgs/PositionConstraint 00246 # This message contains the definition of a position constraint. 00247 Header header 00248 00249 # The robot link this constraint refers to 00250 string link_name 00251 00252 # The offset (in the link frame) for the target point on the link we are planning for 00253 geometry_msgs/Point target_point_offset 00254 00255 # The nominal/target position for the point we are planning for 00256 geometry_msgs/Point position 00257 00258 # The shape of the bounded region that constrains the position of the end-effector 00259 # This region is always centered at the position defined above 00260 arm_navigation_msgs/Shape constraint_region_shape 00261 00262 # The orientation of the bounded region that constrains the position of the end-effector. 00263 # This allows the specification of non-axis aligned constraints 00264 geometry_msgs/Quaternion constraint_region_orientation 00265 00266 # Constraint weighting factor - a weight for this constraint 00267 float64 weight 00268 00269 ================================================================================ 00270 MSG: arm_navigation_msgs/OrientationConstraint 00271 # This message contains the definition of an orientation constraint. 00272 Header header 00273 00274 # The robot link this constraint refers to 00275 string link_name 00276 00277 # The type of the constraint 00278 int32 type 00279 int32 LINK_FRAME=0 00280 int32 HEADER_FRAME=1 00281 00282 # The desired orientation of the robot link specified as a quaternion 00283 geometry_msgs/Quaternion orientation 00284 00285 # optional RPY error tolerances specified if 00286 float64 absolute_roll_tolerance 00287 float64 absolute_pitch_tolerance 00288 float64 absolute_yaw_tolerance 00289 00290 # Constraint weighting factor - a weight for this constraint 00291 float64 weight 00292 00293 ================================================================================ 00294 MSG: arm_navigation_msgs/VisibilityConstraint 00295 # This message contains the definition of a visibility constraint. 00296 Header header 00297 00298 # The point stamped target that needs to be kept within view of the sensor 00299 geometry_msgs/PointStamped target 00300 00301 # The local pose of the frame in which visibility is to be maintained 00302 # The frame id should represent the robot link to which the sensor is attached 00303 # The visual axis of the sensor is assumed to be along the X axis of this frame 00304 geometry_msgs/PoseStamped sensor_pose 00305 00306 # The deviation (in radians) that will be tolerated 00307 # Constraint error will be measured as the solid angle between the 00308 # X axis of the frame defined above and the vector between the origin 00309 # of the frame defined above and the target location 00310 float64 absolute_tolerance 00311 00312 00313 ================================================================================ 00314 MSG: geometry_msgs/PointStamped 00315 # This represents a Point with reference coordinate frame and timestamp 00316 Header header 00317 Point point 00318 00319 ================================================================================ 00320 MSG: head_monitor_msgs/PreplanHeadScanActionResult 00321 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00322 00323 Header header 00324 actionlib_msgs/GoalStatus status 00325 PreplanHeadScanResult result 00326 00327 ================================================================================ 00328 MSG: actionlib_msgs/GoalStatus 00329 GoalID goal_id 00330 uint8 status 00331 uint8 PENDING = 0 # The goal has yet to be processed by the action server 00332 uint8 ACTIVE = 1 # The goal is currently being processed by the action server 00333 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing 00334 # and has since completed its execution (Terminal State) 00335 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State) 00336 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due 00337 # to some failure (Terminal State) 00338 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed, 00339 # because the goal was unattainable or invalid (Terminal State) 00340 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing 00341 # and has not yet completed execution 00342 uint8 RECALLING = 7 # The goal received a cancel request before it started executing, 00343 # but the action server has not yet confirmed that the goal is canceled 00344 uint8 RECALLED = 8 # The goal received a cancel request before it started executing 00345 # and was successfully cancelled (Terminal State) 00346 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be 00347 # sent over the wire by an action server 00348 00349 #Allow for the user to associate a string with GoalStatus for debugging 00350 string text 00351 00352 00353 ================================================================================ 00354 MSG: head_monitor_msgs/PreplanHeadScanResult 00355 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00356 00357 ================================================================================ 00358 MSG: head_monitor_msgs/PreplanHeadScanActionFeedback 00359 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00360 00361 Header header 00362 actionlib_msgs/GoalStatus status 00363 PreplanHeadScanFeedback feedback 00364 00365 ================================================================================ 00366 MSG: head_monitor_msgs/PreplanHeadScanFeedback 00367 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00368 00369 00370 """ 00371 __slots__ = ['action_goal','action_result','action_feedback'] 00372 _slot_types = ['head_monitor_msgs/PreplanHeadScanActionGoal','head_monitor_msgs/PreplanHeadScanActionResult','head_monitor_msgs/PreplanHeadScanActionFeedback'] 00373 00374 def __init__(self, *args, **kwds): 00375 """ 00376 Constructor. Any message fields that are implicitly/explicitly 00377 set to None will be assigned a default value. The recommend 00378 use is keyword arguments as this is more robust to future message 00379 changes. You cannot mix in-order arguments and keyword arguments. 00380 00381 The available fields are: 00382 action_goal,action_result,action_feedback 00383 00384 @param args: complete set of field values, in .msg order 00385 @param kwds: use keyword arguments corresponding to message field names 00386 to set specific fields. 00387 """ 00388 if args or kwds: 00389 super(PreplanHeadScanAction, self).__init__(*args, **kwds) 00390 #message fields cannot be None, assign default values for those that are 00391 if self.action_goal is None: 00392 self.action_goal = head_monitor_msgs.msg.PreplanHeadScanActionGoal() 00393 if self.action_result is None: 00394 self.action_result = head_monitor_msgs.msg.PreplanHeadScanActionResult() 00395 if self.action_feedback is None: 00396 self.action_feedback = head_monitor_msgs.msg.PreplanHeadScanActionFeedback() 00397 else: 00398 self.action_goal = head_monitor_msgs.msg.PreplanHeadScanActionGoal() 00399 self.action_result = head_monitor_msgs.msg.PreplanHeadScanActionResult() 00400 self.action_feedback = head_monitor_msgs.msg.PreplanHeadScanActionFeedback() 00401 00402 def _get_types(self): 00403 """ 00404 internal API method 00405 """ 00406 return self._slot_types 00407 00408 def serialize(self, buff): 00409 """ 00410 serialize message into buffer 00411 @param buff: buffer 00412 @type buff: StringIO 00413 """ 00414 try: 00415 _x = self 00416 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 00417 _x = self.action_goal.header.frame_id 00418 length = len(_x) 00419 buff.write(struct.pack('<I%ss'%length, length, _x)) 00420 _x = self 00421 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs)) 00422 _x = self.action_goal.goal_id.id 00423 length = len(_x) 00424 buff.write(struct.pack('<I%ss'%length, length, _x)) 00425 _x = self.action_goal.goal.group_name 00426 length = len(_x) 00427 buff.write(struct.pack('<I%ss'%length, length, _x)) 00428 _x = self.action_goal.goal.head_monitor_link 00429 length = len(_x) 00430 buff.write(struct.pack('<I%ss'%length, length, _x)) 00431 buff.write(_struct_b.pack(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.type)) 00432 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions) 00433 buff.write(_struct_I.pack(length)) 00434 pattern = '<%sd'%length 00435 buff.write(struct.pack(pattern, *self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions)) 00436 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles) 00437 buff.write(_struct_I.pack(length)) 00438 pattern = '<%si'%length 00439 buff.write(struct.pack(pattern, *self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles)) 00440 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices) 00441 buff.write(_struct_I.pack(length)) 00442 for val1 in self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices: 00443 _x = val1 00444 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00445 _x = self 00446 buff.write(_struct_3I.pack(_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs)) 00447 _x = self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id 00448 length = len(_x) 00449 buff.write(struct.pack('<I%ss'%length, length, _x)) 00450 _x = self 00451 buff.write(_struct_7d3I.pack(_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.seq, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.nsecs)) 00452 _x = self.action_goal.goal.motion_plan_request.start_state.joint_state.header.frame_id 00453 length = len(_x) 00454 buff.write(struct.pack('<I%ss'%length, length, _x)) 00455 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.name) 00456 buff.write(_struct_I.pack(length)) 00457 for val1 in self.action_goal.goal.motion_plan_request.start_state.joint_state.name: 00458 length = len(val1) 00459 buff.write(struct.pack('<I%ss'%length, length, val1)) 00460 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.position) 00461 buff.write(_struct_I.pack(length)) 00462 pattern = '<%sd'%length 00463 buff.write(struct.pack(pattern, *self.action_goal.goal.motion_plan_request.start_state.joint_state.position)) 00464 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity) 00465 buff.write(_struct_I.pack(length)) 00466 pattern = '<%sd'%length 00467 buff.write(struct.pack(pattern, *self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity)) 00468 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.effort) 00469 buff.write(_struct_I.pack(length)) 00470 pattern = '<%sd'%length 00471 buff.write(struct.pack(pattern, *self.action_goal.goal.motion_plan_request.start_state.joint_state.effort)) 00472 _x = self 00473 buff.write(_struct_2I.pack(_x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs)) 00474 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names) 00475 buff.write(_struct_I.pack(length)) 00476 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names: 00477 length = len(val1) 00478 buff.write(struct.pack('<I%ss'%length, length, val1)) 00479 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids) 00480 buff.write(_struct_I.pack(length)) 00481 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids: 00482 length = len(val1) 00483 buff.write(struct.pack('<I%ss'%length, length, val1)) 00484 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids) 00485 buff.write(_struct_I.pack(length)) 00486 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids: 00487 length = len(val1) 00488 buff.write(struct.pack('<I%ss'%length, length, val1)) 00489 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses) 00490 buff.write(_struct_I.pack(length)) 00491 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses: 00492 _v1 = val1.position 00493 _x = _v1 00494 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00495 _v2 = val1.orientation 00496 _x = _v2 00497 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00498 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints) 00499 buff.write(_struct_I.pack(length)) 00500 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints: 00501 _x = val1.joint_name 00502 length = len(_x) 00503 buff.write(struct.pack('<I%ss'%length, length, _x)) 00504 _x = val1 00505 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight)) 00506 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints) 00507 buff.write(_struct_I.pack(length)) 00508 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints: 00509 _v3 = val1.header 00510 buff.write(_struct_I.pack(_v3.seq)) 00511 _v4 = _v3.stamp 00512 _x = _v4 00513 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00514 _x = _v3.frame_id 00515 length = len(_x) 00516 buff.write(struct.pack('<I%ss'%length, length, _x)) 00517 _x = val1.link_name 00518 length = len(_x) 00519 buff.write(struct.pack('<I%ss'%length, length, _x)) 00520 _v5 = val1.target_point_offset 00521 _x = _v5 00522 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00523 _v6 = val1.position 00524 _x = _v6 00525 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00526 _v7 = val1.constraint_region_shape 00527 buff.write(_struct_b.pack(_v7.type)) 00528 length = len(_v7.dimensions) 00529 buff.write(_struct_I.pack(length)) 00530 pattern = '<%sd'%length 00531 buff.write(struct.pack(pattern, *_v7.dimensions)) 00532 length = len(_v7.triangles) 00533 buff.write(_struct_I.pack(length)) 00534 pattern = '<%si'%length 00535 buff.write(struct.pack(pattern, *_v7.triangles)) 00536 length = len(_v7.vertices) 00537 buff.write(_struct_I.pack(length)) 00538 for val3 in _v7.vertices: 00539 _x = val3 00540 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00541 _v8 = val1.constraint_region_orientation 00542 _x = _v8 00543 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00544 buff.write(_struct_d.pack(val1.weight)) 00545 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints) 00546 buff.write(_struct_I.pack(length)) 00547 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints: 00548 _v9 = val1.header 00549 buff.write(_struct_I.pack(_v9.seq)) 00550 _v10 = _v9.stamp 00551 _x = _v10 00552 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00553 _x = _v9.frame_id 00554 length = len(_x) 00555 buff.write(struct.pack('<I%ss'%length, length, _x)) 00556 _x = val1.link_name 00557 length = len(_x) 00558 buff.write(struct.pack('<I%ss'%length, length, _x)) 00559 buff.write(_struct_i.pack(val1.type)) 00560 _v11 = val1.orientation 00561 _x = _v11 00562 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00563 _x = val1 00564 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight)) 00565 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints) 00566 buff.write(_struct_I.pack(length)) 00567 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints: 00568 _v12 = val1.header 00569 buff.write(_struct_I.pack(_v12.seq)) 00570 _v13 = _v12.stamp 00571 _x = _v13 00572 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00573 _x = _v12.frame_id 00574 length = len(_x) 00575 buff.write(struct.pack('<I%ss'%length, length, _x)) 00576 _v14 = val1.target 00577 _v15 = _v14.header 00578 buff.write(_struct_I.pack(_v15.seq)) 00579 _v16 = _v15.stamp 00580 _x = _v16 00581 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00582 _x = _v15.frame_id 00583 length = len(_x) 00584 buff.write(struct.pack('<I%ss'%length, length, _x)) 00585 _v17 = _v14.point 00586 _x = _v17 00587 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00588 _v18 = val1.sensor_pose 00589 _v19 = _v18.header 00590 buff.write(_struct_I.pack(_v19.seq)) 00591 _v20 = _v19.stamp 00592 _x = _v20 00593 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00594 _x = _v19.frame_id 00595 length = len(_x) 00596 buff.write(struct.pack('<I%ss'%length, length, _x)) 00597 _v21 = _v18.pose 00598 _v22 = _v21.position 00599 _x = _v22 00600 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00601 _v23 = _v21.orientation 00602 _x = _v23 00603 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00604 buff.write(_struct_d.pack(val1.absolute_tolerance)) 00605 length = len(self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints) 00606 buff.write(_struct_I.pack(length)) 00607 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints: 00608 _x = val1.joint_name 00609 length = len(_x) 00610 buff.write(struct.pack('<I%ss'%length, length, _x)) 00611 _x = val1 00612 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight)) 00613 length = len(self.action_goal.goal.motion_plan_request.path_constraints.position_constraints) 00614 buff.write(_struct_I.pack(length)) 00615 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.position_constraints: 00616 _v24 = val1.header 00617 buff.write(_struct_I.pack(_v24.seq)) 00618 _v25 = _v24.stamp 00619 _x = _v25 00620 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00621 _x = _v24.frame_id 00622 length = len(_x) 00623 buff.write(struct.pack('<I%ss'%length, length, _x)) 00624 _x = val1.link_name 00625 length = len(_x) 00626 buff.write(struct.pack('<I%ss'%length, length, _x)) 00627 _v26 = val1.target_point_offset 00628 _x = _v26 00629 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00630 _v27 = val1.position 00631 _x = _v27 00632 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00633 _v28 = val1.constraint_region_shape 00634 buff.write(_struct_b.pack(_v28.type)) 00635 length = len(_v28.dimensions) 00636 buff.write(_struct_I.pack(length)) 00637 pattern = '<%sd'%length 00638 buff.write(struct.pack(pattern, *_v28.dimensions)) 00639 length = len(_v28.triangles) 00640 buff.write(_struct_I.pack(length)) 00641 pattern = '<%si'%length 00642 buff.write(struct.pack(pattern, *_v28.triangles)) 00643 length = len(_v28.vertices) 00644 buff.write(_struct_I.pack(length)) 00645 for val3 in _v28.vertices: 00646 _x = val3 00647 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00648 _v29 = val1.constraint_region_orientation 00649 _x = _v29 00650 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00651 buff.write(_struct_d.pack(val1.weight)) 00652 length = len(self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints) 00653 buff.write(_struct_I.pack(length)) 00654 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints: 00655 _v30 = val1.header 00656 buff.write(_struct_I.pack(_v30.seq)) 00657 _v31 = _v30.stamp 00658 _x = _v31 00659 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00660 _x = _v30.frame_id 00661 length = len(_x) 00662 buff.write(struct.pack('<I%ss'%length, length, _x)) 00663 _x = val1.link_name 00664 length = len(_x) 00665 buff.write(struct.pack('<I%ss'%length, length, _x)) 00666 buff.write(_struct_i.pack(val1.type)) 00667 _v32 = val1.orientation 00668 _x = _v32 00669 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00670 _x = val1 00671 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight)) 00672 length = len(self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints) 00673 buff.write(_struct_I.pack(length)) 00674 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints: 00675 _v33 = val1.header 00676 buff.write(_struct_I.pack(_v33.seq)) 00677 _v34 = _v33.stamp 00678 _x = _v34 00679 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00680 _x = _v33.frame_id 00681 length = len(_x) 00682 buff.write(struct.pack('<I%ss'%length, length, _x)) 00683 _v35 = val1.target 00684 _v36 = _v35.header 00685 buff.write(_struct_I.pack(_v36.seq)) 00686 _v37 = _v36.stamp 00687 _x = _v37 00688 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00689 _x = _v36.frame_id 00690 length = len(_x) 00691 buff.write(struct.pack('<I%ss'%length, length, _x)) 00692 _v38 = _v35.point 00693 _x = _v38 00694 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00695 _v39 = val1.sensor_pose 00696 _v40 = _v39.header 00697 buff.write(_struct_I.pack(_v40.seq)) 00698 _v41 = _v40.stamp 00699 _x = _v41 00700 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00701 _x = _v40.frame_id 00702 length = len(_x) 00703 buff.write(struct.pack('<I%ss'%length, length, _x)) 00704 _v42 = _v39.pose 00705 _v43 = _v42.position 00706 _x = _v43 00707 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00708 _v44 = _v42.orientation 00709 _x = _v44 00710 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00711 buff.write(_struct_d.pack(val1.absolute_tolerance)) 00712 _x = self.action_goal.goal.motion_plan_request.planner_id 00713 length = len(_x) 00714 buff.write(struct.pack('<I%ss'%length, length, _x)) 00715 _x = self.action_goal.goal.motion_plan_request.group_name 00716 length = len(_x) 00717 buff.write(struct.pack('<I%ss'%length, length, _x)) 00718 _x = self 00719 buff.write(_struct_7i3I.pack(_x.action_goal.goal.motion_plan_request.num_planning_attempts, _x.action_goal.goal.motion_plan_request.allowed_planning_time.secs, _x.action_goal.goal.motion_plan_request.allowed_planning_time.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_duration.secs, _x.action_goal.goal.motion_plan_request.expected_path_duration.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_dt.secs, _x.action_goal.goal.motion_plan_request.expected_path_dt.nsecs, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 00720 _x = self.action_result.header.frame_id 00721 length = len(_x) 00722 buff.write(struct.pack('<I%ss'%length, length, _x)) 00723 _x = self 00724 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 00725 _x = self.action_result.status.goal_id.id 00726 length = len(_x) 00727 buff.write(struct.pack('<I%ss'%length, length, _x)) 00728 buff.write(_struct_B.pack(self.action_result.status.status)) 00729 _x = self.action_result.status.text 00730 length = len(_x) 00731 buff.write(struct.pack('<I%ss'%length, length, _x)) 00732 _x = self 00733 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 00734 _x = self.action_feedback.header.frame_id 00735 length = len(_x) 00736 buff.write(struct.pack('<I%ss'%length, length, _x)) 00737 _x = self 00738 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 00739 _x = self.action_feedback.status.goal_id.id 00740 length = len(_x) 00741 buff.write(struct.pack('<I%ss'%length, length, _x)) 00742 buff.write(_struct_B.pack(self.action_feedback.status.status)) 00743 _x = self.action_feedback.status.text 00744 length = len(_x) 00745 buff.write(struct.pack('<I%ss'%length, length, _x)) 00746 except struct.error as se: self._check_types(se) 00747 except TypeError as te: self._check_types(te) 00748 00749 def deserialize(self, str): 00750 """ 00751 unpack serialized message in str into this message instance 00752 @param str: byte array of serialized message 00753 @type str: str 00754 """ 00755 try: 00756 if self.action_goal is None: 00757 self.action_goal = head_monitor_msgs.msg.PreplanHeadScanActionGoal() 00758 if self.action_result is None: 00759 self.action_result = head_monitor_msgs.msg.PreplanHeadScanActionResult() 00760 if self.action_feedback is None: 00761 self.action_feedback = head_monitor_msgs.msg.PreplanHeadScanActionFeedback() 00762 end = 0 00763 _x = self 00764 start = end 00765 end += 12 00766 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00767 start = end 00768 end += 4 00769 (length,) = _struct_I.unpack(str[start:end]) 00770 start = end 00771 end += length 00772 self.action_goal.header.frame_id = str[start:end] 00773 _x = self 00774 start = end 00775 end += 8 00776 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00777 start = end 00778 end += 4 00779 (length,) = _struct_I.unpack(str[start:end]) 00780 start = end 00781 end += length 00782 self.action_goal.goal_id.id = str[start:end] 00783 start = end 00784 end += 4 00785 (length,) = _struct_I.unpack(str[start:end]) 00786 start = end 00787 end += length 00788 self.action_goal.goal.group_name = str[start:end] 00789 start = end 00790 end += 4 00791 (length,) = _struct_I.unpack(str[start:end]) 00792 start = end 00793 end += length 00794 self.action_goal.goal.head_monitor_link = str[start:end] 00795 start = end 00796 end += 1 00797 (self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.type,) = _struct_b.unpack(str[start:end]) 00798 start = end 00799 end += 4 00800 (length,) = _struct_I.unpack(str[start:end]) 00801 pattern = '<%sd'%length 00802 start = end 00803 end += struct.calcsize(pattern) 00804 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions = struct.unpack(pattern, str[start:end]) 00805 start = end 00806 end += 4 00807 (length,) = _struct_I.unpack(str[start:end]) 00808 pattern = '<%si'%length 00809 start = end 00810 end += struct.calcsize(pattern) 00811 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles = struct.unpack(pattern, str[start:end]) 00812 start = end 00813 end += 4 00814 (length,) = _struct_I.unpack(str[start:end]) 00815 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices = [] 00816 for i in range(0, length): 00817 val1 = geometry_msgs.msg.Point() 00818 _x = val1 00819 start = end 00820 end += 24 00821 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00822 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices.append(val1) 00823 _x = self 00824 start = end 00825 end += 12 00826 (_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 00827 start = end 00828 end += 4 00829 (length,) = _struct_I.unpack(str[start:end]) 00830 start = end 00831 end += length 00832 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id = str[start:end] 00833 _x = self 00834 start = end 00835 end += 68 00836 (_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.seq, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end]) 00837 start = end 00838 end += 4 00839 (length,) = _struct_I.unpack(str[start:end]) 00840 start = end 00841 end += length 00842 self.action_goal.goal.motion_plan_request.start_state.joint_state.header.frame_id = str[start:end] 00843 start = end 00844 end += 4 00845 (length,) = _struct_I.unpack(str[start:end]) 00846 self.action_goal.goal.motion_plan_request.start_state.joint_state.name = [] 00847 for i in range(0, length): 00848 start = end 00849 end += 4 00850 (length,) = _struct_I.unpack(str[start:end]) 00851 start = end 00852 end += length 00853 val1 = str[start:end] 00854 self.action_goal.goal.motion_plan_request.start_state.joint_state.name.append(val1) 00855 start = end 00856 end += 4 00857 (length,) = _struct_I.unpack(str[start:end]) 00858 pattern = '<%sd'%length 00859 start = end 00860 end += struct.calcsize(pattern) 00861 self.action_goal.goal.motion_plan_request.start_state.joint_state.position = struct.unpack(pattern, str[start:end]) 00862 start = end 00863 end += 4 00864 (length,) = _struct_I.unpack(str[start:end]) 00865 pattern = '<%sd'%length 00866 start = end 00867 end += struct.calcsize(pattern) 00868 self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity = struct.unpack(pattern, str[start:end]) 00869 start = end 00870 end += 4 00871 (length,) = _struct_I.unpack(str[start:end]) 00872 pattern = '<%sd'%length 00873 start = end 00874 end += struct.calcsize(pattern) 00875 self.action_goal.goal.motion_plan_request.start_state.joint_state.effort = struct.unpack(pattern, str[start:end]) 00876 _x = self 00877 start = end 00878 end += 8 00879 (_x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 00880 start = end 00881 end += 4 00882 (length,) = _struct_I.unpack(str[start:end]) 00883 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names = [] 00884 for i in range(0, length): 00885 start = end 00886 end += 4 00887 (length,) = _struct_I.unpack(str[start:end]) 00888 start = end 00889 end += length 00890 val1 = str[start:end] 00891 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names.append(val1) 00892 start = end 00893 end += 4 00894 (length,) = _struct_I.unpack(str[start:end]) 00895 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids = [] 00896 for i in range(0, length): 00897 start = end 00898 end += 4 00899 (length,) = _struct_I.unpack(str[start:end]) 00900 start = end 00901 end += length 00902 val1 = str[start:end] 00903 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids.append(val1) 00904 start = end 00905 end += 4 00906 (length,) = _struct_I.unpack(str[start:end]) 00907 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids = [] 00908 for i in range(0, length): 00909 start = end 00910 end += 4 00911 (length,) = _struct_I.unpack(str[start:end]) 00912 start = end 00913 end += length 00914 val1 = str[start:end] 00915 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids.append(val1) 00916 start = end 00917 end += 4 00918 (length,) = _struct_I.unpack(str[start:end]) 00919 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses = [] 00920 for i in range(0, length): 00921 val1 = geometry_msgs.msg.Pose() 00922 _v45 = val1.position 00923 _x = _v45 00924 start = end 00925 end += 24 00926 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00927 _v46 = val1.orientation 00928 _x = _v46 00929 start = end 00930 end += 32 00931 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 00932 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses.append(val1) 00933 start = end 00934 end += 4 00935 (length,) = _struct_I.unpack(str[start:end]) 00936 self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints = [] 00937 for i in range(0, length): 00938 val1 = arm_navigation_msgs.msg.JointConstraint() 00939 start = end 00940 end += 4 00941 (length,) = _struct_I.unpack(str[start:end]) 00942 start = end 00943 end += length 00944 val1.joint_name = str[start:end] 00945 _x = val1 00946 start = end 00947 end += 32 00948 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end]) 00949 self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints.append(val1) 00950 start = end 00951 end += 4 00952 (length,) = _struct_I.unpack(str[start:end]) 00953 self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints = [] 00954 for i in range(0, length): 00955 val1 = arm_navigation_msgs.msg.PositionConstraint() 00956 _v47 = val1.header 00957 start = end 00958 end += 4 00959 (_v47.seq,) = _struct_I.unpack(str[start:end]) 00960 _v48 = _v47.stamp 00961 _x = _v48 00962 start = end 00963 end += 8 00964 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 00965 start = end 00966 end += 4 00967 (length,) = _struct_I.unpack(str[start:end]) 00968 start = end 00969 end += length 00970 _v47.frame_id = str[start:end] 00971 start = end 00972 end += 4 00973 (length,) = _struct_I.unpack(str[start:end]) 00974 start = end 00975 end += length 00976 val1.link_name = str[start:end] 00977 _v49 = val1.target_point_offset 00978 _x = _v49 00979 start = end 00980 end += 24 00981 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00982 _v50 = val1.position 00983 _x = _v50 00984 start = end 00985 end += 24 00986 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 00987 _v51 = val1.constraint_region_shape 00988 start = end 00989 end += 1 00990 (_v51.type,) = _struct_b.unpack(str[start:end]) 00991 start = end 00992 end += 4 00993 (length,) = _struct_I.unpack(str[start:end]) 00994 pattern = '<%sd'%length 00995 start = end 00996 end += struct.calcsize(pattern) 00997 _v51.dimensions = struct.unpack(pattern, str[start:end]) 00998 start = end 00999 end += 4 01000 (length,) = _struct_I.unpack(str[start:end]) 01001 pattern = '<%si'%length 01002 start = end 01003 end += struct.calcsize(pattern) 01004 _v51.triangles = struct.unpack(pattern, str[start:end]) 01005 start = end 01006 end += 4 01007 (length,) = _struct_I.unpack(str[start:end]) 01008 _v51.vertices = [] 01009 for i in range(0, length): 01010 val3 = geometry_msgs.msg.Point() 01011 _x = val3 01012 start = end 01013 end += 24 01014 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01015 _v51.vertices.append(val3) 01016 _v52 = val1.constraint_region_orientation 01017 _x = _v52 01018 start = end 01019 end += 32 01020 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01021 start = end 01022 end += 8 01023 (val1.weight,) = _struct_d.unpack(str[start:end]) 01024 self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints.append(val1) 01025 start = end 01026 end += 4 01027 (length,) = _struct_I.unpack(str[start:end]) 01028 self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints = [] 01029 for i in range(0, length): 01030 val1 = arm_navigation_msgs.msg.OrientationConstraint() 01031 _v53 = val1.header 01032 start = end 01033 end += 4 01034 (_v53.seq,) = _struct_I.unpack(str[start:end]) 01035 _v54 = _v53.stamp 01036 _x = _v54 01037 start = end 01038 end += 8 01039 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01040 start = end 01041 end += 4 01042 (length,) = _struct_I.unpack(str[start:end]) 01043 start = end 01044 end += length 01045 _v53.frame_id = str[start:end] 01046 start = end 01047 end += 4 01048 (length,) = _struct_I.unpack(str[start:end]) 01049 start = end 01050 end += length 01051 val1.link_name = str[start:end] 01052 start = end 01053 end += 4 01054 (val1.type,) = _struct_i.unpack(str[start:end]) 01055 _v55 = val1.orientation 01056 _x = _v55 01057 start = end 01058 end += 32 01059 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01060 _x = val1 01061 start = end 01062 end += 32 01063 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end]) 01064 self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints.append(val1) 01065 start = end 01066 end += 4 01067 (length,) = _struct_I.unpack(str[start:end]) 01068 self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints = [] 01069 for i in range(0, length): 01070 val1 = arm_navigation_msgs.msg.VisibilityConstraint() 01071 _v56 = val1.header 01072 start = end 01073 end += 4 01074 (_v56.seq,) = _struct_I.unpack(str[start:end]) 01075 _v57 = _v56.stamp 01076 _x = _v57 01077 start = end 01078 end += 8 01079 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01080 start = end 01081 end += 4 01082 (length,) = _struct_I.unpack(str[start:end]) 01083 start = end 01084 end += length 01085 _v56.frame_id = str[start:end] 01086 _v58 = val1.target 01087 _v59 = _v58.header 01088 start = end 01089 end += 4 01090 (_v59.seq,) = _struct_I.unpack(str[start:end]) 01091 _v60 = _v59.stamp 01092 _x = _v60 01093 start = end 01094 end += 8 01095 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01096 start = end 01097 end += 4 01098 (length,) = _struct_I.unpack(str[start:end]) 01099 start = end 01100 end += length 01101 _v59.frame_id = str[start:end] 01102 _v61 = _v58.point 01103 _x = _v61 01104 start = end 01105 end += 24 01106 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01107 _v62 = val1.sensor_pose 01108 _v63 = _v62.header 01109 start = end 01110 end += 4 01111 (_v63.seq,) = _struct_I.unpack(str[start:end]) 01112 _v64 = _v63.stamp 01113 _x = _v64 01114 start = end 01115 end += 8 01116 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01117 start = end 01118 end += 4 01119 (length,) = _struct_I.unpack(str[start:end]) 01120 start = end 01121 end += length 01122 _v63.frame_id = str[start:end] 01123 _v65 = _v62.pose 01124 _v66 = _v65.position 01125 _x = _v66 01126 start = end 01127 end += 24 01128 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01129 _v67 = _v65.orientation 01130 _x = _v67 01131 start = end 01132 end += 32 01133 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01134 start = end 01135 end += 8 01136 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end]) 01137 self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints.append(val1) 01138 start = end 01139 end += 4 01140 (length,) = _struct_I.unpack(str[start:end]) 01141 self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints = [] 01142 for i in range(0, length): 01143 val1 = arm_navigation_msgs.msg.JointConstraint() 01144 start = end 01145 end += 4 01146 (length,) = _struct_I.unpack(str[start:end]) 01147 start = end 01148 end += length 01149 val1.joint_name = str[start:end] 01150 _x = val1 01151 start = end 01152 end += 32 01153 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end]) 01154 self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints.append(val1) 01155 start = end 01156 end += 4 01157 (length,) = _struct_I.unpack(str[start:end]) 01158 self.action_goal.goal.motion_plan_request.path_constraints.position_constraints = [] 01159 for i in range(0, length): 01160 val1 = arm_navigation_msgs.msg.PositionConstraint() 01161 _v68 = val1.header 01162 start = end 01163 end += 4 01164 (_v68.seq,) = _struct_I.unpack(str[start:end]) 01165 _v69 = _v68.stamp 01166 _x = _v69 01167 start = end 01168 end += 8 01169 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01170 start = end 01171 end += 4 01172 (length,) = _struct_I.unpack(str[start:end]) 01173 start = end 01174 end += length 01175 _v68.frame_id = str[start:end] 01176 start = end 01177 end += 4 01178 (length,) = _struct_I.unpack(str[start:end]) 01179 start = end 01180 end += length 01181 val1.link_name = str[start:end] 01182 _v70 = val1.target_point_offset 01183 _x = _v70 01184 start = end 01185 end += 24 01186 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01187 _v71 = val1.position 01188 _x = _v71 01189 start = end 01190 end += 24 01191 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01192 _v72 = val1.constraint_region_shape 01193 start = end 01194 end += 1 01195 (_v72.type,) = _struct_b.unpack(str[start:end]) 01196 start = end 01197 end += 4 01198 (length,) = _struct_I.unpack(str[start:end]) 01199 pattern = '<%sd'%length 01200 start = end 01201 end += struct.calcsize(pattern) 01202 _v72.dimensions = struct.unpack(pattern, str[start:end]) 01203 start = end 01204 end += 4 01205 (length,) = _struct_I.unpack(str[start:end]) 01206 pattern = '<%si'%length 01207 start = end 01208 end += struct.calcsize(pattern) 01209 _v72.triangles = struct.unpack(pattern, str[start:end]) 01210 start = end 01211 end += 4 01212 (length,) = _struct_I.unpack(str[start:end]) 01213 _v72.vertices = [] 01214 for i in range(0, length): 01215 val3 = geometry_msgs.msg.Point() 01216 _x = val3 01217 start = end 01218 end += 24 01219 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01220 _v72.vertices.append(val3) 01221 _v73 = val1.constraint_region_orientation 01222 _x = _v73 01223 start = end 01224 end += 32 01225 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01226 start = end 01227 end += 8 01228 (val1.weight,) = _struct_d.unpack(str[start:end]) 01229 self.action_goal.goal.motion_plan_request.path_constraints.position_constraints.append(val1) 01230 start = end 01231 end += 4 01232 (length,) = _struct_I.unpack(str[start:end]) 01233 self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints = [] 01234 for i in range(0, length): 01235 val1 = arm_navigation_msgs.msg.OrientationConstraint() 01236 _v74 = val1.header 01237 start = end 01238 end += 4 01239 (_v74.seq,) = _struct_I.unpack(str[start:end]) 01240 _v75 = _v74.stamp 01241 _x = _v75 01242 start = end 01243 end += 8 01244 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01245 start = end 01246 end += 4 01247 (length,) = _struct_I.unpack(str[start:end]) 01248 start = end 01249 end += length 01250 _v74.frame_id = str[start:end] 01251 start = end 01252 end += 4 01253 (length,) = _struct_I.unpack(str[start:end]) 01254 start = end 01255 end += length 01256 val1.link_name = str[start:end] 01257 start = end 01258 end += 4 01259 (val1.type,) = _struct_i.unpack(str[start:end]) 01260 _v76 = val1.orientation 01261 _x = _v76 01262 start = end 01263 end += 32 01264 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01265 _x = val1 01266 start = end 01267 end += 32 01268 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end]) 01269 self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints.append(val1) 01270 start = end 01271 end += 4 01272 (length,) = _struct_I.unpack(str[start:end]) 01273 self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints = [] 01274 for i in range(0, length): 01275 val1 = arm_navigation_msgs.msg.VisibilityConstraint() 01276 _v77 = val1.header 01277 start = end 01278 end += 4 01279 (_v77.seq,) = _struct_I.unpack(str[start:end]) 01280 _v78 = _v77.stamp 01281 _x = _v78 01282 start = end 01283 end += 8 01284 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01285 start = end 01286 end += 4 01287 (length,) = _struct_I.unpack(str[start:end]) 01288 start = end 01289 end += length 01290 _v77.frame_id = str[start:end] 01291 _v79 = val1.target 01292 _v80 = _v79.header 01293 start = end 01294 end += 4 01295 (_v80.seq,) = _struct_I.unpack(str[start:end]) 01296 _v81 = _v80.stamp 01297 _x = _v81 01298 start = end 01299 end += 8 01300 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01301 start = end 01302 end += 4 01303 (length,) = _struct_I.unpack(str[start:end]) 01304 start = end 01305 end += length 01306 _v80.frame_id = str[start:end] 01307 _v82 = _v79.point 01308 _x = _v82 01309 start = end 01310 end += 24 01311 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01312 _v83 = val1.sensor_pose 01313 _v84 = _v83.header 01314 start = end 01315 end += 4 01316 (_v84.seq,) = _struct_I.unpack(str[start:end]) 01317 _v85 = _v84.stamp 01318 _x = _v85 01319 start = end 01320 end += 8 01321 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01322 start = end 01323 end += 4 01324 (length,) = _struct_I.unpack(str[start:end]) 01325 start = end 01326 end += length 01327 _v84.frame_id = str[start:end] 01328 _v86 = _v83.pose 01329 _v87 = _v86.position 01330 _x = _v87 01331 start = end 01332 end += 24 01333 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01334 _v88 = _v86.orientation 01335 _x = _v88 01336 start = end 01337 end += 32 01338 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01339 start = end 01340 end += 8 01341 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end]) 01342 self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints.append(val1) 01343 start = end 01344 end += 4 01345 (length,) = _struct_I.unpack(str[start:end]) 01346 start = end 01347 end += length 01348 self.action_goal.goal.motion_plan_request.planner_id = str[start:end] 01349 start = end 01350 end += 4 01351 (length,) = _struct_I.unpack(str[start:end]) 01352 start = end 01353 end += length 01354 self.action_goal.goal.motion_plan_request.group_name = str[start:end] 01355 _x = self 01356 start = end 01357 end += 40 01358 (_x.action_goal.goal.motion_plan_request.num_planning_attempts, _x.action_goal.goal.motion_plan_request.allowed_planning_time.secs, _x.action_goal.goal.motion_plan_request.allowed_planning_time.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_duration.secs, _x.action_goal.goal.motion_plan_request.expected_path_duration.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_dt.secs, _x.action_goal.goal.motion_plan_request.expected_path_dt.nsecs, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_7i3I.unpack(str[start:end]) 01359 start = end 01360 end += 4 01361 (length,) = _struct_I.unpack(str[start:end]) 01362 start = end 01363 end += length 01364 self.action_result.header.frame_id = str[start:end] 01365 _x = self 01366 start = end 01367 end += 8 01368 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 01369 start = end 01370 end += 4 01371 (length,) = _struct_I.unpack(str[start:end]) 01372 start = end 01373 end += length 01374 self.action_result.status.goal_id.id = str[start:end] 01375 start = end 01376 end += 1 01377 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 01378 start = end 01379 end += 4 01380 (length,) = _struct_I.unpack(str[start:end]) 01381 start = end 01382 end += length 01383 self.action_result.status.text = str[start:end] 01384 _x = self 01385 start = end 01386 end += 12 01387 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01388 start = end 01389 end += 4 01390 (length,) = _struct_I.unpack(str[start:end]) 01391 start = end 01392 end += length 01393 self.action_feedback.header.frame_id = str[start:end] 01394 _x = self 01395 start = end 01396 end += 8 01397 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 01398 start = end 01399 end += 4 01400 (length,) = _struct_I.unpack(str[start:end]) 01401 start = end 01402 end += length 01403 self.action_feedback.status.goal_id.id = str[start:end] 01404 start = end 01405 end += 1 01406 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 01407 start = end 01408 end += 4 01409 (length,) = _struct_I.unpack(str[start:end]) 01410 start = end 01411 end += length 01412 self.action_feedback.status.text = str[start:end] 01413 return self 01414 except struct.error as e: 01415 raise roslib.message.DeserializationError(e) #most likely buffer underfill 01416 01417 01418 def serialize_numpy(self, buff, numpy): 01419 """ 01420 serialize message with numpy array types into buffer 01421 @param buff: buffer 01422 @type buff: StringIO 01423 @param numpy: numpy python module 01424 @type numpy module 01425 """ 01426 try: 01427 _x = self 01428 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 01429 _x = self.action_goal.header.frame_id 01430 length = len(_x) 01431 buff.write(struct.pack('<I%ss'%length, length, _x)) 01432 _x = self 01433 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs)) 01434 _x = self.action_goal.goal_id.id 01435 length = len(_x) 01436 buff.write(struct.pack('<I%ss'%length, length, _x)) 01437 _x = self.action_goal.goal.group_name 01438 length = len(_x) 01439 buff.write(struct.pack('<I%ss'%length, length, _x)) 01440 _x = self.action_goal.goal.head_monitor_link 01441 length = len(_x) 01442 buff.write(struct.pack('<I%ss'%length, length, _x)) 01443 buff.write(_struct_b.pack(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.type)) 01444 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions) 01445 buff.write(_struct_I.pack(length)) 01446 pattern = '<%sd'%length 01447 buff.write(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions.tostring()) 01448 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles) 01449 buff.write(_struct_I.pack(length)) 01450 pattern = '<%si'%length 01451 buff.write(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles.tostring()) 01452 length = len(self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices) 01453 buff.write(_struct_I.pack(length)) 01454 for val1 in self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices: 01455 _x = val1 01456 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01457 _x = self 01458 buff.write(_struct_3I.pack(_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs)) 01459 _x = self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id 01460 length = len(_x) 01461 buff.write(struct.pack('<I%ss'%length, length, _x)) 01462 _x = self 01463 buff.write(_struct_7d3I.pack(_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.seq, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.nsecs)) 01464 _x = self.action_goal.goal.motion_plan_request.start_state.joint_state.header.frame_id 01465 length = len(_x) 01466 buff.write(struct.pack('<I%ss'%length, length, _x)) 01467 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.name) 01468 buff.write(_struct_I.pack(length)) 01469 for val1 in self.action_goal.goal.motion_plan_request.start_state.joint_state.name: 01470 length = len(val1) 01471 buff.write(struct.pack('<I%ss'%length, length, val1)) 01472 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.position) 01473 buff.write(_struct_I.pack(length)) 01474 pattern = '<%sd'%length 01475 buff.write(self.action_goal.goal.motion_plan_request.start_state.joint_state.position.tostring()) 01476 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity) 01477 buff.write(_struct_I.pack(length)) 01478 pattern = '<%sd'%length 01479 buff.write(self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity.tostring()) 01480 length = len(self.action_goal.goal.motion_plan_request.start_state.joint_state.effort) 01481 buff.write(_struct_I.pack(length)) 01482 pattern = '<%sd'%length 01483 buff.write(self.action_goal.goal.motion_plan_request.start_state.joint_state.effort.tostring()) 01484 _x = self 01485 buff.write(_struct_2I.pack(_x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs)) 01486 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names) 01487 buff.write(_struct_I.pack(length)) 01488 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names: 01489 length = len(val1) 01490 buff.write(struct.pack('<I%ss'%length, length, val1)) 01491 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids) 01492 buff.write(_struct_I.pack(length)) 01493 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids: 01494 length = len(val1) 01495 buff.write(struct.pack('<I%ss'%length, length, val1)) 01496 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids) 01497 buff.write(_struct_I.pack(length)) 01498 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids: 01499 length = len(val1) 01500 buff.write(struct.pack('<I%ss'%length, length, val1)) 01501 length = len(self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses) 01502 buff.write(_struct_I.pack(length)) 01503 for val1 in self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses: 01504 _v89 = val1.position 01505 _x = _v89 01506 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01507 _v90 = val1.orientation 01508 _x = _v90 01509 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01510 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints) 01511 buff.write(_struct_I.pack(length)) 01512 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints: 01513 _x = val1.joint_name 01514 length = len(_x) 01515 buff.write(struct.pack('<I%ss'%length, length, _x)) 01516 _x = val1 01517 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight)) 01518 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints) 01519 buff.write(_struct_I.pack(length)) 01520 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints: 01521 _v91 = val1.header 01522 buff.write(_struct_I.pack(_v91.seq)) 01523 _v92 = _v91.stamp 01524 _x = _v92 01525 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01526 _x = _v91.frame_id 01527 length = len(_x) 01528 buff.write(struct.pack('<I%ss'%length, length, _x)) 01529 _x = val1.link_name 01530 length = len(_x) 01531 buff.write(struct.pack('<I%ss'%length, length, _x)) 01532 _v93 = val1.target_point_offset 01533 _x = _v93 01534 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01535 _v94 = val1.position 01536 _x = _v94 01537 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01538 _v95 = val1.constraint_region_shape 01539 buff.write(_struct_b.pack(_v95.type)) 01540 length = len(_v95.dimensions) 01541 buff.write(_struct_I.pack(length)) 01542 pattern = '<%sd'%length 01543 buff.write(_v95.dimensions.tostring()) 01544 length = len(_v95.triangles) 01545 buff.write(_struct_I.pack(length)) 01546 pattern = '<%si'%length 01547 buff.write(_v95.triangles.tostring()) 01548 length = len(_v95.vertices) 01549 buff.write(_struct_I.pack(length)) 01550 for val3 in _v95.vertices: 01551 _x = val3 01552 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01553 _v96 = val1.constraint_region_orientation 01554 _x = _v96 01555 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01556 buff.write(_struct_d.pack(val1.weight)) 01557 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints) 01558 buff.write(_struct_I.pack(length)) 01559 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints: 01560 _v97 = val1.header 01561 buff.write(_struct_I.pack(_v97.seq)) 01562 _v98 = _v97.stamp 01563 _x = _v98 01564 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01565 _x = _v97.frame_id 01566 length = len(_x) 01567 buff.write(struct.pack('<I%ss'%length, length, _x)) 01568 _x = val1.link_name 01569 length = len(_x) 01570 buff.write(struct.pack('<I%ss'%length, length, _x)) 01571 buff.write(_struct_i.pack(val1.type)) 01572 _v99 = val1.orientation 01573 _x = _v99 01574 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01575 _x = val1 01576 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight)) 01577 length = len(self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints) 01578 buff.write(_struct_I.pack(length)) 01579 for val1 in self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints: 01580 _v100 = val1.header 01581 buff.write(_struct_I.pack(_v100.seq)) 01582 _v101 = _v100.stamp 01583 _x = _v101 01584 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01585 _x = _v100.frame_id 01586 length = len(_x) 01587 buff.write(struct.pack('<I%ss'%length, length, _x)) 01588 _v102 = val1.target 01589 _v103 = _v102.header 01590 buff.write(_struct_I.pack(_v103.seq)) 01591 _v104 = _v103.stamp 01592 _x = _v104 01593 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01594 _x = _v103.frame_id 01595 length = len(_x) 01596 buff.write(struct.pack('<I%ss'%length, length, _x)) 01597 _v105 = _v102.point 01598 _x = _v105 01599 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01600 _v106 = val1.sensor_pose 01601 _v107 = _v106.header 01602 buff.write(_struct_I.pack(_v107.seq)) 01603 _v108 = _v107.stamp 01604 _x = _v108 01605 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01606 _x = _v107.frame_id 01607 length = len(_x) 01608 buff.write(struct.pack('<I%ss'%length, length, _x)) 01609 _v109 = _v106.pose 01610 _v110 = _v109.position 01611 _x = _v110 01612 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01613 _v111 = _v109.orientation 01614 _x = _v111 01615 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01616 buff.write(_struct_d.pack(val1.absolute_tolerance)) 01617 length = len(self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints) 01618 buff.write(_struct_I.pack(length)) 01619 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints: 01620 _x = val1.joint_name 01621 length = len(_x) 01622 buff.write(struct.pack('<I%ss'%length, length, _x)) 01623 _x = val1 01624 buff.write(_struct_4d.pack(_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight)) 01625 length = len(self.action_goal.goal.motion_plan_request.path_constraints.position_constraints) 01626 buff.write(_struct_I.pack(length)) 01627 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.position_constraints: 01628 _v112 = val1.header 01629 buff.write(_struct_I.pack(_v112.seq)) 01630 _v113 = _v112.stamp 01631 _x = _v113 01632 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01633 _x = _v112.frame_id 01634 length = len(_x) 01635 buff.write(struct.pack('<I%ss'%length, length, _x)) 01636 _x = val1.link_name 01637 length = len(_x) 01638 buff.write(struct.pack('<I%ss'%length, length, _x)) 01639 _v114 = val1.target_point_offset 01640 _x = _v114 01641 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01642 _v115 = val1.position 01643 _x = _v115 01644 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01645 _v116 = val1.constraint_region_shape 01646 buff.write(_struct_b.pack(_v116.type)) 01647 length = len(_v116.dimensions) 01648 buff.write(_struct_I.pack(length)) 01649 pattern = '<%sd'%length 01650 buff.write(_v116.dimensions.tostring()) 01651 length = len(_v116.triangles) 01652 buff.write(_struct_I.pack(length)) 01653 pattern = '<%si'%length 01654 buff.write(_v116.triangles.tostring()) 01655 length = len(_v116.vertices) 01656 buff.write(_struct_I.pack(length)) 01657 for val3 in _v116.vertices: 01658 _x = val3 01659 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01660 _v117 = val1.constraint_region_orientation 01661 _x = _v117 01662 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01663 buff.write(_struct_d.pack(val1.weight)) 01664 length = len(self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints) 01665 buff.write(_struct_I.pack(length)) 01666 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints: 01667 _v118 = val1.header 01668 buff.write(_struct_I.pack(_v118.seq)) 01669 _v119 = _v118.stamp 01670 _x = _v119 01671 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01672 _x = _v118.frame_id 01673 length = len(_x) 01674 buff.write(struct.pack('<I%ss'%length, length, _x)) 01675 _x = val1.link_name 01676 length = len(_x) 01677 buff.write(struct.pack('<I%ss'%length, length, _x)) 01678 buff.write(_struct_i.pack(val1.type)) 01679 _v120 = val1.orientation 01680 _x = _v120 01681 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01682 _x = val1 01683 buff.write(_struct_4d.pack(_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight)) 01684 length = len(self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints) 01685 buff.write(_struct_I.pack(length)) 01686 for val1 in self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints: 01687 _v121 = val1.header 01688 buff.write(_struct_I.pack(_v121.seq)) 01689 _v122 = _v121.stamp 01690 _x = _v122 01691 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01692 _x = _v121.frame_id 01693 length = len(_x) 01694 buff.write(struct.pack('<I%ss'%length, length, _x)) 01695 _v123 = val1.target 01696 _v124 = _v123.header 01697 buff.write(_struct_I.pack(_v124.seq)) 01698 _v125 = _v124.stamp 01699 _x = _v125 01700 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01701 _x = _v124.frame_id 01702 length = len(_x) 01703 buff.write(struct.pack('<I%ss'%length, length, _x)) 01704 _v126 = _v123.point 01705 _x = _v126 01706 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01707 _v127 = val1.sensor_pose 01708 _v128 = _v127.header 01709 buff.write(_struct_I.pack(_v128.seq)) 01710 _v129 = _v128.stamp 01711 _x = _v129 01712 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01713 _x = _v128.frame_id 01714 length = len(_x) 01715 buff.write(struct.pack('<I%ss'%length, length, _x)) 01716 _v130 = _v127.pose 01717 _v131 = _v130.position 01718 _x = _v131 01719 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01720 _v132 = _v130.orientation 01721 _x = _v132 01722 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01723 buff.write(_struct_d.pack(val1.absolute_tolerance)) 01724 _x = self.action_goal.goal.motion_plan_request.planner_id 01725 length = len(_x) 01726 buff.write(struct.pack('<I%ss'%length, length, _x)) 01727 _x = self.action_goal.goal.motion_plan_request.group_name 01728 length = len(_x) 01729 buff.write(struct.pack('<I%ss'%length, length, _x)) 01730 _x = self 01731 buff.write(_struct_7i3I.pack(_x.action_goal.goal.motion_plan_request.num_planning_attempts, _x.action_goal.goal.motion_plan_request.allowed_planning_time.secs, _x.action_goal.goal.motion_plan_request.allowed_planning_time.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_duration.secs, _x.action_goal.goal.motion_plan_request.expected_path_duration.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_dt.secs, _x.action_goal.goal.motion_plan_request.expected_path_dt.nsecs, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 01732 _x = self.action_result.header.frame_id 01733 length = len(_x) 01734 buff.write(struct.pack('<I%ss'%length, length, _x)) 01735 _x = self 01736 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 01737 _x = self.action_result.status.goal_id.id 01738 length = len(_x) 01739 buff.write(struct.pack('<I%ss'%length, length, _x)) 01740 buff.write(_struct_B.pack(self.action_result.status.status)) 01741 _x = self.action_result.status.text 01742 length = len(_x) 01743 buff.write(struct.pack('<I%ss'%length, length, _x)) 01744 _x = self 01745 buff.write(_struct_3I.pack(_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 01746 _x = self.action_feedback.header.frame_id 01747 length = len(_x) 01748 buff.write(struct.pack('<I%ss'%length, length, _x)) 01749 _x = self 01750 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 01751 _x = self.action_feedback.status.goal_id.id 01752 length = len(_x) 01753 buff.write(struct.pack('<I%ss'%length, length, _x)) 01754 buff.write(_struct_B.pack(self.action_feedback.status.status)) 01755 _x = self.action_feedback.status.text 01756 length = len(_x) 01757 buff.write(struct.pack('<I%ss'%length, length, _x)) 01758 except struct.error as se: self._check_types(se) 01759 except TypeError as te: self._check_types(te) 01760 01761 def deserialize_numpy(self, str, numpy): 01762 """ 01763 unpack serialized message in str into this message instance using numpy for array types 01764 @param str: byte array of serialized message 01765 @type str: str 01766 @param numpy: numpy python module 01767 @type numpy: module 01768 """ 01769 try: 01770 if self.action_goal is None: 01771 self.action_goal = head_monitor_msgs.msg.PreplanHeadScanActionGoal() 01772 if self.action_result is None: 01773 self.action_result = head_monitor_msgs.msg.PreplanHeadScanActionResult() 01774 if self.action_feedback is None: 01775 self.action_feedback = head_monitor_msgs.msg.PreplanHeadScanActionFeedback() 01776 end = 0 01777 _x = self 01778 start = end 01779 end += 12 01780 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01781 start = end 01782 end += 4 01783 (length,) = _struct_I.unpack(str[start:end]) 01784 start = end 01785 end += length 01786 self.action_goal.header.frame_id = str[start:end] 01787 _x = self 01788 start = end 01789 end += 8 01790 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 01791 start = end 01792 end += 4 01793 (length,) = _struct_I.unpack(str[start:end]) 01794 start = end 01795 end += length 01796 self.action_goal.goal_id.id = str[start:end] 01797 start = end 01798 end += 4 01799 (length,) = _struct_I.unpack(str[start:end]) 01800 start = end 01801 end += length 01802 self.action_goal.goal.group_name = str[start:end] 01803 start = end 01804 end += 4 01805 (length,) = _struct_I.unpack(str[start:end]) 01806 start = end 01807 end += length 01808 self.action_goal.goal.head_monitor_link = str[start:end] 01809 start = end 01810 end += 1 01811 (self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.type,) = _struct_b.unpack(str[start:end]) 01812 start = end 01813 end += 4 01814 (length,) = _struct_I.unpack(str[start:end]) 01815 pattern = '<%sd'%length 01816 start = end 01817 end += struct.calcsize(pattern) 01818 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 01819 start = end 01820 end += 4 01821 (length,) = _struct_I.unpack(str[start:end]) 01822 pattern = '<%si'%length 01823 start = end 01824 end += struct.calcsize(pattern) 01825 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 01826 start = end 01827 end += 4 01828 (length,) = _struct_I.unpack(str[start:end]) 01829 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices = [] 01830 for i in range(0, length): 01831 val1 = geometry_msgs.msg.Point() 01832 _x = val1 01833 start = end 01834 end += 24 01835 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01836 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_shape.vertices.append(val1) 01837 _x = self 01838 start = end 01839 end += 12 01840 (_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.seq, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.secs, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01841 start = end 01842 end += 4 01843 (length,) = _struct_I.unpack(str[start:end]) 01844 start = end 01845 end += length 01846 self.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.header.frame_id = str[start:end] 01847 _x = self 01848 start = end 01849 end += 68 01850 (_x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.position.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.x, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.y, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.z, _x.action_goal.goal.motion_plan_request.workspace_parameters.workspace_region_pose.pose.orientation.w, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.seq, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.joint_state.header.stamp.nsecs,) = _struct_7d3I.unpack(str[start:end]) 01851 start = end 01852 end += 4 01853 (length,) = _struct_I.unpack(str[start:end]) 01854 start = end 01855 end += length 01856 self.action_goal.goal.motion_plan_request.start_state.joint_state.header.frame_id = str[start:end] 01857 start = end 01858 end += 4 01859 (length,) = _struct_I.unpack(str[start:end]) 01860 self.action_goal.goal.motion_plan_request.start_state.joint_state.name = [] 01861 for i in range(0, length): 01862 start = end 01863 end += 4 01864 (length,) = _struct_I.unpack(str[start:end]) 01865 start = end 01866 end += length 01867 val1 = str[start:end] 01868 self.action_goal.goal.motion_plan_request.start_state.joint_state.name.append(val1) 01869 start = end 01870 end += 4 01871 (length,) = _struct_I.unpack(str[start:end]) 01872 pattern = '<%sd'%length 01873 start = end 01874 end += struct.calcsize(pattern) 01875 self.action_goal.goal.motion_plan_request.start_state.joint_state.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 01876 start = end 01877 end += 4 01878 (length,) = _struct_I.unpack(str[start:end]) 01879 pattern = '<%sd'%length 01880 start = end 01881 end += struct.calcsize(pattern) 01882 self.action_goal.goal.motion_plan_request.start_state.joint_state.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 01883 start = end 01884 end += 4 01885 (length,) = _struct_I.unpack(str[start:end]) 01886 pattern = '<%sd'%length 01887 start = end 01888 end += struct.calcsize(pattern) 01889 self.action_goal.goal.motion_plan_request.start_state.joint_state.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 01890 _x = self 01891 start = end 01892 end += 8 01893 (_x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.secs, _x.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 01894 start = end 01895 end += 4 01896 (length,) = _struct_I.unpack(str[start:end]) 01897 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names = [] 01898 for i in range(0, length): 01899 start = end 01900 end += 4 01901 (length,) = _struct_I.unpack(str[start:end]) 01902 start = end 01903 end += length 01904 val1 = str[start:end] 01905 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.joint_names.append(val1) 01906 start = end 01907 end += 4 01908 (length,) = _struct_I.unpack(str[start:end]) 01909 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids = [] 01910 for i in range(0, length): 01911 start = end 01912 end += 4 01913 (length,) = _struct_I.unpack(str[start:end]) 01914 start = end 01915 end += length 01916 val1 = str[start:end] 01917 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.frame_ids.append(val1) 01918 start = end 01919 end += 4 01920 (length,) = _struct_I.unpack(str[start:end]) 01921 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids = [] 01922 for i in range(0, length): 01923 start = end 01924 end += 4 01925 (length,) = _struct_I.unpack(str[start:end]) 01926 start = end 01927 end += length 01928 val1 = str[start:end] 01929 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.child_frame_ids.append(val1) 01930 start = end 01931 end += 4 01932 (length,) = _struct_I.unpack(str[start:end]) 01933 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses = [] 01934 for i in range(0, length): 01935 val1 = geometry_msgs.msg.Pose() 01936 _v133 = val1.position 01937 _x = _v133 01938 start = end 01939 end += 24 01940 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01941 _v134 = val1.orientation 01942 _x = _v134 01943 start = end 01944 end += 32 01945 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01946 self.action_goal.goal.motion_plan_request.start_state.multi_dof_joint_state.poses.append(val1) 01947 start = end 01948 end += 4 01949 (length,) = _struct_I.unpack(str[start:end]) 01950 self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints = [] 01951 for i in range(0, length): 01952 val1 = arm_navigation_msgs.msg.JointConstraint() 01953 start = end 01954 end += 4 01955 (length,) = _struct_I.unpack(str[start:end]) 01956 start = end 01957 end += length 01958 val1.joint_name = str[start:end] 01959 _x = val1 01960 start = end 01961 end += 32 01962 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end]) 01963 self.action_goal.goal.motion_plan_request.goal_constraints.joint_constraints.append(val1) 01964 start = end 01965 end += 4 01966 (length,) = _struct_I.unpack(str[start:end]) 01967 self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints = [] 01968 for i in range(0, length): 01969 val1 = arm_navigation_msgs.msg.PositionConstraint() 01970 _v135 = val1.header 01971 start = end 01972 end += 4 01973 (_v135.seq,) = _struct_I.unpack(str[start:end]) 01974 _v136 = _v135.stamp 01975 _x = _v136 01976 start = end 01977 end += 8 01978 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 01979 start = end 01980 end += 4 01981 (length,) = _struct_I.unpack(str[start:end]) 01982 start = end 01983 end += length 01984 _v135.frame_id = str[start:end] 01985 start = end 01986 end += 4 01987 (length,) = _struct_I.unpack(str[start:end]) 01988 start = end 01989 end += length 01990 val1.link_name = str[start:end] 01991 _v137 = val1.target_point_offset 01992 _x = _v137 01993 start = end 01994 end += 24 01995 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01996 _v138 = val1.position 01997 _x = _v138 01998 start = end 01999 end += 24 02000 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02001 _v139 = val1.constraint_region_shape 02002 start = end 02003 end += 1 02004 (_v139.type,) = _struct_b.unpack(str[start:end]) 02005 start = end 02006 end += 4 02007 (length,) = _struct_I.unpack(str[start:end]) 02008 pattern = '<%sd'%length 02009 start = end 02010 end += struct.calcsize(pattern) 02011 _v139.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 02012 start = end 02013 end += 4 02014 (length,) = _struct_I.unpack(str[start:end]) 02015 pattern = '<%si'%length 02016 start = end 02017 end += struct.calcsize(pattern) 02018 _v139.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 02019 start = end 02020 end += 4 02021 (length,) = _struct_I.unpack(str[start:end]) 02022 _v139.vertices = [] 02023 for i in range(0, length): 02024 val3 = geometry_msgs.msg.Point() 02025 _x = val3 02026 start = end 02027 end += 24 02028 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02029 _v139.vertices.append(val3) 02030 _v140 = val1.constraint_region_orientation 02031 _x = _v140 02032 start = end 02033 end += 32 02034 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02035 start = end 02036 end += 8 02037 (val1.weight,) = _struct_d.unpack(str[start:end]) 02038 self.action_goal.goal.motion_plan_request.goal_constraints.position_constraints.append(val1) 02039 start = end 02040 end += 4 02041 (length,) = _struct_I.unpack(str[start:end]) 02042 self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints = [] 02043 for i in range(0, length): 02044 val1 = arm_navigation_msgs.msg.OrientationConstraint() 02045 _v141 = val1.header 02046 start = end 02047 end += 4 02048 (_v141.seq,) = _struct_I.unpack(str[start:end]) 02049 _v142 = _v141.stamp 02050 _x = _v142 02051 start = end 02052 end += 8 02053 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02054 start = end 02055 end += 4 02056 (length,) = _struct_I.unpack(str[start:end]) 02057 start = end 02058 end += length 02059 _v141.frame_id = str[start:end] 02060 start = end 02061 end += 4 02062 (length,) = _struct_I.unpack(str[start:end]) 02063 start = end 02064 end += length 02065 val1.link_name = str[start:end] 02066 start = end 02067 end += 4 02068 (val1.type,) = _struct_i.unpack(str[start:end]) 02069 _v143 = val1.orientation 02070 _x = _v143 02071 start = end 02072 end += 32 02073 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02074 _x = val1 02075 start = end 02076 end += 32 02077 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end]) 02078 self.action_goal.goal.motion_plan_request.goal_constraints.orientation_constraints.append(val1) 02079 start = end 02080 end += 4 02081 (length,) = _struct_I.unpack(str[start:end]) 02082 self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints = [] 02083 for i in range(0, length): 02084 val1 = arm_navigation_msgs.msg.VisibilityConstraint() 02085 _v144 = val1.header 02086 start = end 02087 end += 4 02088 (_v144.seq,) = _struct_I.unpack(str[start:end]) 02089 _v145 = _v144.stamp 02090 _x = _v145 02091 start = end 02092 end += 8 02093 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02094 start = end 02095 end += 4 02096 (length,) = _struct_I.unpack(str[start:end]) 02097 start = end 02098 end += length 02099 _v144.frame_id = str[start:end] 02100 _v146 = val1.target 02101 _v147 = _v146.header 02102 start = end 02103 end += 4 02104 (_v147.seq,) = _struct_I.unpack(str[start:end]) 02105 _v148 = _v147.stamp 02106 _x = _v148 02107 start = end 02108 end += 8 02109 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02110 start = end 02111 end += 4 02112 (length,) = _struct_I.unpack(str[start:end]) 02113 start = end 02114 end += length 02115 _v147.frame_id = str[start:end] 02116 _v149 = _v146.point 02117 _x = _v149 02118 start = end 02119 end += 24 02120 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02121 _v150 = val1.sensor_pose 02122 _v151 = _v150.header 02123 start = end 02124 end += 4 02125 (_v151.seq,) = _struct_I.unpack(str[start:end]) 02126 _v152 = _v151.stamp 02127 _x = _v152 02128 start = end 02129 end += 8 02130 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02131 start = end 02132 end += 4 02133 (length,) = _struct_I.unpack(str[start:end]) 02134 start = end 02135 end += length 02136 _v151.frame_id = str[start:end] 02137 _v153 = _v150.pose 02138 _v154 = _v153.position 02139 _x = _v154 02140 start = end 02141 end += 24 02142 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02143 _v155 = _v153.orientation 02144 _x = _v155 02145 start = end 02146 end += 32 02147 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02148 start = end 02149 end += 8 02150 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end]) 02151 self.action_goal.goal.motion_plan_request.goal_constraints.visibility_constraints.append(val1) 02152 start = end 02153 end += 4 02154 (length,) = _struct_I.unpack(str[start:end]) 02155 self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints = [] 02156 for i in range(0, length): 02157 val1 = arm_navigation_msgs.msg.JointConstraint() 02158 start = end 02159 end += 4 02160 (length,) = _struct_I.unpack(str[start:end]) 02161 start = end 02162 end += length 02163 val1.joint_name = str[start:end] 02164 _x = val1 02165 start = end 02166 end += 32 02167 (_x.position, _x.tolerance_above, _x.tolerance_below, _x.weight,) = _struct_4d.unpack(str[start:end]) 02168 self.action_goal.goal.motion_plan_request.path_constraints.joint_constraints.append(val1) 02169 start = end 02170 end += 4 02171 (length,) = _struct_I.unpack(str[start:end]) 02172 self.action_goal.goal.motion_plan_request.path_constraints.position_constraints = [] 02173 for i in range(0, length): 02174 val1 = arm_navigation_msgs.msg.PositionConstraint() 02175 _v156 = val1.header 02176 start = end 02177 end += 4 02178 (_v156.seq,) = _struct_I.unpack(str[start:end]) 02179 _v157 = _v156.stamp 02180 _x = _v157 02181 start = end 02182 end += 8 02183 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02184 start = end 02185 end += 4 02186 (length,) = _struct_I.unpack(str[start:end]) 02187 start = end 02188 end += length 02189 _v156.frame_id = str[start:end] 02190 start = end 02191 end += 4 02192 (length,) = _struct_I.unpack(str[start:end]) 02193 start = end 02194 end += length 02195 val1.link_name = str[start:end] 02196 _v158 = val1.target_point_offset 02197 _x = _v158 02198 start = end 02199 end += 24 02200 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02201 _v159 = val1.position 02202 _x = _v159 02203 start = end 02204 end += 24 02205 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02206 _v160 = val1.constraint_region_shape 02207 start = end 02208 end += 1 02209 (_v160.type,) = _struct_b.unpack(str[start:end]) 02210 start = end 02211 end += 4 02212 (length,) = _struct_I.unpack(str[start:end]) 02213 pattern = '<%sd'%length 02214 start = end 02215 end += struct.calcsize(pattern) 02216 _v160.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 02217 start = end 02218 end += 4 02219 (length,) = _struct_I.unpack(str[start:end]) 02220 pattern = '<%si'%length 02221 start = end 02222 end += struct.calcsize(pattern) 02223 _v160.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 02224 start = end 02225 end += 4 02226 (length,) = _struct_I.unpack(str[start:end]) 02227 _v160.vertices = [] 02228 for i in range(0, length): 02229 val3 = geometry_msgs.msg.Point() 02230 _x = val3 02231 start = end 02232 end += 24 02233 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02234 _v160.vertices.append(val3) 02235 _v161 = val1.constraint_region_orientation 02236 _x = _v161 02237 start = end 02238 end += 32 02239 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02240 start = end 02241 end += 8 02242 (val1.weight,) = _struct_d.unpack(str[start:end]) 02243 self.action_goal.goal.motion_plan_request.path_constraints.position_constraints.append(val1) 02244 start = end 02245 end += 4 02246 (length,) = _struct_I.unpack(str[start:end]) 02247 self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints = [] 02248 for i in range(0, length): 02249 val1 = arm_navigation_msgs.msg.OrientationConstraint() 02250 _v162 = val1.header 02251 start = end 02252 end += 4 02253 (_v162.seq,) = _struct_I.unpack(str[start:end]) 02254 _v163 = _v162.stamp 02255 _x = _v163 02256 start = end 02257 end += 8 02258 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02259 start = end 02260 end += 4 02261 (length,) = _struct_I.unpack(str[start:end]) 02262 start = end 02263 end += length 02264 _v162.frame_id = str[start:end] 02265 start = end 02266 end += 4 02267 (length,) = _struct_I.unpack(str[start:end]) 02268 start = end 02269 end += length 02270 val1.link_name = str[start:end] 02271 start = end 02272 end += 4 02273 (val1.type,) = _struct_i.unpack(str[start:end]) 02274 _v164 = val1.orientation 02275 _x = _v164 02276 start = end 02277 end += 32 02278 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02279 _x = val1 02280 start = end 02281 end += 32 02282 (_x.absolute_roll_tolerance, _x.absolute_pitch_tolerance, _x.absolute_yaw_tolerance, _x.weight,) = _struct_4d.unpack(str[start:end]) 02283 self.action_goal.goal.motion_plan_request.path_constraints.orientation_constraints.append(val1) 02284 start = end 02285 end += 4 02286 (length,) = _struct_I.unpack(str[start:end]) 02287 self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints = [] 02288 for i in range(0, length): 02289 val1 = arm_navigation_msgs.msg.VisibilityConstraint() 02290 _v165 = val1.header 02291 start = end 02292 end += 4 02293 (_v165.seq,) = _struct_I.unpack(str[start:end]) 02294 _v166 = _v165.stamp 02295 _x = _v166 02296 start = end 02297 end += 8 02298 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02299 start = end 02300 end += 4 02301 (length,) = _struct_I.unpack(str[start:end]) 02302 start = end 02303 end += length 02304 _v165.frame_id = str[start:end] 02305 _v167 = val1.target 02306 _v168 = _v167.header 02307 start = end 02308 end += 4 02309 (_v168.seq,) = _struct_I.unpack(str[start:end]) 02310 _v169 = _v168.stamp 02311 _x = _v169 02312 start = end 02313 end += 8 02314 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02315 start = end 02316 end += 4 02317 (length,) = _struct_I.unpack(str[start:end]) 02318 start = end 02319 end += length 02320 _v168.frame_id = str[start:end] 02321 _v170 = _v167.point 02322 _x = _v170 02323 start = end 02324 end += 24 02325 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02326 _v171 = val1.sensor_pose 02327 _v172 = _v171.header 02328 start = end 02329 end += 4 02330 (_v172.seq,) = _struct_I.unpack(str[start:end]) 02331 _v173 = _v172.stamp 02332 _x = _v173 02333 start = end 02334 end += 8 02335 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02336 start = end 02337 end += 4 02338 (length,) = _struct_I.unpack(str[start:end]) 02339 start = end 02340 end += length 02341 _v172.frame_id = str[start:end] 02342 _v174 = _v171.pose 02343 _v175 = _v174.position 02344 _x = _v175 02345 start = end 02346 end += 24 02347 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02348 _v176 = _v174.orientation 02349 _x = _v176 02350 start = end 02351 end += 32 02352 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02353 start = end 02354 end += 8 02355 (val1.absolute_tolerance,) = _struct_d.unpack(str[start:end]) 02356 self.action_goal.goal.motion_plan_request.path_constraints.visibility_constraints.append(val1) 02357 start = end 02358 end += 4 02359 (length,) = _struct_I.unpack(str[start:end]) 02360 start = end 02361 end += length 02362 self.action_goal.goal.motion_plan_request.planner_id = str[start:end] 02363 start = end 02364 end += 4 02365 (length,) = _struct_I.unpack(str[start:end]) 02366 start = end 02367 end += length 02368 self.action_goal.goal.motion_plan_request.group_name = str[start:end] 02369 _x = self 02370 start = end 02371 end += 40 02372 (_x.action_goal.goal.motion_plan_request.num_planning_attempts, _x.action_goal.goal.motion_plan_request.allowed_planning_time.secs, _x.action_goal.goal.motion_plan_request.allowed_planning_time.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_duration.secs, _x.action_goal.goal.motion_plan_request.expected_path_duration.nsecs, _x.action_goal.goal.motion_plan_request.expected_path_dt.secs, _x.action_goal.goal.motion_plan_request.expected_path_dt.nsecs, _x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_7i3I.unpack(str[start:end]) 02373 start = end 02374 end += 4 02375 (length,) = _struct_I.unpack(str[start:end]) 02376 start = end 02377 end += length 02378 self.action_result.header.frame_id = str[start:end] 02379 _x = self 02380 start = end 02381 end += 8 02382 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 02383 start = end 02384 end += 4 02385 (length,) = _struct_I.unpack(str[start:end]) 02386 start = end 02387 end += length 02388 self.action_result.status.goal_id.id = str[start:end] 02389 start = end 02390 end += 1 02391 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 02392 start = end 02393 end += 4 02394 (length,) = _struct_I.unpack(str[start:end]) 02395 start = end 02396 end += length 02397 self.action_result.status.text = str[start:end] 02398 _x = self 02399 start = end 02400 end += 12 02401 (_x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 02402 start = end 02403 end += 4 02404 (length,) = _struct_I.unpack(str[start:end]) 02405 start = end 02406 end += length 02407 self.action_feedback.header.frame_id = str[start:end] 02408 _x = self 02409 start = end 02410 end += 8 02411 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 02412 start = end 02413 end += 4 02414 (length,) = _struct_I.unpack(str[start:end]) 02415 start = end 02416 end += length 02417 self.action_feedback.status.goal_id.id = str[start:end] 02418 start = end 02419 end += 1 02420 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 02421 start = end 02422 end += 4 02423 (length,) = _struct_I.unpack(str[start:end]) 02424 start = end 02425 end += length 02426 self.action_feedback.status.text = str[start:end] 02427 return self 02428 except struct.error as e: 02429 raise roslib.message.DeserializationError(e) #most likely buffer underfill 02430 02431 _struct_I = roslib.message.struct_I 02432 _struct_b = struct.Struct("<b") 02433 _struct_d = struct.Struct("<d") 02434 _struct_2I = struct.Struct("<2I") 02435 _struct_i = struct.Struct("<i") 02436 _struct_3I = struct.Struct("<3I") 02437 _struct_B = struct.Struct("<B") 02438 _struct_4d = struct.Struct("<4d") 02439 _struct_7i3I = struct.Struct("<7i3I") 02440 _struct_7d3I = struct.Struct("<7d3I") 02441 _struct_3d = struct.Struct("<3d")