$search
00001 """autogenerated by genmsg_py from GraspPlanningAction.msg. Do not edit.""" 00002 import roslib.message 00003 import struct 00004 00005 import object_manipulation_msgs.msg 00006 import roslib.rostime 00007 import actionlib_msgs.msg 00008 import geometry_msgs.msg 00009 import sensor_msgs.msg 00010 import std_msgs.msg 00011 import household_objects_database_msgs.msg 00012 00013 class GraspPlanningAction(roslib.message.Message): 00014 _md5sum = "633fe6f10f37f6a935a5aa9ae19f25c5" 00015 _type = "object_manipulation_msgs/GraspPlanningAction" 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 GraspPlanningActionGoal action_goal 00020 GraspPlanningActionResult action_result 00021 GraspPlanningActionFeedback action_feedback 00022 00023 ================================================================================ 00024 MSG: object_manipulation_msgs/GraspPlanningActionGoal 00025 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00026 00027 Header header 00028 actionlib_msgs/GoalID goal_id 00029 GraspPlanningGoal 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: object_manipulation_msgs/GraspPlanningGoal 00064 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00065 # Requests that grasp planning be performed on the object to be grasped 00066 # returns a list of grasps to be tested and executed 00067 00068 # the arm being used 00069 string arm_name 00070 00071 # the object to be grasped 00072 GraspableObject target 00073 00074 # the name that the target object has in the collision environment 00075 # can be left empty if no name is available 00076 string collision_object_name 00077 00078 # the name that the support surface (e.g. table) has in the collision map 00079 # can be left empty if no name is available 00080 string collision_support_surface_name 00081 00082 # an optional list of grasps to be evaluated by the planner 00083 Grasp[] grasps_to_evaluate 00084 00085 # an optional list of obstacles that we have semantic information about 00086 # and that can be moved in the course of grasping 00087 GraspableObject[] movable_obstacles 00088 00089 00090 ================================================================================ 00091 MSG: object_manipulation_msgs/GraspableObject 00092 # an object that the object_manipulator can work on 00093 00094 # a graspable object can be represented in multiple ways. This message 00095 # can contain all of them. Which one is actually used is up to the receiver 00096 # of this message. When adding new representations, one must be careful that 00097 # they have reasonable lightweight defaults indicating that that particular 00098 # representation is not available. 00099 00100 # the tf frame to be used as a reference frame when combining information from 00101 # the different representations below 00102 string reference_frame_id 00103 00104 # potential recognition results from a database of models 00105 # all poses are relative to the object reference pose 00106 household_objects_database_msgs/DatabaseModelPose[] potential_models 00107 00108 # the point cloud itself 00109 sensor_msgs/PointCloud cluster 00110 00111 # a region of a PointCloud2 of interest 00112 object_manipulation_msgs/SceneRegion region 00113 00114 # the name that this object has in the collision environment 00115 string collision_name 00116 ================================================================================ 00117 MSG: household_objects_database_msgs/DatabaseModelPose 00118 # Informs that a specific model from the Model Database has been 00119 # identified at a certain location 00120 00121 # the database id of the model 00122 int32 model_id 00123 00124 # the pose that it can be found in 00125 geometry_msgs/PoseStamped pose 00126 00127 # a measure of the confidence level in this detection result 00128 float32 confidence 00129 00130 # the name of the object detector that generated this detection result 00131 string detector_name 00132 00133 ================================================================================ 00134 MSG: geometry_msgs/PoseStamped 00135 # A Pose with reference coordinate frame and timestamp 00136 Header header 00137 Pose pose 00138 00139 ================================================================================ 00140 MSG: geometry_msgs/Pose 00141 # A representation of pose in free space, composed of postion and orientation. 00142 Point position 00143 Quaternion orientation 00144 00145 ================================================================================ 00146 MSG: geometry_msgs/Point 00147 # This contains the position of a point in free space 00148 float64 x 00149 float64 y 00150 float64 z 00151 00152 ================================================================================ 00153 MSG: geometry_msgs/Quaternion 00154 # This represents an orientation in free space in quaternion form. 00155 00156 float64 x 00157 float64 y 00158 float64 z 00159 float64 w 00160 00161 ================================================================================ 00162 MSG: sensor_msgs/PointCloud 00163 # This message holds a collection of 3d points, plus optional additional 00164 # information about each point. 00165 00166 # Time of sensor data acquisition, coordinate frame ID. 00167 Header header 00168 00169 # Array of 3d points. Each Point32 should be interpreted as a 3d point 00170 # in the frame given in the header. 00171 geometry_msgs/Point32[] points 00172 00173 # Each channel should have the same number of elements as points array, 00174 # and the data in each channel should correspond 1:1 with each point. 00175 # Channel names in common practice are listed in ChannelFloat32.msg. 00176 ChannelFloat32[] channels 00177 00178 ================================================================================ 00179 MSG: geometry_msgs/Point32 00180 # This contains the position of a point in free space(with 32 bits of precision). 00181 # It is recommeded to use Point wherever possible instead of Point32. 00182 # 00183 # This recommendation is to promote interoperability. 00184 # 00185 # This message is designed to take up less space when sending 00186 # lots of points at once, as in the case of a PointCloud. 00187 00188 float32 x 00189 float32 y 00190 float32 z 00191 ================================================================================ 00192 MSG: sensor_msgs/ChannelFloat32 00193 # This message is used by the PointCloud message to hold optional data 00194 # associated with each point in the cloud. The length of the values 00195 # array should be the same as the length of the points array in the 00196 # PointCloud, and each value should be associated with the corresponding 00197 # point. 00198 00199 # Channel names in existing practice include: 00200 # "u", "v" - row and column (respectively) in the left stereo image. 00201 # This is opposite to usual conventions but remains for 00202 # historical reasons. The newer PointCloud2 message has no 00203 # such problem. 00204 # "rgb" - For point clouds produced by color stereo cameras. uint8 00205 # (R,G,B) values packed into the least significant 24 bits, 00206 # in order. 00207 # "intensity" - laser or pixel intensity. 00208 # "distance" 00209 00210 # The channel name should give semantics of the channel (e.g. 00211 # "intensity" instead of "value"). 00212 string name 00213 00214 # The values array should be 1-1 with the elements of the associated 00215 # PointCloud. 00216 float32[] values 00217 00218 ================================================================================ 00219 MSG: object_manipulation_msgs/SceneRegion 00220 # Point cloud 00221 sensor_msgs/PointCloud2 cloud 00222 00223 # Indices for the region of interest 00224 int32[] mask 00225 00226 # One of the corresponding 2D images, if applicable 00227 sensor_msgs/Image image 00228 00229 # The disparity image, if applicable 00230 sensor_msgs/Image disparity_image 00231 00232 # Camera info for the camera that took the image 00233 sensor_msgs/CameraInfo cam_info 00234 00235 # a 3D region of interest for grasp planning 00236 geometry_msgs/PoseStamped roi_box_pose 00237 geometry_msgs/Vector3 roi_box_dims 00238 00239 ================================================================================ 00240 MSG: sensor_msgs/PointCloud2 00241 # This message holds a collection of N-dimensional points, which may 00242 # contain additional information such as normals, intensity, etc. The 00243 # point data is stored as a binary blob, its layout described by the 00244 # contents of the "fields" array. 00245 00246 # The point cloud data may be organized 2d (image-like) or 1d 00247 # (unordered). Point clouds organized as 2d images may be produced by 00248 # camera depth sensors such as stereo or time-of-flight. 00249 00250 # Time of sensor data acquisition, and the coordinate frame ID (for 3d 00251 # points). 00252 Header header 00253 00254 # 2D structure of the point cloud. If the cloud is unordered, height is 00255 # 1 and width is the length of the point cloud. 00256 uint32 height 00257 uint32 width 00258 00259 # Describes the channels and their layout in the binary data blob. 00260 PointField[] fields 00261 00262 bool is_bigendian # Is this data bigendian? 00263 uint32 point_step # Length of a point in bytes 00264 uint32 row_step # Length of a row in bytes 00265 uint8[] data # Actual point data, size is (row_step*height) 00266 00267 bool is_dense # True if there are no invalid points 00268 00269 ================================================================================ 00270 MSG: sensor_msgs/PointField 00271 # This message holds the description of one point entry in the 00272 # PointCloud2 message format. 00273 uint8 INT8 = 1 00274 uint8 UINT8 = 2 00275 uint8 INT16 = 3 00276 uint8 UINT16 = 4 00277 uint8 INT32 = 5 00278 uint8 UINT32 = 6 00279 uint8 FLOAT32 = 7 00280 uint8 FLOAT64 = 8 00281 00282 string name # Name of field 00283 uint32 offset # Offset from start of point struct 00284 uint8 datatype # Datatype enumeration, see above 00285 uint32 count # How many elements in the field 00286 00287 ================================================================================ 00288 MSG: sensor_msgs/Image 00289 # This message contains an uncompressed image 00290 # (0, 0) is at top-left corner of image 00291 # 00292 00293 Header header # Header timestamp should be acquisition time of image 00294 # Header frame_id should be optical frame of camera 00295 # origin of frame should be optical center of cameara 00296 # +x should point to the right in the image 00297 # +y should point down in the image 00298 # +z should point into to plane of the image 00299 # If the frame_id here and the frame_id of the CameraInfo 00300 # message associated with the image conflict 00301 # the behavior is undefined 00302 00303 uint32 height # image height, that is, number of rows 00304 uint32 width # image width, that is, number of columns 00305 00306 # The legal values for encoding are in file src/image_encodings.cpp 00307 # If you want to standardize a new string format, join 00308 # ros-users@lists.sourceforge.net and send an email proposing a new encoding. 00309 00310 string encoding # Encoding of pixels -- channel meaning, ordering, size 00311 # taken from the list of strings in src/image_encodings.cpp 00312 00313 uint8 is_bigendian # is this data bigendian? 00314 uint32 step # Full row length in bytes 00315 uint8[] data # actual matrix data, size is (step * rows) 00316 00317 ================================================================================ 00318 MSG: sensor_msgs/CameraInfo 00319 # This message defines meta information for a camera. It should be in a 00320 # camera namespace on topic "camera_info" and accompanied by up to five 00321 # image topics named: 00322 # 00323 # image_raw - raw data from the camera driver, possibly Bayer encoded 00324 # image - monochrome, distorted 00325 # image_color - color, distorted 00326 # image_rect - monochrome, rectified 00327 # image_rect_color - color, rectified 00328 # 00329 # The image_pipeline contains packages (image_proc, stereo_image_proc) 00330 # for producing the four processed image topics from image_raw and 00331 # camera_info. The meaning of the camera parameters are described in 00332 # detail at http://www.ros.org/wiki/image_pipeline/CameraInfo. 00333 # 00334 # The image_geometry package provides a user-friendly interface to 00335 # common operations using this meta information. If you want to, e.g., 00336 # project a 3d point into image coordinates, we strongly recommend 00337 # using image_geometry. 00338 # 00339 # If the camera is uncalibrated, the matrices D, K, R, P should be left 00340 # zeroed out. In particular, clients may assume that K[0] == 0.0 00341 # indicates an uncalibrated camera. 00342 00343 ####################################################################### 00344 # Image acquisition info # 00345 ####################################################################### 00346 00347 # Time of image acquisition, camera coordinate frame ID 00348 Header header # Header timestamp should be acquisition time of image 00349 # Header frame_id should be optical frame of camera 00350 # origin of frame should be optical center of camera 00351 # +x should point to the right in the image 00352 # +y should point down in the image 00353 # +z should point into the plane of the image 00354 00355 00356 ####################################################################### 00357 # Calibration Parameters # 00358 ####################################################################### 00359 # These are fixed during camera calibration. Their values will be the # 00360 # same in all messages until the camera is recalibrated. Note that # 00361 # self-calibrating systems may "recalibrate" frequently. # 00362 # # 00363 # The internal parameters can be used to warp a raw (distorted) image # 00364 # to: # 00365 # 1. An undistorted image (requires D and K) # 00366 # 2. A rectified image (requires D, K, R) # 00367 # The projection matrix P projects 3D points into the rectified image.# 00368 ####################################################################### 00369 00370 # The image dimensions with which the camera was calibrated. Normally 00371 # this will be the full camera resolution in pixels. 00372 uint32 height 00373 uint32 width 00374 00375 # The distortion model used. Supported models are listed in 00376 # sensor_msgs/distortion_models.h. For most cameras, "plumb_bob" - a 00377 # simple model of radial and tangential distortion - is sufficent. 00378 string distortion_model 00379 00380 # The distortion parameters, size depending on the distortion model. 00381 # For "plumb_bob", the 5 parameters are: (k1, k2, t1, t2, k3). 00382 float64[] D 00383 00384 # Intrinsic camera matrix for the raw (distorted) images. 00385 # [fx 0 cx] 00386 # K = [ 0 fy cy] 00387 # [ 0 0 1] 00388 # Projects 3D points in the camera coordinate frame to 2D pixel 00389 # coordinates using the focal lengths (fx, fy) and principal point 00390 # (cx, cy). 00391 float64[9] K # 3x3 row-major matrix 00392 00393 # Rectification matrix (stereo cameras only) 00394 # A rotation matrix aligning the camera coordinate system to the ideal 00395 # stereo image plane so that epipolar lines in both stereo images are 00396 # parallel. 00397 float64[9] R # 3x3 row-major matrix 00398 00399 # Projection/camera matrix 00400 # [fx' 0 cx' Tx] 00401 # P = [ 0 fy' cy' Ty] 00402 # [ 0 0 1 0] 00403 # By convention, this matrix specifies the intrinsic (camera) matrix 00404 # of the processed (rectified) image. That is, the left 3x3 portion 00405 # is the normal camera intrinsic matrix for the rectified image. 00406 # It projects 3D points in the camera coordinate frame to 2D pixel 00407 # coordinates using the focal lengths (fx', fy') and principal point 00408 # (cx', cy') - these may differ from the values in K. 00409 # For monocular cameras, Tx = Ty = 0. Normally, monocular cameras will 00410 # also have R = the identity and P[1:3,1:3] = K. 00411 # For a stereo pair, the fourth column [Tx Ty 0]' is related to the 00412 # position of the optical center of the second camera in the first 00413 # camera's frame. We assume Tz = 0 so both cameras are in the same 00414 # stereo image plane. The first camera always has Tx = Ty = 0. For 00415 # the right (second) camera of a horizontal stereo pair, Ty = 0 and 00416 # Tx = -fx' * B, where B is the baseline between the cameras. 00417 # Given a 3D point [X Y Z]', the projection (x, y) of the point onto 00418 # the rectified image is given by: 00419 # [u v w]' = P * [X Y Z 1]' 00420 # x = u / w 00421 # y = v / w 00422 # This holds for both images of a stereo pair. 00423 float64[12] P # 3x4 row-major matrix 00424 00425 00426 ####################################################################### 00427 # Operational Parameters # 00428 ####################################################################### 00429 # These define the image region actually captured by the camera # 00430 # driver. Although they affect the geometry of the output image, they # 00431 # may be changed freely without recalibrating the camera. # 00432 ####################################################################### 00433 00434 # Binning refers here to any camera setting which combines rectangular 00435 # neighborhoods of pixels into larger "super-pixels." It reduces the 00436 # resolution of the output image to 00437 # (width / binning_x) x (height / binning_y). 00438 # The default values binning_x = binning_y = 0 is considered the same 00439 # as binning_x = binning_y = 1 (no subsampling). 00440 uint32 binning_x 00441 uint32 binning_y 00442 00443 # Region of interest (subwindow of full camera resolution), given in 00444 # full resolution (unbinned) image coordinates. A particular ROI 00445 # always denotes the same window of pixels on the camera sensor, 00446 # regardless of binning settings. 00447 # The default setting of roi (all values 0) is considered the same as 00448 # full resolution (roi.width = width, roi.height = height). 00449 RegionOfInterest roi 00450 00451 ================================================================================ 00452 MSG: sensor_msgs/RegionOfInterest 00453 # This message is used to specify a region of interest within an image. 00454 # 00455 # When used to specify the ROI setting of the camera when the image was 00456 # taken, the height and width fields should either match the height and 00457 # width fields for the associated image; or height = width = 0 00458 # indicates that the full resolution image was captured. 00459 00460 uint32 x_offset # Leftmost pixel of the ROI 00461 # (0 if the ROI includes the left edge of the image) 00462 uint32 y_offset # Topmost pixel of the ROI 00463 # (0 if the ROI includes the top edge of the image) 00464 uint32 height # Height of ROI 00465 uint32 width # Width of ROI 00466 00467 # True if a distinct rectified ROI should be calculated from the "raw" 00468 # ROI in this message. Typically this should be False if the full image 00469 # is captured (ROI not used), and True if a subwindow is captured (ROI 00470 # used). 00471 bool do_rectify 00472 00473 ================================================================================ 00474 MSG: geometry_msgs/Vector3 00475 # This represents a vector in free space. 00476 00477 float64 x 00478 float64 y 00479 float64 z 00480 ================================================================================ 00481 MSG: object_manipulation_msgs/Grasp 00482 00483 # The internal posture of the hand for the pre-grasp 00484 # only positions are used 00485 sensor_msgs/JointState pre_grasp_posture 00486 00487 # The internal posture of the hand for the grasp 00488 # positions and efforts are used 00489 sensor_msgs/JointState grasp_posture 00490 00491 # The position of the end-effector for the grasp relative to a reference frame 00492 # (that is always specified elsewhere, not in this message) 00493 geometry_msgs/Pose grasp_pose 00494 00495 # The estimated probability of success for this grasp 00496 float64 success_probability 00497 00498 # Debug flag to indicate that this grasp would be the best in its cluster 00499 bool cluster_rep 00500 00501 # how far the pre-grasp should ideally be away from the grasp 00502 float32 desired_approach_distance 00503 00504 # how much distance between pre-grasp and grasp must actually be feasible 00505 # for the grasp not to be rejected 00506 float32 min_approach_distance 00507 00508 # an optional list of obstacles that we have semantic information about 00509 # and that we expect might move in the course of executing this grasp 00510 # the grasp planner is expected to make sure they move in an OK way; during 00511 # execution, grasp executors will not check for collisions against these objects 00512 GraspableObject[] moved_obstacles 00513 00514 ================================================================================ 00515 MSG: sensor_msgs/JointState 00516 # This is a message that holds data to describe the state of a set of torque controlled joints. 00517 # 00518 # The state of each joint (revolute or prismatic) is defined by: 00519 # * the position of the joint (rad or m), 00520 # * the velocity of the joint (rad/s or m/s) and 00521 # * the effort that is applied in the joint (Nm or N). 00522 # 00523 # Each joint is uniquely identified by its name 00524 # The header specifies the time at which the joint states were recorded. All the joint states 00525 # in one message have to be recorded at the same time. 00526 # 00527 # This message consists of a multiple arrays, one for each part of the joint state. 00528 # The goal is to make each of the fields optional. When e.g. your joints have no 00529 # effort associated with them, you can leave the effort array empty. 00530 # 00531 # All arrays in this message should have the same size, or be empty. 00532 # This is the only way to uniquely associate the joint name with the correct 00533 # states. 00534 00535 00536 Header header 00537 00538 string[] name 00539 float64[] position 00540 float64[] velocity 00541 float64[] effort 00542 00543 ================================================================================ 00544 MSG: object_manipulation_msgs/GraspPlanningActionResult 00545 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00546 00547 Header header 00548 actionlib_msgs/GoalStatus status 00549 GraspPlanningResult result 00550 00551 ================================================================================ 00552 MSG: actionlib_msgs/GoalStatus 00553 GoalID goal_id 00554 uint8 status 00555 uint8 PENDING = 0 # The goal has yet to be processed by the action server 00556 uint8 ACTIVE = 1 # The goal is currently being processed by the action server 00557 uint8 PREEMPTED = 2 # The goal received a cancel request after it started executing 00558 # and has since completed its execution (Terminal State) 00559 uint8 SUCCEEDED = 3 # The goal was achieved successfully by the action server (Terminal State) 00560 uint8 ABORTED = 4 # The goal was aborted during execution by the action server due 00561 # to some failure (Terminal State) 00562 uint8 REJECTED = 5 # The goal was rejected by the action server without being processed, 00563 # because the goal was unattainable or invalid (Terminal State) 00564 uint8 PREEMPTING = 6 # The goal received a cancel request after it started executing 00565 # and has not yet completed execution 00566 uint8 RECALLING = 7 # The goal received a cancel request before it started executing, 00567 # but the action server has not yet confirmed that the goal is canceled 00568 uint8 RECALLED = 8 # The goal received a cancel request before it started executing 00569 # and was successfully cancelled (Terminal State) 00570 uint8 LOST = 9 # An action client can determine that a goal is LOST. This should not be 00571 # sent over the wire by an action server 00572 00573 #Allow for the user to associate a string with GoalStatus for debugging 00574 string text 00575 00576 00577 ================================================================================ 00578 MSG: object_manipulation_msgs/GraspPlanningResult 00579 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00580 00581 # the list of planned grasps 00582 Grasp[] grasps 00583 00584 # whether an error occurred 00585 GraspPlanningErrorCode error_code 00586 00587 00588 ================================================================================ 00589 MSG: object_manipulation_msgs/GraspPlanningErrorCode 00590 # Error codes for grasp and place planning 00591 00592 # plan completed as expected 00593 int32 SUCCESS = 0 00594 00595 # tf error encountered while transforming 00596 int32 TF_ERROR = 1 00597 00598 # some other error 00599 int32 OTHER_ERROR = 2 00600 00601 # the actual value of this error code 00602 int32 value 00603 ================================================================================ 00604 MSG: object_manipulation_msgs/GraspPlanningActionFeedback 00605 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00606 00607 Header header 00608 actionlib_msgs/GoalStatus status 00609 GraspPlanningFeedback feedback 00610 00611 ================================================================================ 00612 MSG: object_manipulation_msgs/GraspPlanningFeedback 00613 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ====== 00614 00615 # grasps planned so far 00616 Grasp[] grasps 00617 00618 00619 00620 """ 00621 __slots__ = ['action_goal','action_result','action_feedback'] 00622 _slot_types = ['object_manipulation_msgs/GraspPlanningActionGoal','object_manipulation_msgs/GraspPlanningActionResult','object_manipulation_msgs/GraspPlanningActionFeedback'] 00623 00624 def __init__(self, *args, **kwds): 00625 """ 00626 Constructor. Any message fields that are implicitly/explicitly 00627 set to None will be assigned a default value. The recommend 00628 use is keyword arguments as this is more robust to future message 00629 changes. You cannot mix in-order arguments and keyword arguments. 00630 00631 The available fields are: 00632 action_goal,action_result,action_feedback 00633 00634 @param args: complete set of field values, in .msg order 00635 @param kwds: use keyword arguments corresponding to message field names 00636 to set specific fields. 00637 """ 00638 if args or kwds: 00639 super(GraspPlanningAction, self).__init__(*args, **kwds) 00640 #message fields cannot be None, assign default values for those that are 00641 if self.action_goal is None: 00642 self.action_goal = object_manipulation_msgs.msg.GraspPlanningActionGoal() 00643 if self.action_result is None: 00644 self.action_result = object_manipulation_msgs.msg.GraspPlanningActionResult() 00645 if self.action_feedback is None: 00646 self.action_feedback = object_manipulation_msgs.msg.GraspPlanningActionFeedback() 00647 else: 00648 self.action_goal = object_manipulation_msgs.msg.GraspPlanningActionGoal() 00649 self.action_result = object_manipulation_msgs.msg.GraspPlanningActionResult() 00650 self.action_feedback = object_manipulation_msgs.msg.GraspPlanningActionFeedback() 00651 00652 def _get_types(self): 00653 """ 00654 internal API method 00655 """ 00656 return self._slot_types 00657 00658 def serialize(self, buff): 00659 """ 00660 serialize message into buffer 00661 @param buff: buffer 00662 @type buff: StringIO 00663 """ 00664 try: 00665 _x = self 00666 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 00667 _x = self.action_goal.header.frame_id 00668 length = len(_x) 00669 buff.write(struct.pack('<I%ss'%length, length, _x)) 00670 _x = self 00671 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs)) 00672 _x = self.action_goal.goal_id.id 00673 length = len(_x) 00674 buff.write(struct.pack('<I%ss'%length, length, _x)) 00675 _x = self.action_goal.goal.arm_name 00676 length = len(_x) 00677 buff.write(struct.pack('<I%ss'%length, length, _x)) 00678 _x = self.action_goal.goal.target.reference_frame_id 00679 length = len(_x) 00680 buff.write(struct.pack('<I%ss'%length, length, _x)) 00681 length = len(self.action_goal.goal.target.potential_models) 00682 buff.write(_struct_I.pack(length)) 00683 for val1 in self.action_goal.goal.target.potential_models: 00684 buff.write(_struct_i.pack(val1.model_id)) 00685 _v1 = val1.pose 00686 _v2 = _v1.header 00687 buff.write(_struct_I.pack(_v2.seq)) 00688 _v3 = _v2.stamp 00689 _x = _v3 00690 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00691 _x = _v2.frame_id 00692 length = len(_x) 00693 buff.write(struct.pack('<I%ss'%length, length, _x)) 00694 _v4 = _v1.pose 00695 _v5 = _v4.position 00696 _x = _v5 00697 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00698 _v6 = _v4.orientation 00699 _x = _v6 00700 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00701 buff.write(_struct_f.pack(val1.confidence)) 00702 _x = val1.detector_name 00703 length = len(_x) 00704 buff.write(struct.pack('<I%ss'%length, length, _x)) 00705 _x = self 00706 buff.write(_struct_3I.pack(_x.action_goal.goal.target.cluster.header.seq, _x.action_goal.goal.target.cluster.header.stamp.secs, _x.action_goal.goal.target.cluster.header.stamp.nsecs)) 00707 _x = self.action_goal.goal.target.cluster.header.frame_id 00708 length = len(_x) 00709 buff.write(struct.pack('<I%ss'%length, length, _x)) 00710 length = len(self.action_goal.goal.target.cluster.points) 00711 buff.write(_struct_I.pack(length)) 00712 for val1 in self.action_goal.goal.target.cluster.points: 00713 _x = val1 00714 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 00715 length = len(self.action_goal.goal.target.cluster.channels) 00716 buff.write(_struct_I.pack(length)) 00717 for val1 in self.action_goal.goal.target.cluster.channels: 00718 _x = val1.name 00719 length = len(_x) 00720 buff.write(struct.pack('<I%ss'%length, length, _x)) 00721 length = len(val1.values) 00722 buff.write(_struct_I.pack(length)) 00723 pattern = '<%sf'%length 00724 buff.write(struct.pack(pattern, *val1.values)) 00725 _x = self 00726 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.cloud.header.seq, _x.action_goal.goal.target.region.cloud.header.stamp.secs, _x.action_goal.goal.target.region.cloud.header.stamp.nsecs)) 00727 _x = self.action_goal.goal.target.region.cloud.header.frame_id 00728 length = len(_x) 00729 buff.write(struct.pack('<I%ss'%length, length, _x)) 00730 _x = self 00731 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.cloud.height, _x.action_goal.goal.target.region.cloud.width)) 00732 length = len(self.action_goal.goal.target.region.cloud.fields) 00733 buff.write(_struct_I.pack(length)) 00734 for val1 in self.action_goal.goal.target.region.cloud.fields: 00735 _x = val1.name 00736 length = len(_x) 00737 buff.write(struct.pack('<I%ss'%length, length, _x)) 00738 _x = val1 00739 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 00740 _x = self 00741 buff.write(_struct_B2I.pack(_x.action_goal.goal.target.region.cloud.is_bigendian, _x.action_goal.goal.target.region.cloud.point_step, _x.action_goal.goal.target.region.cloud.row_step)) 00742 _x = self.action_goal.goal.target.region.cloud.data 00743 length = len(_x) 00744 # - if encoded as a list instead, serialize as bytes instead of string 00745 if type(_x) in [list, tuple]: 00746 buff.write(struct.pack('<I%sB'%length, length, *_x)) 00747 else: 00748 buff.write(struct.pack('<I%ss'%length, length, _x)) 00749 buff.write(_struct_B.pack(self.action_goal.goal.target.region.cloud.is_dense)) 00750 length = len(self.action_goal.goal.target.region.mask) 00751 buff.write(_struct_I.pack(length)) 00752 pattern = '<%si'%length 00753 buff.write(struct.pack(pattern, *self.action_goal.goal.target.region.mask)) 00754 _x = self 00755 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.image.header.seq, _x.action_goal.goal.target.region.image.header.stamp.secs, _x.action_goal.goal.target.region.image.header.stamp.nsecs)) 00756 _x = self.action_goal.goal.target.region.image.header.frame_id 00757 length = len(_x) 00758 buff.write(struct.pack('<I%ss'%length, length, _x)) 00759 _x = self 00760 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.image.height, _x.action_goal.goal.target.region.image.width)) 00761 _x = self.action_goal.goal.target.region.image.encoding 00762 length = len(_x) 00763 buff.write(struct.pack('<I%ss'%length, length, _x)) 00764 _x = self 00765 buff.write(_struct_BI.pack(_x.action_goal.goal.target.region.image.is_bigendian, _x.action_goal.goal.target.region.image.step)) 00766 _x = self.action_goal.goal.target.region.image.data 00767 length = len(_x) 00768 # - if encoded as a list instead, serialize as bytes instead of string 00769 if type(_x) in [list, tuple]: 00770 buff.write(struct.pack('<I%sB'%length, length, *_x)) 00771 else: 00772 buff.write(struct.pack('<I%ss'%length, length, _x)) 00773 _x = self 00774 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.disparity_image.header.seq, _x.action_goal.goal.target.region.disparity_image.header.stamp.secs, _x.action_goal.goal.target.region.disparity_image.header.stamp.nsecs)) 00775 _x = self.action_goal.goal.target.region.disparity_image.header.frame_id 00776 length = len(_x) 00777 buff.write(struct.pack('<I%ss'%length, length, _x)) 00778 _x = self 00779 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.disparity_image.height, _x.action_goal.goal.target.region.disparity_image.width)) 00780 _x = self.action_goal.goal.target.region.disparity_image.encoding 00781 length = len(_x) 00782 buff.write(struct.pack('<I%ss'%length, length, _x)) 00783 _x = self 00784 buff.write(_struct_BI.pack(_x.action_goal.goal.target.region.disparity_image.is_bigendian, _x.action_goal.goal.target.region.disparity_image.step)) 00785 _x = self.action_goal.goal.target.region.disparity_image.data 00786 length = len(_x) 00787 # - if encoded as a list instead, serialize as bytes instead of string 00788 if type(_x) in [list, tuple]: 00789 buff.write(struct.pack('<I%sB'%length, length, *_x)) 00790 else: 00791 buff.write(struct.pack('<I%ss'%length, length, _x)) 00792 _x = self 00793 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.cam_info.header.seq, _x.action_goal.goal.target.region.cam_info.header.stamp.secs, _x.action_goal.goal.target.region.cam_info.header.stamp.nsecs)) 00794 _x = self.action_goal.goal.target.region.cam_info.header.frame_id 00795 length = len(_x) 00796 buff.write(struct.pack('<I%ss'%length, length, _x)) 00797 _x = self 00798 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.cam_info.height, _x.action_goal.goal.target.region.cam_info.width)) 00799 _x = self.action_goal.goal.target.region.cam_info.distortion_model 00800 length = len(_x) 00801 buff.write(struct.pack('<I%ss'%length, length, _x)) 00802 length = len(self.action_goal.goal.target.region.cam_info.D) 00803 buff.write(_struct_I.pack(length)) 00804 pattern = '<%sd'%length 00805 buff.write(struct.pack(pattern, *self.action_goal.goal.target.region.cam_info.D)) 00806 buff.write(_struct_9d.pack(*self.action_goal.goal.target.region.cam_info.K)) 00807 buff.write(_struct_9d.pack(*self.action_goal.goal.target.region.cam_info.R)) 00808 buff.write(_struct_12d.pack(*self.action_goal.goal.target.region.cam_info.P)) 00809 _x = self 00810 buff.write(_struct_6IB3I.pack(_x.action_goal.goal.target.region.cam_info.binning_x, _x.action_goal.goal.target.region.cam_info.binning_y, _x.action_goal.goal.target.region.cam_info.roi.x_offset, _x.action_goal.goal.target.region.cam_info.roi.y_offset, _x.action_goal.goal.target.region.cam_info.roi.height, _x.action_goal.goal.target.region.cam_info.roi.width, _x.action_goal.goal.target.region.cam_info.roi.do_rectify, _x.action_goal.goal.target.region.roi_box_pose.header.seq, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.secs, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.nsecs)) 00811 _x = self.action_goal.goal.target.region.roi_box_pose.header.frame_id 00812 length = len(_x) 00813 buff.write(struct.pack('<I%ss'%length, length, _x)) 00814 _x = self 00815 buff.write(_struct_10d.pack(_x.action_goal.goal.target.region.roi_box_pose.pose.position.x, _x.action_goal.goal.target.region.roi_box_pose.pose.position.y, _x.action_goal.goal.target.region.roi_box_pose.pose.position.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.x, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.y, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.w, _x.action_goal.goal.target.region.roi_box_dims.x, _x.action_goal.goal.target.region.roi_box_dims.y, _x.action_goal.goal.target.region.roi_box_dims.z)) 00816 _x = self.action_goal.goal.target.collision_name 00817 length = len(_x) 00818 buff.write(struct.pack('<I%ss'%length, length, _x)) 00819 _x = self.action_goal.goal.collision_object_name 00820 length = len(_x) 00821 buff.write(struct.pack('<I%ss'%length, length, _x)) 00822 _x = self.action_goal.goal.collision_support_surface_name 00823 length = len(_x) 00824 buff.write(struct.pack('<I%ss'%length, length, _x)) 00825 length = len(self.action_goal.goal.grasps_to_evaluate) 00826 buff.write(_struct_I.pack(length)) 00827 for val1 in self.action_goal.goal.grasps_to_evaluate: 00828 _v7 = val1.pre_grasp_posture 00829 _v8 = _v7.header 00830 buff.write(_struct_I.pack(_v8.seq)) 00831 _v9 = _v8.stamp 00832 _x = _v9 00833 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00834 _x = _v8.frame_id 00835 length = len(_x) 00836 buff.write(struct.pack('<I%ss'%length, length, _x)) 00837 length = len(_v7.name) 00838 buff.write(_struct_I.pack(length)) 00839 for val3 in _v7.name: 00840 length = len(val3) 00841 buff.write(struct.pack('<I%ss'%length, length, val3)) 00842 length = len(_v7.position) 00843 buff.write(_struct_I.pack(length)) 00844 pattern = '<%sd'%length 00845 buff.write(struct.pack(pattern, *_v7.position)) 00846 length = len(_v7.velocity) 00847 buff.write(_struct_I.pack(length)) 00848 pattern = '<%sd'%length 00849 buff.write(struct.pack(pattern, *_v7.velocity)) 00850 length = len(_v7.effort) 00851 buff.write(_struct_I.pack(length)) 00852 pattern = '<%sd'%length 00853 buff.write(struct.pack(pattern, *_v7.effort)) 00854 _v10 = val1.grasp_posture 00855 _v11 = _v10.header 00856 buff.write(_struct_I.pack(_v11.seq)) 00857 _v12 = _v11.stamp 00858 _x = _v12 00859 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00860 _x = _v11.frame_id 00861 length = len(_x) 00862 buff.write(struct.pack('<I%ss'%length, length, _x)) 00863 length = len(_v10.name) 00864 buff.write(_struct_I.pack(length)) 00865 for val3 in _v10.name: 00866 length = len(val3) 00867 buff.write(struct.pack('<I%ss'%length, length, val3)) 00868 length = len(_v10.position) 00869 buff.write(_struct_I.pack(length)) 00870 pattern = '<%sd'%length 00871 buff.write(struct.pack(pattern, *_v10.position)) 00872 length = len(_v10.velocity) 00873 buff.write(_struct_I.pack(length)) 00874 pattern = '<%sd'%length 00875 buff.write(struct.pack(pattern, *_v10.velocity)) 00876 length = len(_v10.effort) 00877 buff.write(_struct_I.pack(length)) 00878 pattern = '<%sd'%length 00879 buff.write(struct.pack(pattern, *_v10.effort)) 00880 _v13 = val1.grasp_pose 00881 _v14 = _v13.position 00882 _x = _v14 00883 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00884 _v15 = _v13.orientation 00885 _x = _v15 00886 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00887 _x = val1 00888 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 00889 length = len(val1.moved_obstacles) 00890 buff.write(_struct_I.pack(length)) 00891 for val2 in val1.moved_obstacles: 00892 _x = val2.reference_frame_id 00893 length = len(_x) 00894 buff.write(struct.pack('<I%ss'%length, length, _x)) 00895 length = len(val2.potential_models) 00896 buff.write(_struct_I.pack(length)) 00897 for val3 in val2.potential_models: 00898 buff.write(_struct_i.pack(val3.model_id)) 00899 _v16 = val3.pose 00900 _v17 = _v16.header 00901 buff.write(_struct_I.pack(_v17.seq)) 00902 _v18 = _v17.stamp 00903 _x = _v18 00904 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00905 _x = _v17.frame_id 00906 length = len(_x) 00907 buff.write(struct.pack('<I%ss'%length, length, _x)) 00908 _v19 = _v16.pose 00909 _v20 = _v19.position 00910 _x = _v20 00911 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 00912 _v21 = _v19.orientation 00913 _x = _v21 00914 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 00915 buff.write(_struct_f.pack(val3.confidence)) 00916 _x = val3.detector_name 00917 length = len(_x) 00918 buff.write(struct.pack('<I%ss'%length, length, _x)) 00919 _v22 = val2.cluster 00920 _v23 = _v22.header 00921 buff.write(_struct_I.pack(_v23.seq)) 00922 _v24 = _v23.stamp 00923 _x = _v24 00924 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00925 _x = _v23.frame_id 00926 length = len(_x) 00927 buff.write(struct.pack('<I%ss'%length, length, _x)) 00928 length = len(_v22.points) 00929 buff.write(_struct_I.pack(length)) 00930 for val4 in _v22.points: 00931 _x = val4 00932 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 00933 length = len(_v22.channels) 00934 buff.write(_struct_I.pack(length)) 00935 for val4 in _v22.channels: 00936 _x = val4.name 00937 length = len(_x) 00938 buff.write(struct.pack('<I%ss'%length, length, _x)) 00939 length = len(val4.values) 00940 buff.write(_struct_I.pack(length)) 00941 pattern = '<%sf'%length 00942 buff.write(struct.pack(pattern, *val4.values)) 00943 _v25 = val2.region 00944 _v26 = _v25.cloud 00945 _v27 = _v26.header 00946 buff.write(_struct_I.pack(_v27.seq)) 00947 _v28 = _v27.stamp 00948 _x = _v28 00949 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00950 _x = _v27.frame_id 00951 length = len(_x) 00952 buff.write(struct.pack('<I%ss'%length, length, _x)) 00953 _x = _v26 00954 buff.write(_struct_2I.pack(_x.height, _x.width)) 00955 length = len(_v26.fields) 00956 buff.write(_struct_I.pack(length)) 00957 for val5 in _v26.fields: 00958 _x = val5.name 00959 length = len(_x) 00960 buff.write(struct.pack('<I%ss'%length, length, _x)) 00961 _x = val5 00962 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 00963 _x = _v26 00964 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 00965 _x = _v26.data 00966 length = len(_x) 00967 # - if encoded as a list instead, serialize as bytes instead of string 00968 if type(_x) in [list, tuple]: 00969 buff.write(struct.pack('<I%sB'%length, length, *_x)) 00970 else: 00971 buff.write(struct.pack('<I%ss'%length, length, _x)) 00972 buff.write(_struct_B.pack(_v26.is_dense)) 00973 length = len(_v25.mask) 00974 buff.write(_struct_I.pack(length)) 00975 pattern = '<%si'%length 00976 buff.write(struct.pack(pattern, *_v25.mask)) 00977 _v29 = _v25.image 00978 _v30 = _v29.header 00979 buff.write(_struct_I.pack(_v30.seq)) 00980 _v31 = _v30.stamp 00981 _x = _v31 00982 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 00983 _x = _v30.frame_id 00984 length = len(_x) 00985 buff.write(struct.pack('<I%ss'%length, length, _x)) 00986 _x = _v29 00987 buff.write(_struct_2I.pack(_x.height, _x.width)) 00988 _x = _v29.encoding 00989 length = len(_x) 00990 buff.write(struct.pack('<I%ss'%length, length, _x)) 00991 _x = _v29 00992 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 00993 _x = _v29.data 00994 length = len(_x) 00995 # - if encoded as a list instead, serialize as bytes instead of string 00996 if type(_x) in [list, tuple]: 00997 buff.write(struct.pack('<I%sB'%length, length, *_x)) 00998 else: 00999 buff.write(struct.pack('<I%ss'%length, length, _x)) 01000 _v32 = _v25.disparity_image 01001 _v33 = _v32.header 01002 buff.write(_struct_I.pack(_v33.seq)) 01003 _v34 = _v33.stamp 01004 _x = _v34 01005 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01006 _x = _v33.frame_id 01007 length = len(_x) 01008 buff.write(struct.pack('<I%ss'%length, length, _x)) 01009 _x = _v32 01010 buff.write(_struct_2I.pack(_x.height, _x.width)) 01011 _x = _v32.encoding 01012 length = len(_x) 01013 buff.write(struct.pack('<I%ss'%length, length, _x)) 01014 _x = _v32 01015 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01016 _x = _v32.data 01017 length = len(_x) 01018 # - if encoded as a list instead, serialize as bytes instead of string 01019 if type(_x) in [list, tuple]: 01020 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01021 else: 01022 buff.write(struct.pack('<I%ss'%length, length, _x)) 01023 _v35 = _v25.cam_info 01024 _v36 = _v35.header 01025 buff.write(_struct_I.pack(_v36.seq)) 01026 _v37 = _v36.stamp 01027 _x = _v37 01028 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01029 _x = _v36.frame_id 01030 length = len(_x) 01031 buff.write(struct.pack('<I%ss'%length, length, _x)) 01032 _x = _v35 01033 buff.write(_struct_2I.pack(_x.height, _x.width)) 01034 _x = _v35.distortion_model 01035 length = len(_x) 01036 buff.write(struct.pack('<I%ss'%length, length, _x)) 01037 length = len(_v35.D) 01038 buff.write(_struct_I.pack(length)) 01039 pattern = '<%sd'%length 01040 buff.write(struct.pack(pattern, *_v35.D)) 01041 buff.write(_struct_9d.pack(*_v35.K)) 01042 buff.write(_struct_9d.pack(*_v35.R)) 01043 buff.write(_struct_12d.pack(*_v35.P)) 01044 _x = _v35 01045 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 01046 _v38 = _v35.roi 01047 _x = _v38 01048 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 01049 _v39 = _v25.roi_box_pose 01050 _v40 = _v39.header 01051 buff.write(_struct_I.pack(_v40.seq)) 01052 _v41 = _v40.stamp 01053 _x = _v41 01054 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01055 _x = _v40.frame_id 01056 length = len(_x) 01057 buff.write(struct.pack('<I%ss'%length, length, _x)) 01058 _v42 = _v39.pose 01059 _v43 = _v42.position 01060 _x = _v43 01061 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01062 _v44 = _v42.orientation 01063 _x = _v44 01064 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01065 _v45 = _v25.roi_box_dims 01066 _x = _v45 01067 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01068 _x = val2.collision_name 01069 length = len(_x) 01070 buff.write(struct.pack('<I%ss'%length, length, _x)) 01071 length = len(self.action_goal.goal.movable_obstacles) 01072 buff.write(_struct_I.pack(length)) 01073 for val1 in self.action_goal.goal.movable_obstacles: 01074 _x = val1.reference_frame_id 01075 length = len(_x) 01076 buff.write(struct.pack('<I%ss'%length, length, _x)) 01077 length = len(val1.potential_models) 01078 buff.write(_struct_I.pack(length)) 01079 for val2 in val1.potential_models: 01080 buff.write(_struct_i.pack(val2.model_id)) 01081 _v46 = val2.pose 01082 _v47 = _v46.header 01083 buff.write(_struct_I.pack(_v47.seq)) 01084 _v48 = _v47.stamp 01085 _x = _v48 01086 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01087 _x = _v47.frame_id 01088 length = len(_x) 01089 buff.write(struct.pack('<I%ss'%length, length, _x)) 01090 _v49 = _v46.pose 01091 _v50 = _v49.position 01092 _x = _v50 01093 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01094 _v51 = _v49.orientation 01095 _x = _v51 01096 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01097 buff.write(_struct_f.pack(val2.confidence)) 01098 _x = val2.detector_name 01099 length = len(_x) 01100 buff.write(struct.pack('<I%ss'%length, length, _x)) 01101 _v52 = val1.cluster 01102 _v53 = _v52.header 01103 buff.write(_struct_I.pack(_v53.seq)) 01104 _v54 = _v53.stamp 01105 _x = _v54 01106 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01107 _x = _v53.frame_id 01108 length = len(_x) 01109 buff.write(struct.pack('<I%ss'%length, length, _x)) 01110 length = len(_v52.points) 01111 buff.write(_struct_I.pack(length)) 01112 for val3 in _v52.points: 01113 _x = val3 01114 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 01115 length = len(_v52.channels) 01116 buff.write(_struct_I.pack(length)) 01117 for val3 in _v52.channels: 01118 _x = val3.name 01119 length = len(_x) 01120 buff.write(struct.pack('<I%ss'%length, length, _x)) 01121 length = len(val3.values) 01122 buff.write(_struct_I.pack(length)) 01123 pattern = '<%sf'%length 01124 buff.write(struct.pack(pattern, *val3.values)) 01125 _v55 = val1.region 01126 _v56 = _v55.cloud 01127 _v57 = _v56.header 01128 buff.write(_struct_I.pack(_v57.seq)) 01129 _v58 = _v57.stamp 01130 _x = _v58 01131 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01132 _x = _v57.frame_id 01133 length = len(_x) 01134 buff.write(struct.pack('<I%ss'%length, length, _x)) 01135 _x = _v56 01136 buff.write(_struct_2I.pack(_x.height, _x.width)) 01137 length = len(_v56.fields) 01138 buff.write(_struct_I.pack(length)) 01139 for val4 in _v56.fields: 01140 _x = val4.name 01141 length = len(_x) 01142 buff.write(struct.pack('<I%ss'%length, length, _x)) 01143 _x = val4 01144 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 01145 _x = _v56 01146 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 01147 _x = _v56.data 01148 length = len(_x) 01149 # - if encoded as a list instead, serialize as bytes instead of string 01150 if type(_x) in [list, tuple]: 01151 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01152 else: 01153 buff.write(struct.pack('<I%ss'%length, length, _x)) 01154 buff.write(_struct_B.pack(_v56.is_dense)) 01155 length = len(_v55.mask) 01156 buff.write(_struct_I.pack(length)) 01157 pattern = '<%si'%length 01158 buff.write(struct.pack(pattern, *_v55.mask)) 01159 _v59 = _v55.image 01160 _v60 = _v59.header 01161 buff.write(_struct_I.pack(_v60.seq)) 01162 _v61 = _v60.stamp 01163 _x = _v61 01164 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01165 _x = _v60.frame_id 01166 length = len(_x) 01167 buff.write(struct.pack('<I%ss'%length, length, _x)) 01168 _x = _v59 01169 buff.write(_struct_2I.pack(_x.height, _x.width)) 01170 _x = _v59.encoding 01171 length = len(_x) 01172 buff.write(struct.pack('<I%ss'%length, length, _x)) 01173 _x = _v59 01174 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01175 _x = _v59.data 01176 length = len(_x) 01177 # - if encoded as a list instead, serialize as bytes instead of string 01178 if type(_x) in [list, tuple]: 01179 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01180 else: 01181 buff.write(struct.pack('<I%ss'%length, length, _x)) 01182 _v62 = _v55.disparity_image 01183 _v63 = _v62.header 01184 buff.write(_struct_I.pack(_v63.seq)) 01185 _v64 = _v63.stamp 01186 _x = _v64 01187 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01188 _x = _v63.frame_id 01189 length = len(_x) 01190 buff.write(struct.pack('<I%ss'%length, length, _x)) 01191 _x = _v62 01192 buff.write(_struct_2I.pack(_x.height, _x.width)) 01193 _x = _v62.encoding 01194 length = len(_x) 01195 buff.write(struct.pack('<I%ss'%length, length, _x)) 01196 _x = _v62 01197 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01198 _x = _v62.data 01199 length = len(_x) 01200 # - if encoded as a list instead, serialize as bytes instead of string 01201 if type(_x) in [list, tuple]: 01202 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01203 else: 01204 buff.write(struct.pack('<I%ss'%length, length, _x)) 01205 _v65 = _v55.cam_info 01206 _v66 = _v65.header 01207 buff.write(_struct_I.pack(_v66.seq)) 01208 _v67 = _v66.stamp 01209 _x = _v67 01210 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01211 _x = _v66.frame_id 01212 length = len(_x) 01213 buff.write(struct.pack('<I%ss'%length, length, _x)) 01214 _x = _v65 01215 buff.write(_struct_2I.pack(_x.height, _x.width)) 01216 _x = _v65.distortion_model 01217 length = len(_x) 01218 buff.write(struct.pack('<I%ss'%length, length, _x)) 01219 length = len(_v65.D) 01220 buff.write(_struct_I.pack(length)) 01221 pattern = '<%sd'%length 01222 buff.write(struct.pack(pattern, *_v65.D)) 01223 buff.write(_struct_9d.pack(*_v65.K)) 01224 buff.write(_struct_9d.pack(*_v65.R)) 01225 buff.write(_struct_12d.pack(*_v65.P)) 01226 _x = _v65 01227 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 01228 _v68 = _v65.roi 01229 _x = _v68 01230 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 01231 _v69 = _v55.roi_box_pose 01232 _v70 = _v69.header 01233 buff.write(_struct_I.pack(_v70.seq)) 01234 _v71 = _v70.stamp 01235 _x = _v71 01236 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01237 _x = _v70.frame_id 01238 length = len(_x) 01239 buff.write(struct.pack('<I%ss'%length, length, _x)) 01240 _v72 = _v69.pose 01241 _v73 = _v72.position 01242 _x = _v73 01243 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01244 _v74 = _v72.orientation 01245 _x = _v74 01246 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01247 _v75 = _v55.roi_box_dims 01248 _x = _v75 01249 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01250 _x = val1.collision_name 01251 length = len(_x) 01252 buff.write(struct.pack('<I%ss'%length, length, _x)) 01253 _x = self 01254 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 01255 _x = self.action_result.header.frame_id 01256 length = len(_x) 01257 buff.write(struct.pack('<I%ss'%length, length, _x)) 01258 _x = self 01259 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 01260 _x = self.action_result.status.goal_id.id 01261 length = len(_x) 01262 buff.write(struct.pack('<I%ss'%length, length, _x)) 01263 buff.write(_struct_B.pack(self.action_result.status.status)) 01264 _x = self.action_result.status.text 01265 length = len(_x) 01266 buff.write(struct.pack('<I%ss'%length, length, _x)) 01267 length = len(self.action_result.result.grasps) 01268 buff.write(_struct_I.pack(length)) 01269 for val1 in self.action_result.result.grasps: 01270 _v76 = val1.pre_grasp_posture 01271 _v77 = _v76.header 01272 buff.write(_struct_I.pack(_v77.seq)) 01273 _v78 = _v77.stamp 01274 _x = _v78 01275 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01276 _x = _v77.frame_id 01277 length = len(_x) 01278 buff.write(struct.pack('<I%ss'%length, length, _x)) 01279 length = len(_v76.name) 01280 buff.write(_struct_I.pack(length)) 01281 for val3 in _v76.name: 01282 length = len(val3) 01283 buff.write(struct.pack('<I%ss'%length, length, val3)) 01284 length = len(_v76.position) 01285 buff.write(_struct_I.pack(length)) 01286 pattern = '<%sd'%length 01287 buff.write(struct.pack(pattern, *_v76.position)) 01288 length = len(_v76.velocity) 01289 buff.write(_struct_I.pack(length)) 01290 pattern = '<%sd'%length 01291 buff.write(struct.pack(pattern, *_v76.velocity)) 01292 length = len(_v76.effort) 01293 buff.write(_struct_I.pack(length)) 01294 pattern = '<%sd'%length 01295 buff.write(struct.pack(pattern, *_v76.effort)) 01296 _v79 = val1.grasp_posture 01297 _v80 = _v79.header 01298 buff.write(_struct_I.pack(_v80.seq)) 01299 _v81 = _v80.stamp 01300 _x = _v81 01301 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01302 _x = _v80.frame_id 01303 length = len(_x) 01304 buff.write(struct.pack('<I%ss'%length, length, _x)) 01305 length = len(_v79.name) 01306 buff.write(_struct_I.pack(length)) 01307 for val3 in _v79.name: 01308 length = len(val3) 01309 buff.write(struct.pack('<I%ss'%length, length, val3)) 01310 length = len(_v79.position) 01311 buff.write(_struct_I.pack(length)) 01312 pattern = '<%sd'%length 01313 buff.write(struct.pack(pattern, *_v79.position)) 01314 length = len(_v79.velocity) 01315 buff.write(_struct_I.pack(length)) 01316 pattern = '<%sd'%length 01317 buff.write(struct.pack(pattern, *_v79.velocity)) 01318 length = len(_v79.effort) 01319 buff.write(_struct_I.pack(length)) 01320 pattern = '<%sd'%length 01321 buff.write(struct.pack(pattern, *_v79.effort)) 01322 _v82 = val1.grasp_pose 01323 _v83 = _v82.position 01324 _x = _v83 01325 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01326 _v84 = _v82.orientation 01327 _x = _v84 01328 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01329 _x = val1 01330 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 01331 length = len(val1.moved_obstacles) 01332 buff.write(_struct_I.pack(length)) 01333 for val2 in val1.moved_obstacles: 01334 _x = val2.reference_frame_id 01335 length = len(_x) 01336 buff.write(struct.pack('<I%ss'%length, length, _x)) 01337 length = len(val2.potential_models) 01338 buff.write(_struct_I.pack(length)) 01339 for val3 in val2.potential_models: 01340 buff.write(_struct_i.pack(val3.model_id)) 01341 _v85 = val3.pose 01342 _v86 = _v85.header 01343 buff.write(_struct_I.pack(_v86.seq)) 01344 _v87 = _v86.stamp 01345 _x = _v87 01346 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01347 _x = _v86.frame_id 01348 length = len(_x) 01349 buff.write(struct.pack('<I%ss'%length, length, _x)) 01350 _v88 = _v85.pose 01351 _v89 = _v88.position 01352 _x = _v89 01353 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01354 _v90 = _v88.orientation 01355 _x = _v90 01356 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01357 buff.write(_struct_f.pack(val3.confidence)) 01358 _x = val3.detector_name 01359 length = len(_x) 01360 buff.write(struct.pack('<I%ss'%length, length, _x)) 01361 _v91 = val2.cluster 01362 _v92 = _v91.header 01363 buff.write(_struct_I.pack(_v92.seq)) 01364 _v93 = _v92.stamp 01365 _x = _v93 01366 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01367 _x = _v92.frame_id 01368 length = len(_x) 01369 buff.write(struct.pack('<I%ss'%length, length, _x)) 01370 length = len(_v91.points) 01371 buff.write(_struct_I.pack(length)) 01372 for val4 in _v91.points: 01373 _x = val4 01374 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 01375 length = len(_v91.channels) 01376 buff.write(_struct_I.pack(length)) 01377 for val4 in _v91.channels: 01378 _x = val4.name 01379 length = len(_x) 01380 buff.write(struct.pack('<I%ss'%length, length, _x)) 01381 length = len(val4.values) 01382 buff.write(_struct_I.pack(length)) 01383 pattern = '<%sf'%length 01384 buff.write(struct.pack(pattern, *val4.values)) 01385 _v94 = val2.region 01386 _v95 = _v94.cloud 01387 _v96 = _v95.header 01388 buff.write(_struct_I.pack(_v96.seq)) 01389 _v97 = _v96.stamp 01390 _x = _v97 01391 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01392 _x = _v96.frame_id 01393 length = len(_x) 01394 buff.write(struct.pack('<I%ss'%length, length, _x)) 01395 _x = _v95 01396 buff.write(_struct_2I.pack(_x.height, _x.width)) 01397 length = len(_v95.fields) 01398 buff.write(_struct_I.pack(length)) 01399 for val5 in _v95.fields: 01400 _x = val5.name 01401 length = len(_x) 01402 buff.write(struct.pack('<I%ss'%length, length, _x)) 01403 _x = val5 01404 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 01405 _x = _v95 01406 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 01407 _x = _v95.data 01408 length = len(_x) 01409 # - if encoded as a list instead, serialize as bytes instead of string 01410 if type(_x) in [list, tuple]: 01411 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01412 else: 01413 buff.write(struct.pack('<I%ss'%length, length, _x)) 01414 buff.write(_struct_B.pack(_v95.is_dense)) 01415 length = len(_v94.mask) 01416 buff.write(_struct_I.pack(length)) 01417 pattern = '<%si'%length 01418 buff.write(struct.pack(pattern, *_v94.mask)) 01419 _v98 = _v94.image 01420 _v99 = _v98.header 01421 buff.write(_struct_I.pack(_v99.seq)) 01422 _v100 = _v99.stamp 01423 _x = _v100 01424 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01425 _x = _v99.frame_id 01426 length = len(_x) 01427 buff.write(struct.pack('<I%ss'%length, length, _x)) 01428 _x = _v98 01429 buff.write(_struct_2I.pack(_x.height, _x.width)) 01430 _x = _v98.encoding 01431 length = len(_x) 01432 buff.write(struct.pack('<I%ss'%length, length, _x)) 01433 _x = _v98 01434 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01435 _x = _v98.data 01436 length = len(_x) 01437 # - if encoded as a list instead, serialize as bytes instead of string 01438 if type(_x) in [list, tuple]: 01439 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01440 else: 01441 buff.write(struct.pack('<I%ss'%length, length, _x)) 01442 _v101 = _v94.disparity_image 01443 _v102 = _v101.header 01444 buff.write(_struct_I.pack(_v102.seq)) 01445 _v103 = _v102.stamp 01446 _x = _v103 01447 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01448 _x = _v102.frame_id 01449 length = len(_x) 01450 buff.write(struct.pack('<I%ss'%length, length, _x)) 01451 _x = _v101 01452 buff.write(_struct_2I.pack(_x.height, _x.width)) 01453 _x = _v101.encoding 01454 length = len(_x) 01455 buff.write(struct.pack('<I%ss'%length, length, _x)) 01456 _x = _v101 01457 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01458 _x = _v101.data 01459 length = len(_x) 01460 # - if encoded as a list instead, serialize as bytes instead of string 01461 if type(_x) in [list, tuple]: 01462 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01463 else: 01464 buff.write(struct.pack('<I%ss'%length, length, _x)) 01465 _v104 = _v94.cam_info 01466 _v105 = _v104.header 01467 buff.write(_struct_I.pack(_v105.seq)) 01468 _v106 = _v105.stamp 01469 _x = _v106 01470 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01471 _x = _v105.frame_id 01472 length = len(_x) 01473 buff.write(struct.pack('<I%ss'%length, length, _x)) 01474 _x = _v104 01475 buff.write(_struct_2I.pack(_x.height, _x.width)) 01476 _x = _v104.distortion_model 01477 length = len(_x) 01478 buff.write(struct.pack('<I%ss'%length, length, _x)) 01479 length = len(_v104.D) 01480 buff.write(_struct_I.pack(length)) 01481 pattern = '<%sd'%length 01482 buff.write(struct.pack(pattern, *_v104.D)) 01483 buff.write(_struct_9d.pack(*_v104.K)) 01484 buff.write(_struct_9d.pack(*_v104.R)) 01485 buff.write(_struct_12d.pack(*_v104.P)) 01486 _x = _v104 01487 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 01488 _v107 = _v104.roi 01489 _x = _v107 01490 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 01491 _v108 = _v94.roi_box_pose 01492 _v109 = _v108.header 01493 buff.write(_struct_I.pack(_v109.seq)) 01494 _v110 = _v109.stamp 01495 _x = _v110 01496 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01497 _x = _v109.frame_id 01498 length = len(_x) 01499 buff.write(struct.pack('<I%ss'%length, length, _x)) 01500 _v111 = _v108.pose 01501 _v112 = _v111.position 01502 _x = _v112 01503 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01504 _v113 = _v111.orientation 01505 _x = _v113 01506 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01507 _v114 = _v94.roi_box_dims 01508 _x = _v114 01509 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01510 _x = val2.collision_name 01511 length = len(_x) 01512 buff.write(struct.pack('<I%ss'%length, length, _x)) 01513 _x = self 01514 buff.write(_struct_i3I.pack(_x.action_result.result.error_code.value, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 01515 _x = self.action_feedback.header.frame_id 01516 length = len(_x) 01517 buff.write(struct.pack('<I%ss'%length, length, _x)) 01518 _x = self 01519 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 01520 _x = self.action_feedback.status.goal_id.id 01521 length = len(_x) 01522 buff.write(struct.pack('<I%ss'%length, length, _x)) 01523 buff.write(_struct_B.pack(self.action_feedback.status.status)) 01524 _x = self.action_feedback.status.text 01525 length = len(_x) 01526 buff.write(struct.pack('<I%ss'%length, length, _x)) 01527 length = len(self.action_feedback.feedback.grasps) 01528 buff.write(_struct_I.pack(length)) 01529 for val1 in self.action_feedback.feedback.grasps: 01530 _v115 = val1.pre_grasp_posture 01531 _v116 = _v115.header 01532 buff.write(_struct_I.pack(_v116.seq)) 01533 _v117 = _v116.stamp 01534 _x = _v117 01535 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01536 _x = _v116.frame_id 01537 length = len(_x) 01538 buff.write(struct.pack('<I%ss'%length, length, _x)) 01539 length = len(_v115.name) 01540 buff.write(_struct_I.pack(length)) 01541 for val3 in _v115.name: 01542 length = len(val3) 01543 buff.write(struct.pack('<I%ss'%length, length, val3)) 01544 length = len(_v115.position) 01545 buff.write(_struct_I.pack(length)) 01546 pattern = '<%sd'%length 01547 buff.write(struct.pack(pattern, *_v115.position)) 01548 length = len(_v115.velocity) 01549 buff.write(_struct_I.pack(length)) 01550 pattern = '<%sd'%length 01551 buff.write(struct.pack(pattern, *_v115.velocity)) 01552 length = len(_v115.effort) 01553 buff.write(_struct_I.pack(length)) 01554 pattern = '<%sd'%length 01555 buff.write(struct.pack(pattern, *_v115.effort)) 01556 _v118 = val1.grasp_posture 01557 _v119 = _v118.header 01558 buff.write(_struct_I.pack(_v119.seq)) 01559 _v120 = _v119.stamp 01560 _x = _v120 01561 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01562 _x = _v119.frame_id 01563 length = len(_x) 01564 buff.write(struct.pack('<I%ss'%length, length, _x)) 01565 length = len(_v118.name) 01566 buff.write(_struct_I.pack(length)) 01567 for val3 in _v118.name: 01568 length = len(val3) 01569 buff.write(struct.pack('<I%ss'%length, length, val3)) 01570 length = len(_v118.position) 01571 buff.write(_struct_I.pack(length)) 01572 pattern = '<%sd'%length 01573 buff.write(struct.pack(pattern, *_v118.position)) 01574 length = len(_v118.velocity) 01575 buff.write(_struct_I.pack(length)) 01576 pattern = '<%sd'%length 01577 buff.write(struct.pack(pattern, *_v118.velocity)) 01578 length = len(_v118.effort) 01579 buff.write(_struct_I.pack(length)) 01580 pattern = '<%sd'%length 01581 buff.write(struct.pack(pattern, *_v118.effort)) 01582 _v121 = val1.grasp_pose 01583 _v122 = _v121.position 01584 _x = _v122 01585 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01586 _v123 = _v121.orientation 01587 _x = _v123 01588 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01589 _x = val1 01590 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 01591 length = len(val1.moved_obstacles) 01592 buff.write(_struct_I.pack(length)) 01593 for val2 in val1.moved_obstacles: 01594 _x = val2.reference_frame_id 01595 length = len(_x) 01596 buff.write(struct.pack('<I%ss'%length, length, _x)) 01597 length = len(val2.potential_models) 01598 buff.write(_struct_I.pack(length)) 01599 for val3 in val2.potential_models: 01600 buff.write(_struct_i.pack(val3.model_id)) 01601 _v124 = val3.pose 01602 _v125 = _v124.header 01603 buff.write(_struct_I.pack(_v125.seq)) 01604 _v126 = _v125.stamp 01605 _x = _v126 01606 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01607 _x = _v125.frame_id 01608 length = len(_x) 01609 buff.write(struct.pack('<I%ss'%length, length, _x)) 01610 _v127 = _v124.pose 01611 _v128 = _v127.position 01612 _x = _v128 01613 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01614 _v129 = _v127.orientation 01615 _x = _v129 01616 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01617 buff.write(_struct_f.pack(val3.confidence)) 01618 _x = val3.detector_name 01619 length = len(_x) 01620 buff.write(struct.pack('<I%ss'%length, length, _x)) 01621 _v130 = val2.cluster 01622 _v131 = _v130.header 01623 buff.write(_struct_I.pack(_v131.seq)) 01624 _v132 = _v131.stamp 01625 _x = _v132 01626 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01627 _x = _v131.frame_id 01628 length = len(_x) 01629 buff.write(struct.pack('<I%ss'%length, length, _x)) 01630 length = len(_v130.points) 01631 buff.write(_struct_I.pack(length)) 01632 for val4 in _v130.points: 01633 _x = val4 01634 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 01635 length = len(_v130.channels) 01636 buff.write(_struct_I.pack(length)) 01637 for val4 in _v130.channels: 01638 _x = val4.name 01639 length = len(_x) 01640 buff.write(struct.pack('<I%ss'%length, length, _x)) 01641 length = len(val4.values) 01642 buff.write(_struct_I.pack(length)) 01643 pattern = '<%sf'%length 01644 buff.write(struct.pack(pattern, *val4.values)) 01645 _v133 = val2.region 01646 _v134 = _v133.cloud 01647 _v135 = _v134.header 01648 buff.write(_struct_I.pack(_v135.seq)) 01649 _v136 = _v135.stamp 01650 _x = _v136 01651 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01652 _x = _v135.frame_id 01653 length = len(_x) 01654 buff.write(struct.pack('<I%ss'%length, length, _x)) 01655 _x = _v134 01656 buff.write(_struct_2I.pack(_x.height, _x.width)) 01657 length = len(_v134.fields) 01658 buff.write(_struct_I.pack(length)) 01659 for val5 in _v134.fields: 01660 _x = val5.name 01661 length = len(_x) 01662 buff.write(struct.pack('<I%ss'%length, length, _x)) 01663 _x = val5 01664 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 01665 _x = _v134 01666 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 01667 _x = _v134.data 01668 length = len(_x) 01669 # - if encoded as a list instead, serialize as bytes instead of string 01670 if type(_x) in [list, tuple]: 01671 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01672 else: 01673 buff.write(struct.pack('<I%ss'%length, length, _x)) 01674 buff.write(_struct_B.pack(_v134.is_dense)) 01675 length = len(_v133.mask) 01676 buff.write(_struct_I.pack(length)) 01677 pattern = '<%si'%length 01678 buff.write(struct.pack(pattern, *_v133.mask)) 01679 _v137 = _v133.image 01680 _v138 = _v137.header 01681 buff.write(_struct_I.pack(_v138.seq)) 01682 _v139 = _v138.stamp 01683 _x = _v139 01684 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01685 _x = _v138.frame_id 01686 length = len(_x) 01687 buff.write(struct.pack('<I%ss'%length, length, _x)) 01688 _x = _v137 01689 buff.write(_struct_2I.pack(_x.height, _x.width)) 01690 _x = _v137.encoding 01691 length = len(_x) 01692 buff.write(struct.pack('<I%ss'%length, length, _x)) 01693 _x = _v137 01694 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01695 _x = _v137.data 01696 length = len(_x) 01697 # - if encoded as a list instead, serialize as bytes instead of string 01698 if type(_x) in [list, tuple]: 01699 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01700 else: 01701 buff.write(struct.pack('<I%ss'%length, length, _x)) 01702 _v140 = _v133.disparity_image 01703 _v141 = _v140.header 01704 buff.write(_struct_I.pack(_v141.seq)) 01705 _v142 = _v141.stamp 01706 _x = _v142 01707 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01708 _x = _v141.frame_id 01709 length = len(_x) 01710 buff.write(struct.pack('<I%ss'%length, length, _x)) 01711 _x = _v140 01712 buff.write(_struct_2I.pack(_x.height, _x.width)) 01713 _x = _v140.encoding 01714 length = len(_x) 01715 buff.write(struct.pack('<I%ss'%length, length, _x)) 01716 _x = _v140 01717 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 01718 _x = _v140.data 01719 length = len(_x) 01720 # - if encoded as a list instead, serialize as bytes instead of string 01721 if type(_x) in [list, tuple]: 01722 buff.write(struct.pack('<I%sB'%length, length, *_x)) 01723 else: 01724 buff.write(struct.pack('<I%ss'%length, length, _x)) 01725 _v143 = _v133.cam_info 01726 _v144 = _v143.header 01727 buff.write(_struct_I.pack(_v144.seq)) 01728 _v145 = _v144.stamp 01729 _x = _v145 01730 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01731 _x = _v144.frame_id 01732 length = len(_x) 01733 buff.write(struct.pack('<I%ss'%length, length, _x)) 01734 _x = _v143 01735 buff.write(_struct_2I.pack(_x.height, _x.width)) 01736 _x = _v143.distortion_model 01737 length = len(_x) 01738 buff.write(struct.pack('<I%ss'%length, length, _x)) 01739 length = len(_v143.D) 01740 buff.write(_struct_I.pack(length)) 01741 pattern = '<%sd'%length 01742 buff.write(struct.pack(pattern, *_v143.D)) 01743 buff.write(_struct_9d.pack(*_v143.K)) 01744 buff.write(_struct_9d.pack(*_v143.R)) 01745 buff.write(_struct_12d.pack(*_v143.P)) 01746 _x = _v143 01747 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 01748 _v146 = _v143.roi 01749 _x = _v146 01750 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 01751 _v147 = _v133.roi_box_pose 01752 _v148 = _v147.header 01753 buff.write(_struct_I.pack(_v148.seq)) 01754 _v149 = _v148.stamp 01755 _x = _v149 01756 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 01757 _x = _v148.frame_id 01758 length = len(_x) 01759 buff.write(struct.pack('<I%ss'%length, length, _x)) 01760 _v150 = _v147.pose 01761 _v151 = _v150.position 01762 _x = _v151 01763 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01764 _v152 = _v150.orientation 01765 _x = _v152 01766 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 01767 _v153 = _v133.roi_box_dims 01768 _x = _v153 01769 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 01770 _x = val2.collision_name 01771 length = len(_x) 01772 buff.write(struct.pack('<I%ss'%length, length, _x)) 01773 except struct.error as se: self._check_types(se) 01774 except TypeError as te: self._check_types(te) 01775 01776 def deserialize(self, str): 01777 """ 01778 unpack serialized message in str into this message instance 01779 @param str: byte array of serialized message 01780 @type str: str 01781 """ 01782 try: 01783 if self.action_goal is None: 01784 self.action_goal = object_manipulation_msgs.msg.GraspPlanningActionGoal() 01785 if self.action_result is None: 01786 self.action_result = object_manipulation_msgs.msg.GraspPlanningActionResult() 01787 if self.action_feedback is None: 01788 self.action_feedback = object_manipulation_msgs.msg.GraspPlanningActionFeedback() 01789 end = 0 01790 _x = self 01791 start = end 01792 end += 12 01793 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01794 start = end 01795 end += 4 01796 (length,) = _struct_I.unpack(str[start:end]) 01797 start = end 01798 end += length 01799 self.action_goal.header.frame_id = str[start:end] 01800 _x = self 01801 start = end 01802 end += 8 01803 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 01804 start = end 01805 end += 4 01806 (length,) = _struct_I.unpack(str[start:end]) 01807 start = end 01808 end += length 01809 self.action_goal.goal_id.id = str[start:end] 01810 start = end 01811 end += 4 01812 (length,) = _struct_I.unpack(str[start:end]) 01813 start = end 01814 end += length 01815 self.action_goal.goal.arm_name = str[start:end] 01816 start = end 01817 end += 4 01818 (length,) = _struct_I.unpack(str[start:end]) 01819 start = end 01820 end += length 01821 self.action_goal.goal.target.reference_frame_id = str[start:end] 01822 start = end 01823 end += 4 01824 (length,) = _struct_I.unpack(str[start:end]) 01825 self.action_goal.goal.target.potential_models = [] 01826 for i in range(0, length): 01827 val1 = household_objects_database_msgs.msg.DatabaseModelPose() 01828 start = end 01829 end += 4 01830 (val1.model_id,) = _struct_i.unpack(str[start:end]) 01831 _v154 = val1.pose 01832 _v155 = _v154.header 01833 start = end 01834 end += 4 01835 (_v155.seq,) = _struct_I.unpack(str[start:end]) 01836 _v156 = _v155.stamp 01837 _x = _v156 01838 start = end 01839 end += 8 01840 (_x.secs, _x.nsecs,) = _struct_2I.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 _v155.frame_id = str[start:end] 01847 _v157 = _v154.pose 01848 _v158 = _v157.position 01849 _x = _v158 01850 start = end 01851 end += 24 01852 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 01853 _v159 = _v157.orientation 01854 _x = _v159 01855 start = end 01856 end += 32 01857 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 01858 start = end 01859 end += 4 01860 (val1.confidence,) = _struct_f.unpack(str[start:end]) 01861 start = end 01862 end += 4 01863 (length,) = _struct_I.unpack(str[start:end]) 01864 start = end 01865 end += length 01866 val1.detector_name = str[start:end] 01867 self.action_goal.goal.target.potential_models.append(val1) 01868 _x = self 01869 start = end 01870 end += 12 01871 (_x.action_goal.goal.target.cluster.header.seq, _x.action_goal.goal.target.cluster.header.stamp.secs, _x.action_goal.goal.target.cluster.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01872 start = end 01873 end += 4 01874 (length,) = _struct_I.unpack(str[start:end]) 01875 start = end 01876 end += length 01877 self.action_goal.goal.target.cluster.header.frame_id = str[start:end] 01878 start = end 01879 end += 4 01880 (length,) = _struct_I.unpack(str[start:end]) 01881 self.action_goal.goal.target.cluster.points = [] 01882 for i in range(0, length): 01883 val1 = geometry_msgs.msg.Point32() 01884 _x = val1 01885 start = end 01886 end += 12 01887 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 01888 self.action_goal.goal.target.cluster.points.append(val1) 01889 start = end 01890 end += 4 01891 (length,) = _struct_I.unpack(str[start:end]) 01892 self.action_goal.goal.target.cluster.channels = [] 01893 for i in range(0, length): 01894 val1 = sensor_msgs.msg.ChannelFloat32() 01895 start = end 01896 end += 4 01897 (length,) = _struct_I.unpack(str[start:end]) 01898 start = end 01899 end += length 01900 val1.name = str[start:end] 01901 start = end 01902 end += 4 01903 (length,) = _struct_I.unpack(str[start:end]) 01904 pattern = '<%sf'%length 01905 start = end 01906 end += struct.calcsize(pattern) 01907 val1.values = struct.unpack(pattern, str[start:end]) 01908 self.action_goal.goal.target.cluster.channels.append(val1) 01909 _x = self 01910 start = end 01911 end += 12 01912 (_x.action_goal.goal.target.region.cloud.header.seq, _x.action_goal.goal.target.region.cloud.header.stamp.secs, _x.action_goal.goal.target.region.cloud.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01913 start = end 01914 end += 4 01915 (length,) = _struct_I.unpack(str[start:end]) 01916 start = end 01917 end += length 01918 self.action_goal.goal.target.region.cloud.header.frame_id = str[start:end] 01919 _x = self 01920 start = end 01921 end += 8 01922 (_x.action_goal.goal.target.region.cloud.height, _x.action_goal.goal.target.region.cloud.width,) = _struct_2I.unpack(str[start:end]) 01923 start = end 01924 end += 4 01925 (length,) = _struct_I.unpack(str[start:end]) 01926 self.action_goal.goal.target.region.cloud.fields = [] 01927 for i in range(0, length): 01928 val1 = sensor_msgs.msg.PointField() 01929 start = end 01930 end += 4 01931 (length,) = _struct_I.unpack(str[start:end]) 01932 start = end 01933 end += length 01934 val1.name = str[start:end] 01935 _x = val1 01936 start = end 01937 end += 9 01938 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 01939 self.action_goal.goal.target.region.cloud.fields.append(val1) 01940 _x = self 01941 start = end 01942 end += 9 01943 (_x.action_goal.goal.target.region.cloud.is_bigendian, _x.action_goal.goal.target.region.cloud.point_step, _x.action_goal.goal.target.region.cloud.row_step,) = _struct_B2I.unpack(str[start:end]) 01944 self.action_goal.goal.target.region.cloud.is_bigendian = bool(self.action_goal.goal.target.region.cloud.is_bigendian) 01945 start = end 01946 end += 4 01947 (length,) = _struct_I.unpack(str[start:end]) 01948 start = end 01949 end += length 01950 self.action_goal.goal.target.region.cloud.data = str[start:end] 01951 start = end 01952 end += 1 01953 (self.action_goal.goal.target.region.cloud.is_dense,) = _struct_B.unpack(str[start:end]) 01954 self.action_goal.goal.target.region.cloud.is_dense = bool(self.action_goal.goal.target.region.cloud.is_dense) 01955 start = end 01956 end += 4 01957 (length,) = _struct_I.unpack(str[start:end]) 01958 pattern = '<%si'%length 01959 start = end 01960 end += struct.calcsize(pattern) 01961 self.action_goal.goal.target.region.mask = struct.unpack(pattern, str[start:end]) 01962 _x = self 01963 start = end 01964 end += 12 01965 (_x.action_goal.goal.target.region.image.header.seq, _x.action_goal.goal.target.region.image.header.stamp.secs, _x.action_goal.goal.target.region.image.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01966 start = end 01967 end += 4 01968 (length,) = _struct_I.unpack(str[start:end]) 01969 start = end 01970 end += length 01971 self.action_goal.goal.target.region.image.header.frame_id = str[start:end] 01972 _x = self 01973 start = end 01974 end += 8 01975 (_x.action_goal.goal.target.region.image.height, _x.action_goal.goal.target.region.image.width,) = _struct_2I.unpack(str[start:end]) 01976 start = end 01977 end += 4 01978 (length,) = _struct_I.unpack(str[start:end]) 01979 start = end 01980 end += length 01981 self.action_goal.goal.target.region.image.encoding = str[start:end] 01982 _x = self 01983 start = end 01984 end += 5 01985 (_x.action_goal.goal.target.region.image.is_bigendian, _x.action_goal.goal.target.region.image.step,) = _struct_BI.unpack(str[start:end]) 01986 start = end 01987 end += 4 01988 (length,) = _struct_I.unpack(str[start:end]) 01989 start = end 01990 end += length 01991 self.action_goal.goal.target.region.image.data = str[start:end] 01992 _x = self 01993 start = end 01994 end += 12 01995 (_x.action_goal.goal.target.region.disparity_image.header.seq, _x.action_goal.goal.target.region.disparity_image.header.stamp.secs, _x.action_goal.goal.target.region.disparity_image.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 01996 start = end 01997 end += 4 01998 (length,) = _struct_I.unpack(str[start:end]) 01999 start = end 02000 end += length 02001 self.action_goal.goal.target.region.disparity_image.header.frame_id = str[start:end] 02002 _x = self 02003 start = end 02004 end += 8 02005 (_x.action_goal.goal.target.region.disparity_image.height, _x.action_goal.goal.target.region.disparity_image.width,) = _struct_2I.unpack(str[start:end]) 02006 start = end 02007 end += 4 02008 (length,) = _struct_I.unpack(str[start:end]) 02009 start = end 02010 end += length 02011 self.action_goal.goal.target.region.disparity_image.encoding = str[start:end] 02012 _x = self 02013 start = end 02014 end += 5 02015 (_x.action_goal.goal.target.region.disparity_image.is_bigendian, _x.action_goal.goal.target.region.disparity_image.step,) = _struct_BI.unpack(str[start:end]) 02016 start = end 02017 end += 4 02018 (length,) = _struct_I.unpack(str[start:end]) 02019 start = end 02020 end += length 02021 self.action_goal.goal.target.region.disparity_image.data = str[start:end] 02022 _x = self 02023 start = end 02024 end += 12 02025 (_x.action_goal.goal.target.region.cam_info.header.seq, _x.action_goal.goal.target.region.cam_info.header.stamp.secs, _x.action_goal.goal.target.region.cam_info.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 02026 start = end 02027 end += 4 02028 (length,) = _struct_I.unpack(str[start:end]) 02029 start = end 02030 end += length 02031 self.action_goal.goal.target.region.cam_info.header.frame_id = str[start:end] 02032 _x = self 02033 start = end 02034 end += 8 02035 (_x.action_goal.goal.target.region.cam_info.height, _x.action_goal.goal.target.region.cam_info.width,) = _struct_2I.unpack(str[start:end]) 02036 start = end 02037 end += 4 02038 (length,) = _struct_I.unpack(str[start:end]) 02039 start = end 02040 end += length 02041 self.action_goal.goal.target.region.cam_info.distortion_model = str[start:end] 02042 start = end 02043 end += 4 02044 (length,) = _struct_I.unpack(str[start:end]) 02045 pattern = '<%sd'%length 02046 start = end 02047 end += struct.calcsize(pattern) 02048 self.action_goal.goal.target.region.cam_info.D = struct.unpack(pattern, str[start:end]) 02049 start = end 02050 end += 72 02051 self.action_goal.goal.target.region.cam_info.K = _struct_9d.unpack(str[start:end]) 02052 start = end 02053 end += 72 02054 self.action_goal.goal.target.region.cam_info.R = _struct_9d.unpack(str[start:end]) 02055 start = end 02056 end += 96 02057 self.action_goal.goal.target.region.cam_info.P = _struct_12d.unpack(str[start:end]) 02058 _x = self 02059 start = end 02060 end += 37 02061 (_x.action_goal.goal.target.region.cam_info.binning_x, _x.action_goal.goal.target.region.cam_info.binning_y, _x.action_goal.goal.target.region.cam_info.roi.x_offset, _x.action_goal.goal.target.region.cam_info.roi.y_offset, _x.action_goal.goal.target.region.cam_info.roi.height, _x.action_goal.goal.target.region.cam_info.roi.width, _x.action_goal.goal.target.region.cam_info.roi.do_rectify, _x.action_goal.goal.target.region.roi_box_pose.header.seq, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.secs, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.nsecs,) = _struct_6IB3I.unpack(str[start:end]) 02062 self.action_goal.goal.target.region.cam_info.roi.do_rectify = bool(self.action_goal.goal.target.region.cam_info.roi.do_rectify) 02063 start = end 02064 end += 4 02065 (length,) = _struct_I.unpack(str[start:end]) 02066 start = end 02067 end += length 02068 self.action_goal.goal.target.region.roi_box_pose.header.frame_id = str[start:end] 02069 _x = self 02070 start = end 02071 end += 80 02072 (_x.action_goal.goal.target.region.roi_box_pose.pose.position.x, _x.action_goal.goal.target.region.roi_box_pose.pose.position.y, _x.action_goal.goal.target.region.roi_box_pose.pose.position.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.x, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.y, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.w, _x.action_goal.goal.target.region.roi_box_dims.x, _x.action_goal.goal.target.region.roi_box_dims.y, _x.action_goal.goal.target.region.roi_box_dims.z,) = _struct_10d.unpack(str[start:end]) 02073 start = end 02074 end += 4 02075 (length,) = _struct_I.unpack(str[start:end]) 02076 start = end 02077 end += length 02078 self.action_goal.goal.target.collision_name = str[start:end] 02079 start = end 02080 end += 4 02081 (length,) = _struct_I.unpack(str[start:end]) 02082 start = end 02083 end += length 02084 self.action_goal.goal.collision_object_name = str[start:end] 02085 start = end 02086 end += 4 02087 (length,) = _struct_I.unpack(str[start:end]) 02088 start = end 02089 end += length 02090 self.action_goal.goal.collision_support_surface_name = str[start:end] 02091 start = end 02092 end += 4 02093 (length,) = _struct_I.unpack(str[start:end]) 02094 self.action_goal.goal.grasps_to_evaluate = [] 02095 for i in range(0, length): 02096 val1 = object_manipulation_msgs.msg.Grasp() 02097 _v160 = val1.pre_grasp_posture 02098 _v161 = _v160.header 02099 start = end 02100 end += 4 02101 (_v161.seq,) = _struct_I.unpack(str[start:end]) 02102 _v162 = _v161.stamp 02103 _x = _v162 02104 start = end 02105 end += 8 02106 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02107 start = end 02108 end += 4 02109 (length,) = _struct_I.unpack(str[start:end]) 02110 start = end 02111 end += length 02112 _v161.frame_id = str[start:end] 02113 start = end 02114 end += 4 02115 (length,) = _struct_I.unpack(str[start:end]) 02116 _v160.name = [] 02117 for i in range(0, length): 02118 start = end 02119 end += 4 02120 (length,) = _struct_I.unpack(str[start:end]) 02121 start = end 02122 end += length 02123 val3 = str[start:end] 02124 _v160.name.append(val3) 02125 start = end 02126 end += 4 02127 (length,) = _struct_I.unpack(str[start:end]) 02128 pattern = '<%sd'%length 02129 start = end 02130 end += struct.calcsize(pattern) 02131 _v160.position = struct.unpack(pattern, str[start:end]) 02132 start = end 02133 end += 4 02134 (length,) = _struct_I.unpack(str[start:end]) 02135 pattern = '<%sd'%length 02136 start = end 02137 end += struct.calcsize(pattern) 02138 _v160.velocity = struct.unpack(pattern, str[start:end]) 02139 start = end 02140 end += 4 02141 (length,) = _struct_I.unpack(str[start:end]) 02142 pattern = '<%sd'%length 02143 start = end 02144 end += struct.calcsize(pattern) 02145 _v160.effort = struct.unpack(pattern, str[start:end]) 02146 _v163 = val1.grasp_posture 02147 _v164 = _v163.header 02148 start = end 02149 end += 4 02150 (_v164.seq,) = _struct_I.unpack(str[start:end]) 02151 _v165 = _v164.stamp 02152 _x = _v165 02153 start = end 02154 end += 8 02155 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02156 start = end 02157 end += 4 02158 (length,) = _struct_I.unpack(str[start:end]) 02159 start = end 02160 end += length 02161 _v164.frame_id = str[start:end] 02162 start = end 02163 end += 4 02164 (length,) = _struct_I.unpack(str[start:end]) 02165 _v163.name = [] 02166 for i in range(0, length): 02167 start = end 02168 end += 4 02169 (length,) = _struct_I.unpack(str[start:end]) 02170 start = end 02171 end += length 02172 val3 = str[start:end] 02173 _v163.name.append(val3) 02174 start = end 02175 end += 4 02176 (length,) = _struct_I.unpack(str[start:end]) 02177 pattern = '<%sd'%length 02178 start = end 02179 end += struct.calcsize(pattern) 02180 _v163.position = struct.unpack(pattern, str[start:end]) 02181 start = end 02182 end += 4 02183 (length,) = _struct_I.unpack(str[start:end]) 02184 pattern = '<%sd'%length 02185 start = end 02186 end += struct.calcsize(pattern) 02187 _v163.velocity = struct.unpack(pattern, str[start:end]) 02188 start = end 02189 end += 4 02190 (length,) = _struct_I.unpack(str[start:end]) 02191 pattern = '<%sd'%length 02192 start = end 02193 end += struct.calcsize(pattern) 02194 _v163.effort = struct.unpack(pattern, str[start:end]) 02195 _v166 = val1.grasp_pose 02196 _v167 = _v166.position 02197 _x = _v167 02198 start = end 02199 end += 24 02200 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02201 _v168 = _v166.orientation 02202 _x = _v168 02203 start = end 02204 end += 32 02205 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02206 _x = val1 02207 start = end 02208 end += 17 02209 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 02210 val1.cluster_rep = bool(val1.cluster_rep) 02211 start = end 02212 end += 4 02213 (length,) = _struct_I.unpack(str[start:end]) 02214 val1.moved_obstacles = [] 02215 for i in range(0, length): 02216 val2 = object_manipulation_msgs.msg.GraspableObject() 02217 start = end 02218 end += 4 02219 (length,) = _struct_I.unpack(str[start:end]) 02220 start = end 02221 end += length 02222 val2.reference_frame_id = str[start:end] 02223 start = end 02224 end += 4 02225 (length,) = _struct_I.unpack(str[start:end]) 02226 val2.potential_models = [] 02227 for i in range(0, length): 02228 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 02229 start = end 02230 end += 4 02231 (val3.model_id,) = _struct_i.unpack(str[start:end]) 02232 _v169 = val3.pose 02233 _v170 = _v169.header 02234 start = end 02235 end += 4 02236 (_v170.seq,) = _struct_I.unpack(str[start:end]) 02237 _v171 = _v170.stamp 02238 _x = _v171 02239 start = end 02240 end += 8 02241 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02242 start = end 02243 end += 4 02244 (length,) = _struct_I.unpack(str[start:end]) 02245 start = end 02246 end += length 02247 _v170.frame_id = str[start:end] 02248 _v172 = _v169.pose 02249 _v173 = _v172.position 02250 _x = _v173 02251 start = end 02252 end += 24 02253 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02254 _v174 = _v172.orientation 02255 _x = _v174 02256 start = end 02257 end += 32 02258 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02259 start = end 02260 end += 4 02261 (val3.confidence,) = _struct_f.unpack(str[start:end]) 02262 start = end 02263 end += 4 02264 (length,) = _struct_I.unpack(str[start:end]) 02265 start = end 02266 end += length 02267 val3.detector_name = str[start:end] 02268 val2.potential_models.append(val3) 02269 _v175 = val2.cluster 02270 _v176 = _v175.header 02271 start = end 02272 end += 4 02273 (_v176.seq,) = _struct_I.unpack(str[start:end]) 02274 _v177 = _v176.stamp 02275 _x = _v177 02276 start = end 02277 end += 8 02278 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02279 start = end 02280 end += 4 02281 (length,) = _struct_I.unpack(str[start:end]) 02282 start = end 02283 end += length 02284 _v176.frame_id = str[start:end] 02285 start = end 02286 end += 4 02287 (length,) = _struct_I.unpack(str[start:end]) 02288 _v175.points = [] 02289 for i in range(0, length): 02290 val4 = geometry_msgs.msg.Point32() 02291 _x = val4 02292 start = end 02293 end += 12 02294 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 02295 _v175.points.append(val4) 02296 start = end 02297 end += 4 02298 (length,) = _struct_I.unpack(str[start:end]) 02299 _v175.channels = [] 02300 for i in range(0, length): 02301 val4 = sensor_msgs.msg.ChannelFloat32() 02302 start = end 02303 end += 4 02304 (length,) = _struct_I.unpack(str[start:end]) 02305 start = end 02306 end += length 02307 val4.name = str[start:end] 02308 start = end 02309 end += 4 02310 (length,) = _struct_I.unpack(str[start:end]) 02311 pattern = '<%sf'%length 02312 start = end 02313 end += struct.calcsize(pattern) 02314 val4.values = struct.unpack(pattern, str[start:end]) 02315 _v175.channels.append(val4) 02316 _v178 = val2.region 02317 _v179 = _v178.cloud 02318 _v180 = _v179.header 02319 start = end 02320 end += 4 02321 (_v180.seq,) = _struct_I.unpack(str[start:end]) 02322 _v181 = _v180.stamp 02323 _x = _v181 02324 start = end 02325 end += 8 02326 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02327 start = end 02328 end += 4 02329 (length,) = _struct_I.unpack(str[start:end]) 02330 start = end 02331 end += length 02332 _v180.frame_id = str[start:end] 02333 _x = _v179 02334 start = end 02335 end += 8 02336 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02337 start = end 02338 end += 4 02339 (length,) = _struct_I.unpack(str[start:end]) 02340 _v179.fields = [] 02341 for i in range(0, length): 02342 val5 = sensor_msgs.msg.PointField() 02343 start = end 02344 end += 4 02345 (length,) = _struct_I.unpack(str[start:end]) 02346 start = end 02347 end += length 02348 val5.name = str[start:end] 02349 _x = val5 02350 start = end 02351 end += 9 02352 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 02353 _v179.fields.append(val5) 02354 _x = _v179 02355 start = end 02356 end += 9 02357 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 02358 _v179.is_bigendian = bool(_v179.is_bigendian) 02359 start = end 02360 end += 4 02361 (length,) = _struct_I.unpack(str[start:end]) 02362 start = end 02363 end += length 02364 _v179.data = str[start:end] 02365 start = end 02366 end += 1 02367 (_v179.is_dense,) = _struct_B.unpack(str[start:end]) 02368 _v179.is_dense = bool(_v179.is_dense) 02369 start = end 02370 end += 4 02371 (length,) = _struct_I.unpack(str[start:end]) 02372 pattern = '<%si'%length 02373 start = end 02374 end += struct.calcsize(pattern) 02375 _v178.mask = struct.unpack(pattern, str[start:end]) 02376 _v182 = _v178.image 02377 _v183 = _v182.header 02378 start = end 02379 end += 4 02380 (_v183.seq,) = _struct_I.unpack(str[start:end]) 02381 _v184 = _v183.stamp 02382 _x = _v184 02383 start = end 02384 end += 8 02385 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02386 start = end 02387 end += 4 02388 (length,) = _struct_I.unpack(str[start:end]) 02389 start = end 02390 end += length 02391 _v183.frame_id = str[start:end] 02392 _x = _v182 02393 start = end 02394 end += 8 02395 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02396 start = end 02397 end += 4 02398 (length,) = _struct_I.unpack(str[start:end]) 02399 start = end 02400 end += length 02401 _v182.encoding = str[start:end] 02402 _x = _v182 02403 start = end 02404 end += 5 02405 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 02406 start = end 02407 end += 4 02408 (length,) = _struct_I.unpack(str[start:end]) 02409 start = end 02410 end += length 02411 _v182.data = str[start:end] 02412 _v185 = _v178.disparity_image 02413 _v186 = _v185.header 02414 start = end 02415 end += 4 02416 (_v186.seq,) = _struct_I.unpack(str[start:end]) 02417 _v187 = _v186.stamp 02418 _x = _v187 02419 start = end 02420 end += 8 02421 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02422 start = end 02423 end += 4 02424 (length,) = _struct_I.unpack(str[start:end]) 02425 start = end 02426 end += length 02427 _v186.frame_id = str[start:end] 02428 _x = _v185 02429 start = end 02430 end += 8 02431 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02432 start = end 02433 end += 4 02434 (length,) = _struct_I.unpack(str[start:end]) 02435 start = end 02436 end += length 02437 _v185.encoding = str[start:end] 02438 _x = _v185 02439 start = end 02440 end += 5 02441 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 02442 start = end 02443 end += 4 02444 (length,) = _struct_I.unpack(str[start:end]) 02445 start = end 02446 end += length 02447 _v185.data = str[start:end] 02448 _v188 = _v178.cam_info 02449 _v189 = _v188.header 02450 start = end 02451 end += 4 02452 (_v189.seq,) = _struct_I.unpack(str[start:end]) 02453 _v190 = _v189.stamp 02454 _x = _v190 02455 start = end 02456 end += 8 02457 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02458 start = end 02459 end += 4 02460 (length,) = _struct_I.unpack(str[start:end]) 02461 start = end 02462 end += length 02463 _v189.frame_id = str[start:end] 02464 _x = _v188 02465 start = end 02466 end += 8 02467 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02468 start = end 02469 end += 4 02470 (length,) = _struct_I.unpack(str[start:end]) 02471 start = end 02472 end += length 02473 _v188.distortion_model = str[start:end] 02474 start = end 02475 end += 4 02476 (length,) = _struct_I.unpack(str[start:end]) 02477 pattern = '<%sd'%length 02478 start = end 02479 end += struct.calcsize(pattern) 02480 _v188.D = struct.unpack(pattern, str[start:end]) 02481 start = end 02482 end += 72 02483 _v188.K = _struct_9d.unpack(str[start:end]) 02484 start = end 02485 end += 72 02486 _v188.R = _struct_9d.unpack(str[start:end]) 02487 start = end 02488 end += 96 02489 _v188.P = _struct_12d.unpack(str[start:end]) 02490 _x = _v188 02491 start = end 02492 end += 8 02493 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 02494 _v191 = _v188.roi 02495 _x = _v191 02496 start = end 02497 end += 17 02498 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 02499 _v191.do_rectify = bool(_v191.do_rectify) 02500 _v192 = _v178.roi_box_pose 02501 _v193 = _v192.header 02502 start = end 02503 end += 4 02504 (_v193.seq,) = _struct_I.unpack(str[start:end]) 02505 _v194 = _v193.stamp 02506 _x = _v194 02507 start = end 02508 end += 8 02509 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02510 start = end 02511 end += 4 02512 (length,) = _struct_I.unpack(str[start:end]) 02513 start = end 02514 end += length 02515 _v193.frame_id = str[start:end] 02516 _v195 = _v192.pose 02517 _v196 = _v195.position 02518 _x = _v196 02519 start = end 02520 end += 24 02521 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02522 _v197 = _v195.orientation 02523 _x = _v197 02524 start = end 02525 end += 32 02526 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02527 _v198 = _v178.roi_box_dims 02528 _x = _v198 02529 start = end 02530 end += 24 02531 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02532 start = end 02533 end += 4 02534 (length,) = _struct_I.unpack(str[start:end]) 02535 start = end 02536 end += length 02537 val2.collision_name = str[start:end] 02538 val1.moved_obstacles.append(val2) 02539 self.action_goal.goal.grasps_to_evaluate.append(val1) 02540 start = end 02541 end += 4 02542 (length,) = _struct_I.unpack(str[start:end]) 02543 self.action_goal.goal.movable_obstacles = [] 02544 for i in range(0, length): 02545 val1 = object_manipulation_msgs.msg.GraspableObject() 02546 start = end 02547 end += 4 02548 (length,) = _struct_I.unpack(str[start:end]) 02549 start = end 02550 end += length 02551 val1.reference_frame_id = str[start:end] 02552 start = end 02553 end += 4 02554 (length,) = _struct_I.unpack(str[start:end]) 02555 val1.potential_models = [] 02556 for i in range(0, length): 02557 val2 = household_objects_database_msgs.msg.DatabaseModelPose() 02558 start = end 02559 end += 4 02560 (val2.model_id,) = _struct_i.unpack(str[start:end]) 02561 _v199 = val2.pose 02562 _v200 = _v199.header 02563 start = end 02564 end += 4 02565 (_v200.seq,) = _struct_I.unpack(str[start:end]) 02566 _v201 = _v200.stamp 02567 _x = _v201 02568 start = end 02569 end += 8 02570 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02571 start = end 02572 end += 4 02573 (length,) = _struct_I.unpack(str[start:end]) 02574 start = end 02575 end += length 02576 _v200.frame_id = str[start:end] 02577 _v202 = _v199.pose 02578 _v203 = _v202.position 02579 _x = _v203 02580 start = end 02581 end += 24 02582 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02583 _v204 = _v202.orientation 02584 _x = _v204 02585 start = end 02586 end += 32 02587 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02588 start = end 02589 end += 4 02590 (val2.confidence,) = _struct_f.unpack(str[start:end]) 02591 start = end 02592 end += 4 02593 (length,) = _struct_I.unpack(str[start:end]) 02594 start = end 02595 end += length 02596 val2.detector_name = str[start:end] 02597 val1.potential_models.append(val2) 02598 _v205 = val1.cluster 02599 _v206 = _v205.header 02600 start = end 02601 end += 4 02602 (_v206.seq,) = _struct_I.unpack(str[start:end]) 02603 _v207 = _v206.stamp 02604 _x = _v207 02605 start = end 02606 end += 8 02607 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02608 start = end 02609 end += 4 02610 (length,) = _struct_I.unpack(str[start:end]) 02611 start = end 02612 end += length 02613 _v206.frame_id = str[start:end] 02614 start = end 02615 end += 4 02616 (length,) = _struct_I.unpack(str[start:end]) 02617 _v205.points = [] 02618 for i in range(0, length): 02619 val3 = geometry_msgs.msg.Point32() 02620 _x = val3 02621 start = end 02622 end += 12 02623 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 02624 _v205.points.append(val3) 02625 start = end 02626 end += 4 02627 (length,) = _struct_I.unpack(str[start:end]) 02628 _v205.channels = [] 02629 for i in range(0, length): 02630 val3 = sensor_msgs.msg.ChannelFloat32() 02631 start = end 02632 end += 4 02633 (length,) = _struct_I.unpack(str[start:end]) 02634 start = end 02635 end += length 02636 val3.name = str[start:end] 02637 start = end 02638 end += 4 02639 (length,) = _struct_I.unpack(str[start:end]) 02640 pattern = '<%sf'%length 02641 start = end 02642 end += struct.calcsize(pattern) 02643 val3.values = struct.unpack(pattern, str[start:end]) 02644 _v205.channels.append(val3) 02645 _v208 = val1.region 02646 _v209 = _v208.cloud 02647 _v210 = _v209.header 02648 start = end 02649 end += 4 02650 (_v210.seq,) = _struct_I.unpack(str[start:end]) 02651 _v211 = _v210.stamp 02652 _x = _v211 02653 start = end 02654 end += 8 02655 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02656 start = end 02657 end += 4 02658 (length,) = _struct_I.unpack(str[start:end]) 02659 start = end 02660 end += length 02661 _v210.frame_id = str[start:end] 02662 _x = _v209 02663 start = end 02664 end += 8 02665 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02666 start = end 02667 end += 4 02668 (length,) = _struct_I.unpack(str[start:end]) 02669 _v209.fields = [] 02670 for i in range(0, length): 02671 val4 = sensor_msgs.msg.PointField() 02672 start = end 02673 end += 4 02674 (length,) = _struct_I.unpack(str[start:end]) 02675 start = end 02676 end += length 02677 val4.name = str[start:end] 02678 _x = val4 02679 start = end 02680 end += 9 02681 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 02682 _v209.fields.append(val4) 02683 _x = _v209 02684 start = end 02685 end += 9 02686 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 02687 _v209.is_bigendian = bool(_v209.is_bigendian) 02688 start = end 02689 end += 4 02690 (length,) = _struct_I.unpack(str[start:end]) 02691 start = end 02692 end += length 02693 _v209.data = str[start:end] 02694 start = end 02695 end += 1 02696 (_v209.is_dense,) = _struct_B.unpack(str[start:end]) 02697 _v209.is_dense = bool(_v209.is_dense) 02698 start = end 02699 end += 4 02700 (length,) = _struct_I.unpack(str[start:end]) 02701 pattern = '<%si'%length 02702 start = end 02703 end += struct.calcsize(pattern) 02704 _v208.mask = struct.unpack(pattern, str[start:end]) 02705 _v212 = _v208.image 02706 _v213 = _v212.header 02707 start = end 02708 end += 4 02709 (_v213.seq,) = _struct_I.unpack(str[start:end]) 02710 _v214 = _v213.stamp 02711 _x = _v214 02712 start = end 02713 end += 8 02714 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02715 start = end 02716 end += 4 02717 (length,) = _struct_I.unpack(str[start:end]) 02718 start = end 02719 end += length 02720 _v213.frame_id = str[start:end] 02721 _x = _v212 02722 start = end 02723 end += 8 02724 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02725 start = end 02726 end += 4 02727 (length,) = _struct_I.unpack(str[start:end]) 02728 start = end 02729 end += length 02730 _v212.encoding = str[start:end] 02731 _x = _v212 02732 start = end 02733 end += 5 02734 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 02735 start = end 02736 end += 4 02737 (length,) = _struct_I.unpack(str[start:end]) 02738 start = end 02739 end += length 02740 _v212.data = str[start:end] 02741 _v215 = _v208.disparity_image 02742 _v216 = _v215.header 02743 start = end 02744 end += 4 02745 (_v216.seq,) = _struct_I.unpack(str[start:end]) 02746 _v217 = _v216.stamp 02747 _x = _v217 02748 start = end 02749 end += 8 02750 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02751 start = end 02752 end += 4 02753 (length,) = _struct_I.unpack(str[start:end]) 02754 start = end 02755 end += length 02756 _v216.frame_id = str[start:end] 02757 _x = _v215 02758 start = end 02759 end += 8 02760 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02761 start = end 02762 end += 4 02763 (length,) = _struct_I.unpack(str[start:end]) 02764 start = end 02765 end += length 02766 _v215.encoding = str[start:end] 02767 _x = _v215 02768 start = end 02769 end += 5 02770 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 02771 start = end 02772 end += 4 02773 (length,) = _struct_I.unpack(str[start:end]) 02774 start = end 02775 end += length 02776 _v215.data = str[start:end] 02777 _v218 = _v208.cam_info 02778 _v219 = _v218.header 02779 start = end 02780 end += 4 02781 (_v219.seq,) = _struct_I.unpack(str[start:end]) 02782 _v220 = _v219.stamp 02783 _x = _v220 02784 start = end 02785 end += 8 02786 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02787 start = end 02788 end += 4 02789 (length,) = _struct_I.unpack(str[start:end]) 02790 start = end 02791 end += length 02792 _v219.frame_id = str[start:end] 02793 _x = _v218 02794 start = end 02795 end += 8 02796 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 02797 start = end 02798 end += 4 02799 (length,) = _struct_I.unpack(str[start:end]) 02800 start = end 02801 end += length 02802 _v218.distortion_model = str[start:end] 02803 start = end 02804 end += 4 02805 (length,) = _struct_I.unpack(str[start:end]) 02806 pattern = '<%sd'%length 02807 start = end 02808 end += struct.calcsize(pattern) 02809 _v218.D = struct.unpack(pattern, str[start:end]) 02810 start = end 02811 end += 72 02812 _v218.K = _struct_9d.unpack(str[start:end]) 02813 start = end 02814 end += 72 02815 _v218.R = _struct_9d.unpack(str[start:end]) 02816 start = end 02817 end += 96 02818 _v218.P = _struct_12d.unpack(str[start:end]) 02819 _x = _v218 02820 start = end 02821 end += 8 02822 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 02823 _v221 = _v218.roi 02824 _x = _v221 02825 start = end 02826 end += 17 02827 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 02828 _v221.do_rectify = bool(_v221.do_rectify) 02829 _v222 = _v208.roi_box_pose 02830 _v223 = _v222.header 02831 start = end 02832 end += 4 02833 (_v223.seq,) = _struct_I.unpack(str[start:end]) 02834 _v224 = _v223.stamp 02835 _x = _v224 02836 start = end 02837 end += 8 02838 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02839 start = end 02840 end += 4 02841 (length,) = _struct_I.unpack(str[start:end]) 02842 start = end 02843 end += length 02844 _v223.frame_id = str[start:end] 02845 _v225 = _v222.pose 02846 _v226 = _v225.position 02847 _x = _v226 02848 start = end 02849 end += 24 02850 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02851 _v227 = _v225.orientation 02852 _x = _v227 02853 start = end 02854 end += 32 02855 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 02856 _v228 = _v208.roi_box_dims 02857 _x = _v228 02858 start = end 02859 end += 24 02860 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 02861 start = end 02862 end += 4 02863 (length,) = _struct_I.unpack(str[start:end]) 02864 start = end 02865 end += length 02866 val1.collision_name = str[start:end] 02867 self.action_goal.goal.movable_obstacles.append(val1) 02868 _x = self 02869 start = end 02870 end += 12 02871 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 02872 start = end 02873 end += 4 02874 (length,) = _struct_I.unpack(str[start:end]) 02875 start = end 02876 end += length 02877 self.action_result.header.frame_id = str[start:end] 02878 _x = self 02879 start = end 02880 end += 8 02881 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 02882 start = end 02883 end += 4 02884 (length,) = _struct_I.unpack(str[start:end]) 02885 start = end 02886 end += length 02887 self.action_result.status.goal_id.id = str[start:end] 02888 start = end 02889 end += 1 02890 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 02891 start = end 02892 end += 4 02893 (length,) = _struct_I.unpack(str[start:end]) 02894 start = end 02895 end += length 02896 self.action_result.status.text = str[start:end] 02897 start = end 02898 end += 4 02899 (length,) = _struct_I.unpack(str[start:end]) 02900 self.action_result.result.grasps = [] 02901 for i in range(0, length): 02902 val1 = object_manipulation_msgs.msg.Grasp() 02903 _v229 = val1.pre_grasp_posture 02904 _v230 = _v229.header 02905 start = end 02906 end += 4 02907 (_v230.seq,) = _struct_I.unpack(str[start:end]) 02908 _v231 = _v230.stamp 02909 _x = _v231 02910 start = end 02911 end += 8 02912 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02913 start = end 02914 end += 4 02915 (length,) = _struct_I.unpack(str[start:end]) 02916 start = end 02917 end += length 02918 _v230.frame_id = str[start:end] 02919 start = end 02920 end += 4 02921 (length,) = _struct_I.unpack(str[start:end]) 02922 _v229.name = [] 02923 for i in range(0, length): 02924 start = end 02925 end += 4 02926 (length,) = _struct_I.unpack(str[start:end]) 02927 start = end 02928 end += length 02929 val3 = str[start:end] 02930 _v229.name.append(val3) 02931 start = end 02932 end += 4 02933 (length,) = _struct_I.unpack(str[start:end]) 02934 pattern = '<%sd'%length 02935 start = end 02936 end += struct.calcsize(pattern) 02937 _v229.position = struct.unpack(pattern, str[start:end]) 02938 start = end 02939 end += 4 02940 (length,) = _struct_I.unpack(str[start:end]) 02941 pattern = '<%sd'%length 02942 start = end 02943 end += struct.calcsize(pattern) 02944 _v229.velocity = struct.unpack(pattern, str[start:end]) 02945 start = end 02946 end += 4 02947 (length,) = _struct_I.unpack(str[start:end]) 02948 pattern = '<%sd'%length 02949 start = end 02950 end += struct.calcsize(pattern) 02951 _v229.effort = struct.unpack(pattern, str[start:end]) 02952 _v232 = val1.grasp_posture 02953 _v233 = _v232.header 02954 start = end 02955 end += 4 02956 (_v233.seq,) = _struct_I.unpack(str[start:end]) 02957 _v234 = _v233.stamp 02958 _x = _v234 02959 start = end 02960 end += 8 02961 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 02962 start = end 02963 end += 4 02964 (length,) = _struct_I.unpack(str[start:end]) 02965 start = end 02966 end += length 02967 _v233.frame_id = str[start:end] 02968 start = end 02969 end += 4 02970 (length,) = _struct_I.unpack(str[start:end]) 02971 _v232.name = [] 02972 for i in range(0, length): 02973 start = end 02974 end += 4 02975 (length,) = _struct_I.unpack(str[start:end]) 02976 start = end 02977 end += length 02978 val3 = str[start:end] 02979 _v232.name.append(val3) 02980 start = end 02981 end += 4 02982 (length,) = _struct_I.unpack(str[start:end]) 02983 pattern = '<%sd'%length 02984 start = end 02985 end += struct.calcsize(pattern) 02986 _v232.position = struct.unpack(pattern, str[start:end]) 02987 start = end 02988 end += 4 02989 (length,) = _struct_I.unpack(str[start:end]) 02990 pattern = '<%sd'%length 02991 start = end 02992 end += struct.calcsize(pattern) 02993 _v232.velocity = struct.unpack(pattern, str[start:end]) 02994 start = end 02995 end += 4 02996 (length,) = _struct_I.unpack(str[start:end]) 02997 pattern = '<%sd'%length 02998 start = end 02999 end += struct.calcsize(pattern) 03000 _v232.effort = struct.unpack(pattern, str[start:end]) 03001 _v235 = val1.grasp_pose 03002 _v236 = _v235.position 03003 _x = _v236 03004 start = end 03005 end += 24 03006 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03007 _v237 = _v235.orientation 03008 _x = _v237 03009 start = end 03010 end += 32 03011 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03012 _x = val1 03013 start = end 03014 end += 17 03015 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 03016 val1.cluster_rep = bool(val1.cluster_rep) 03017 start = end 03018 end += 4 03019 (length,) = _struct_I.unpack(str[start:end]) 03020 val1.moved_obstacles = [] 03021 for i in range(0, length): 03022 val2 = object_manipulation_msgs.msg.GraspableObject() 03023 start = end 03024 end += 4 03025 (length,) = _struct_I.unpack(str[start:end]) 03026 start = end 03027 end += length 03028 val2.reference_frame_id = str[start:end] 03029 start = end 03030 end += 4 03031 (length,) = _struct_I.unpack(str[start:end]) 03032 val2.potential_models = [] 03033 for i in range(0, length): 03034 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 03035 start = end 03036 end += 4 03037 (val3.model_id,) = _struct_i.unpack(str[start:end]) 03038 _v238 = val3.pose 03039 _v239 = _v238.header 03040 start = end 03041 end += 4 03042 (_v239.seq,) = _struct_I.unpack(str[start:end]) 03043 _v240 = _v239.stamp 03044 _x = _v240 03045 start = end 03046 end += 8 03047 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03048 start = end 03049 end += 4 03050 (length,) = _struct_I.unpack(str[start:end]) 03051 start = end 03052 end += length 03053 _v239.frame_id = str[start:end] 03054 _v241 = _v238.pose 03055 _v242 = _v241.position 03056 _x = _v242 03057 start = end 03058 end += 24 03059 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03060 _v243 = _v241.orientation 03061 _x = _v243 03062 start = end 03063 end += 32 03064 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03065 start = end 03066 end += 4 03067 (val3.confidence,) = _struct_f.unpack(str[start:end]) 03068 start = end 03069 end += 4 03070 (length,) = _struct_I.unpack(str[start:end]) 03071 start = end 03072 end += length 03073 val3.detector_name = str[start:end] 03074 val2.potential_models.append(val3) 03075 _v244 = val2.cluster 03076 _v245 = _v244.header 03077 start = end 03078 end += 4 03079 (_v245.seq,) = _struct_I.unpack(str[start:end]) 03080 _v246 = _v245.stamp 03081 _x = _v246 03082 start = end 03083 end += 8 03084 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03085 start = end 03086 end += 4 03087 (length,) = _struct_I.unpack(str[start:end]) 03088 start = end 03089 end += length 03090 _v245.frame_id = str[start:end] 03091 start = end 03092 end += 4 03093 (length,) = _struct_I.unpack(str[start:end]) 03094 _v244.points = [] 03095 for i in range(0, length): 03096 val4 = geometry_msgs.msg.Point32() 03097 _x = val4 03098 start = end 03099 end += 12 03100 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 03101 _v244.points.append(val4) 03102 start = end 03103 end += 4 03104 (length,) = _struct_I.unpack(str[start:end]) 03105 _v244.channels = [] 03106 for i in range(0, length): 03107 val4 = sensor_msgs.msg.ChannelFloat32() 03108 start = end 03109 end += 4 03110 (length,) = _struct_I.unpack(str[start:end]) 03111 start = end 03112 end += length 03113 val4.name = str[start:end] 03114 start = end 03115 end += 4 03116 (length,) = _struct_I.unpack(str[start:end]) 03117 pattern = '<%sf'%length 03118 start = end 03119 end += struct.calcsize(pattern) 03120 val4.values = struct.unpack(pattern, str[start:end]) 03121 _v244.channels.append(val4) 03122 _v247 = val2.region 03123 _v248 = _v247.cloud 03124 _v249 = _v248.header 03125 start = end 03126 end += 4 03127 (_v249.seq,) = _struct_I.unpack(str[start:end]) 03128 _v250 = _v249.stamp 03129 _x = _v250 03130 start = end 03131 end += 8 03132 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03133 start = end 03134 end += 4 03135 (length,) = _struct_I.unpack(str[start:end]) 03136 start = end 03137 end += length 03138 _v249.frame_id = str[start:end] 03139 _x = _v248 03140 start = end 03141 end += 8 03142 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03143 start = end 03144 end += 4 03145 (length,) = _struct_I.unpack(str[start:end]) 03146 _v248.fields = [] 03147 for i in range(0, length): 03148 val5 = sensor_msgs.msg.PointField() 03149 start = end 03150 end += 4 03151 (length,) = _struct_I.unpack(str[start:end]) 03152 start = end 03153 end += length 03154 val5.name = str[start:end] 03155 _x = val5 03156 start = end 03157 end += 9 03158 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 03159 _v248.fields.append(val5) 03160 _x = _v248 03161 start = end 03162 end += 9 03163 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 03164 _v248.is_bigendian = bool(_v248.is_bigendian) 03165 start = end 03166 end += 4 03167 (length,) = _struct_I.unpack(str[start:end]) 03168 start = end 03169 end += length 03170 _v248.data = str[start:end] 03171 start = end 03172 end += 1 03173 (_v248.is_dense,) = _struct_B.unpack(str[start:end]) 03174 _v248.is_dense = bool(_v248.is_dense) 03175 start = end 03176 end += 4 03177 (length,) = _struct_I.unpack(str[start:end]) 03178 pattern = '<%si'%length 03179 start = end 03180 end += struct.calcsize(pattern) 03181 _v247.mask = struct.unpack(pattern, str[start:end]) 03182 _v251 = _v247.image 03183 _v252 = _v251.header 03184 start = end 03185 end += 4 03186 (_v252.seq,) = _struct_I.unpack(str[start:end]) 03187 _v253 = _v252.stamp 03188 _x = _v253 03189 start = end 03190 end += 8 03191 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03192 start = end 03193 end += 4 03194 (length,) = _struct_I.unpack(str[start:end]) 03195 start = end 03196 end += length 03197 _v252.frame_id = str[start:end] 03198 _x = _v251 03199 start = end 03200 end += 8 03201 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03202 start = end 03203 end += 4 03204 (length,) = _struct_I.unpack(str[start:end]) 03205 start = end 03206 end += length 03207 _v251.encoding = str[start:end] 03208 _x = _v251 03209 start = end 03210 end += 5 03211 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 03212 start = end 03213 end += 4 03214 (length,) = _struct_I.unpack(str[start:end]) 03215 start = end 03216 end += length 03217 _v251.data = str[start:end] 03218 _v254 = _v247.disparity_image 03219 _v255 = _v254.header 03220 start = end 03221 end += 4 03222 (_v255.seq,) = _struct_I.unpack(str[start:end]) 03223 _v256 = _v255.stamp 03224 _x = _v256 03225 start = end 03226 end += 8 03227 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03228 start = end 03229 end += 4 03230 (length,) = _struct_I.unpack(str[start:end]) 03231 start = end 03232 end += length 03233 _v255.frame_id = str[start:end] 03234 _x = _v254 03235 start = end 03236 end += 8 03237 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03238 start = end 03239 end += 4 03240 (length,) = _struct_I.unpack(str[start:end]) 03241 start = end 03242 end += length 03243 _v254.encoding = str[start:end] 03244 _x = _v254 03245 start = end 03246 end += 5 03247 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 03248 start = end 03249 end += 4 03250 (length,) = _struct_I.unpack(str[start:end]) 03251 start = end 03252 end += length 03253 _v254.data = str[start:end] 03254 _v257 = _v247.cam_info 03255 _v258 = _v257.header 03256 start = end 03257 end += 4 03258 (_v258.seq,) = _struct_I.unpack(str[start:end]) 03259 _v259 = _v258.stamp 03260 _x = _v259 03261 start = end 03262 end += 8 03263 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03264 start = end 03265 end += 4 03266 (length,) = _struct_I.unpack(str[start:end]) 03267 start = end 03268 end += length 03269 _v258.frame_id = str[start:end] 03270 _x = _v257 03271 start = end 03272 end += 8 03273 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03274 start = end 03275 end += 4 03276 (length,) = _struct_I.unpack(str[start:end]) 03277 start = end 03278 end += length 03279 _v257.distortion_model = str[start:end] 03280 start = end 03281 end += 4 03282 (length,) = _struct_I.unpack(str[start:end]) 03283 pattern = '<%sd'%length 03284 start = end 03285 end += struct.calcsize(pattern) 03286 _v257.D = struct.unpack(pattern, str[start:end]) 03287 start = end 03288 end += 72 03289 _v257.K = _struct_9d.unpack(str[start:end]) 03290 start = end 03291 end += 72 03292 _v257.R = _struct_9d.unpack(str[start:end]) 03293 start = end 03294 end += 96 03295 _v257.P = _struct_12d.unpack(str[start:end]) 03296 _x = _v257 03297 start = end 03298 end += 8 03299 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 03300 _v260 = _v257.roi 03301 _x = _v260 03302 start = end 03303 end += 17 03304 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 03305 _v260.do_rectify = bool(_v260.do_rectify) 03306 _v261 = _v247.roi_box_pose 03307 _v262 = _v261.header 03308 start = end 03309 end += 4 03310 (_v262.seq,) = _struct_I.unpack(str[start:end]) 03311 _v263 = _v262.stamp 03312 _x = _v263 03313 start = end 03314 end += 8 03315 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03316 start = end 03317 end += 4 03318 (length,) = _struct_I.unpack(str[start:end]) 03319 start = end 03320 end += length 03321 _v262.frame_id = str[start:end] 03322 _v264 = _v261.pose 03323 _v265 = _v264.position 03324 _x = _v265 03325 start = end 03326 end += 24 03327 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03328 _v266 = _v264.orientation 03329 _x = _v266 03330 start = end 03331 end += 32 03332 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03333 _v267 = _v247.roi_box_dims 03334 _x = _v267 03335 start = end 03336 end += 24 03337 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03338 start = end 03339 end += 4 03340 (length,) = _struct_I.unpack(str[start:end]) 03341 start = end 03342 end += length 03343 val2.collision_name = str[start:end] 03344 val1.moved_obstacles.append(val2) 03345 self.action_result.result.grasps.append(val1) 03346 _x = self 03347 start = end 03348 end += 16 03349 (_x.action_result.result.error_code.value, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_i3I.unpack(str[start:end]) 03350 start = end 03351 end += 4 03352 (length,) = _struct_I.unpack(str[start:end]) 03353 start = end 03354 end += length 03355 self.action_feedback.header.frame_id = str[start:end] 03356 _x = self 03357 start = end 03358 end += 8 03359 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 03360 start = end 03361 end += 4 03362 (length,) = _struct_I.unpack(str[start:end]) 03363 start = end 03364 end += length 03365 self.action_feedback.status.goal_id.id = str[start:end] 03366 start = end 03367 end += 1 03368 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 03369 start = end 03370 end += 4 03371 (length,) = _struct_I.unpack(str[start:end]) 03372 start = end 03373 end += length 03374 self.action_feedback.status.text = str[start:end] 03375 start = end 03376 end += 4 03377 (length,) = _struct_I.unpack(str[start:end]) 03378 self.action_feedback.feedback.grasps = [] 03379 for i in range(0, length): 03380 val1 = object_manipulation_msgs.msg.Grasp() 03381 _v268 = val1.pre_grasp_posture 03382 _v269 = _v268.header 03383 start = end 03384 end += 4 03385 (_v269.seq,) = _struct_I.unpack(str[start:end]) 03386 _v270 = _v269.stamp 03387 _x = _v270 03388 start = end 03389 end += 8 03390 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03391 start = end 03392 end += 4 03393 (length,) = _struct_I.unpack(str[start:end]) 03394 start = end 03395 end += length 03396 _v269.frame_id = str[start:end] 03397 start = end 03398 end += 4 03399 (length,) = _struct_I.unpack(str[start:end]) 03400 _v268.name = [] 03401 for i in range(0, length): 03402 start = end 03403 end += 4 03404 (length,) = _struct_I.unpack(str[start:end]) 03405 start = end 03406 end += length 03407 val3 = str[start:end] 03408 _v268.name.append(val3) 03409 start = end 03410 end += 4 03411 (length,) = _struct_I.unpack(str[start:end]) 03412 pattern = '<%sd'%length 03413 start = end 03414 end += struct.calcsize(pattern) 03415 _v268.position = struct.unpack(pattern, str[start:end]) 03416 start = end 03417 end += 4 03418 (length,) = _struct_I.unpack(str[start:end]) 03419 pattern = '<%sd'%length 03420 start = end 03421 end += struct.calcsize(pattern) 03422 _v268.velocity = struct.unpack(pattern, str[start:end]) 03423 start = end 03424 end += 4 03425 (length,) = _struct_I.unpack(str[start:end]) 03426 pattern = '<%sd'%length 03427 start = end 03428 end += struct.calcsize(pattern) 03429 _v268.effort = struct.unpack(pattern, str[start:end]) 03430 _v271 = val1.grasp_posture 03431 _v272 = _v271.header 03432 start = end 03433 end += 4 03434 (_v272.seq,) = _struct_I.unpack(str[start:end]) 03435 _v273 = _v272.stamp 03436 _x = _v273 03437 start = end 03438 end += 8 03439 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03440 start = end 03441 end += 4 03442 (length,) = _struct_I.unpack(str[start:end]) 03443 start = end 03444 end += length 03445 _v272.frame_id = str[start:end] 03446 start = end 03447 end += 4 03448 (length,) = _struct_I.unpack(str[start:end]) 03449 _v271.name = [] 03450 for i in range(0, length): 03451 start = end 03452 end += 4 03453 (length,) = _struct_I.unpack(str[start:end]) 03454 start = end 03455 end += length 03456 val3 = str[start:end] 03457 _v271.name.append(val3) 03458 start = end 03459 end += 4 03460 (length,) = _struct_I.unpack(str[start:end]) 03461 pattern = '<%sd'%length 03462 start = end 03463 end += struct.calcsize(pattern) 03464 _v271.position = struct.unpack(pattern, str[start:end]) 03465 start = end 03466 end += 4 03467 (length,) = _struct_I.unpack(str[start:end]) 03468 pattern = '<%sd'%length 03469 start = end 03470 end += struct.calcsize(pattern) 03471 _v271.velocity = struct.unpack(pattern, str[start:end]) 03472 start = end 03473 end += 4 03474 (length,) = _struct_I.unpack(str[start:end]) 03475 pattern = '<%sd'%length 03476 start = end 03477 end += struct.calcsize(pattern) 03478 _v271.effort = struct.unpack(pattern, str[start:end]) 03479 _v274 = val1.grasp_pose 03480 _v275 = _v274.position 03481 _x = _v275 03482 start = end 03483 end += 24 03484 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03485 _v276 = _v274.orientation 03486 _x = _v276 03487 start = end 03488 end += 32 03489 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03490 _x = val1 03491 start = end 03492 end += 17 03493 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 03494 val1.cluster_rep = bool(val1.cluster_rep) 03495 start = end 03496 end += 4 03497 (length,) = _struct_I.unpack(str[start:end]) 03498 val1.moved_obstacles = [] 03499 for i in range(0, length): 03500 val2 = object_manipulation_msgs.msg.GraspableObject() 03501 start = end 03502 end += 4 03503 (length,) = _struct_I.unpack(str[start:end]) 03504 start = end 03505 end += length 03506 val2.reference_frame_id = str[start:end] 03507 start = end 03508 end += 4 03509 (length,) = _struct_I.unpack(str[start:end]) 03510 val2.potential_models = [] 03511 for i in range(0, length): 03512 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 03513 start = end 03514 end += 4 03515 (val3.model_id,) = _struct_i.unpack(str[start:end]) 03516 _v277 = val3.pose 03517 _v278 = _v277.header 03518 start = end 03519 end += 4 03520 (_v278.seq,) = _struct_I.unpack(str[start:end]) 03521 _v279 = _v278.stamp 03522 _x = _v279 03523 start = end 03524 end += 8 03525 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03526 start = end 03527 end += 4 03528 (length,) = _struct_I.unpack(str[start:end]) 03529 start = end 03530 end += length 03531 _v278.frame_id = str[start:end] 03532 _v280 = _v277.pose 03533 _v281 = _v280.position 03534 _x = _v281 03535 start = end 03536 end += 24 03537 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03538 _v282 = _v280.orientation 03539 _x = _v282 03540 start = end 03541 end += 32 03542 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03543 start = end 03544 end += 4 03545 (val3.confidence,) = _struct_f.unpack(str[start:end]) 03546 start = end 03547 end += 4 03548 (length,) = _struct_I.unpack(str[start:end]) 03549 start = end 03550 end += length 03551 val3.detector_name = str[start:end] 03552 val2.potential_models.append(val3) 03553 _v283 = val2.cluster 03554 _v284 = _v283.header 03555 start = end 03556 end += 4 03557 (_v284.seq,) = _struct_I.unpack(str[start:end]) 03558 _v285 = _v284.stamp 03559 _x = _v285 03560 start = end 03561 end += 8 03562 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03563 start = end 03564 end += 4 03565 (length,) = _struct_I.unpack(str[start:end]) 03566 start = end 03567 end += length 03568 _v284.frame_id = str[start:end] 03569 start = end 03570 end += 4 03571 (length,) = _struct_I.unpack(str[start:end]) 03572 _v283.points = [] 03573 for i in range(0, length): 03574 val4 = geometry_msgs.msg.Point32() 03575 _x = val4 03576 start = end 03577 end += 12 03578 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 03579 _v283.points.append(val4) 03580 start = end 03581 end += 4 03582 (length,) = _struct_I.unpack(str[start:end]) 03583 _v283.channels = [] 03584 for i in range(0, length): 03585 val4 = sensor_msgs.msg.ChannelFloat32() 03586 start = end 03587 end += 4 03588 (length,) = _struct_I.unpack(str[start:end]) 03589 start = end 03590 end += length 03591 val4.name = str[start:end] 03592 start = end 03593 end += 4 03594 (length,) = _struct_I.unpack(str[start:end]) 03595 pattern = '<%sf'%length 03596 start = end 03597 end += struct.calcsize(pattern) 03598 val4.values = struct.unpack(pattern, str[start:end]) 03599 _v283.channels.append(val4) 03600 _v286 = val2.region 03601 _v287 = _v286.cloud 03602 _v288 = _v287.header 03603 start = end 03604 end += 4 03605 (_v288.seq,) = _struct_I.unpack(str[start:end]) 03606 _v289 = _v288.stamp 03607 _x = _v289 03608 start = end 03609 end += 8 03610 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03611 start = end 03612 end += 4 03613 (length,) = _struct_I.unpack(str[start:end]) 03614 start = end 03615 end += length 03616 _v288.frame_id = str[start:end] 03617 _x = _v287 03618 start = end 03619 end += 8 03620 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03621 start = end 03622 end += 4 03623 (length,) = _struct_I.unpack(str[start:end]) 03624 _v287.fields = [] 03625 for i in range(0, length): 03626 val5 = sensor_msgs.msg.PointField() 03627 start = end 03628 end += 4 03629 (length,) = _struct_I.unpack(str[start:end]) 03630 start = end 03631 end += length 03632 val5.name = str[start:end] 03633 _x = val5 03634 start = end 03635 end += 9 03636 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 03637 _v287.fields.append(val5) 03638 _x = _v287 03639 start = end 03640 end += 9 03641 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 03642 _v287.is_bigendian = bool(_v287.is_bigendian) 03643 start = end 03644 end += 4 03645 (length,) = _struct_I.unpack(str[start:end]) 03646 start = end 03647 end += length 03648 _v287.data = str[start:end] 03649 start = end 03650 end += 1 03651 (_v287.is_dense,) = _struct_B.unpack(str[start:end]) 03652 _v287.is_dense = bool(_v287.is_dense) 03653 start = end 03654 end += 4 03655 (length,) = _struct_I.unpack(str[start:end]) 03656 pattern = '<%si'%length 03657 start = end 03658 end += struct.calcsize(pattern) 03659 _v286.mask = struct.unpack(pattern, str[start:end]) 03660 _v290 = _v286.image 03661 _v291 = _v290.header 03662 start = end 03663 end += 4 03664 (_v291.seq,) = _struct_I.unpack(str[start:end]) 03665 _v292 = _v291.stamp 03666 _x = _v292 03667 start = end 03668 end += 8 03669 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03670 start = end 03671 end += 4 03672 (length,) = _struct_I.unpack(str[start:end]) 03673 start = end 03674 end += length 03675 _v291.frame_id = str[start:end] 03676 _x = _v290 03677 start = end 03678 end += 8 03679 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03680 start = end 03681 end += 4 03682 (length,) = _struct_I.unpack(str[start:end]) 03683 start = end 03684 end += length 03685 _v290.encoding = str[start:end] 03686 _x = _v290 03687 start = end 03688 end += 5 03689 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 03690 start = end 03691 end += 4 03692 (length,) = _struct_I.unpack(str[start:end]) 03693 start = end 03694 end += length 03695 _v290.data = str[start:end] 03696 _v293 = _v286.disparity_image 03697 _v294 = _v293.header 03698 start = end 03699 end += 4 03700 (_v294.seq,) = _struct_I.unpack(str[start:end]) 03701 _v295 = _v294.stamp 03702 _x = _v295 03703 start = end 03704 end += 8 03705 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03706 start = end 03707 end += 4 03708 (length,) = _struct_I.unpack(str[start:end]) 03709 start = end 03710 end += length 03711 _v294.frame_id = str[start:end] 03712 _x = _v293 03713 start = end 03714 end += 8 03715 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03716 start = end 03717 end += 4 03718 (length,) = _struct_I.unpack(str[start:end]) 03719 start = end 03720 end += length 03721 _v293.encoding = str[start:end] 03722 _x = _v293 03723 start = end 03724 end += 5 03725 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 03726 start = end 03727 end += 4 03728 (length,) = _struct_I.unpack(str[start:end]) 03729 start = end 03730 end += length 03731 _v293.data = str[start:end] 03732 _v296 = _v286.cam_info 03733 _v297 = _v296.header 03734 start = end 03735 end += 4 03736 (_v297.seq,) = _struct_I.unpack(str[start:end]) 03737 _v298 = _v297.stamp 03738 _x = _v298 03739 start = end 03740 end += 8 03741 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03742 start = end 03743 end += 4 03744 (length,) = _struct_I.unpack(str[start:end]) 03745 start = end 03746 end += length 03747 _v297.frame_id = str[start:end] 03748 _x = _v296 03749 start = end 03750 end += 8 03751 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 03752 start = end 03753 end += 4 03754 (length,) = _struct_I.unpack(str[start:end]) 03755 start = end 03756 end += length 03757 _v296.distortion_model = str[start:end] 03758 start = end 03759 end += 4 03760 (length,) = _struct_I.unpack(str[start:end]) 03761 pattern = '<%sd'%length 03762 start = end 03763 end += struct.calcsize(pattern) 03764 _v296.D = struct.unpack(pattern, str[start:end]) 03765 start = end 03766 end += 72 03767 _v296.K = _struct_9d.unpack(str[start:end]) 03768 start = end 03769 end += 72 03770 _v296.R = _struct_9d.unpack(str[start:end]) 03771 start = end 03772 end += 96 03773 _v296.P = _struct_12d.unpack(str[start:end]) 03774 _x = _v296 03775 start = end 03776 end += 8 03777 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 03778 _v299 = _v296.roi 03779 _x = _v299 03780 start = end 03781 end += 17 03782 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 03783 _v299.do_rectify = bool(_v299.do_rectify) 03784 _v300 = _v286.roi_box_pose 03785 _v301 = _v300.header 03786 start = end 03787 end += 4 03788 (_v301.seq,) = _struct_I.unpack(str[start:end]) 03789 _v302 = _v301.stamp 03790 _x = _v302 03791 start = end 03792 end += 8 03793 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 03794 start = end 03795 end += 4 03796 (length,) = _struct_I.unpack(str[start:end]) 03797 start = end 03798 end += length 03799 _v301.frame_id = str[start:end] 03800 _v303 = _v300.pose 03801 _v304 = _v303.position 03802 _x = _v304 03803 start = end 03804 end += 24 03805 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03806 _v305 = _v303.orientation 03807 _x = _v305 03808 start = end 03809 end += 32 03810 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 03811 _v306 = _v286.roi_box_dims 03812 _x = _v306 03813 start = end 03814 end += 24 03815 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 03816 start = end 03817 end += 4 03818 (length,) = _struct_I.unpack(str[start:end]) 03819 start = end 03820 end += length 03821 val2.collision_name = str[start:end] 03822 val1.moved_obstacles.append(val2) 03823 self.action_feedback.feedback.grasps.append(val1) 03824 return self 03825 except struct.error as e: 03826 raise roslib.message.DeserializationError(e) #most likely buffer underfill 03827 03828 03829 def serialize_numpy(self, buff, numpy): 03830 """ 03831 serialize message with numpy array types into buffer 03832 @param buff: buffer 03833 @type buff: StringIO 03834 @param numpy: numpy python module 03835 @type numpy module 03836 """ 03837 try: 03838 _x = self 03839 buff.write(_struct_3I.pack(_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs)) 03840 _x = self.action_goal.header.frame_id 03841 length = len(_x) 03842 buff.write(struct.pack('<I%ss'%length, length, _x)) 03843 _x = self 03844 buff.write(_struct_2I.pack(_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs)) 03845 _x = self.action_goal.goal_id.id 03846 length = len(_x) 03847 buff.write(struct.pack('<I%ss'%length, length, _x)) 03848 _x = self.action_goal.goal.arm_name 03849 length = len(_x) 03850 buff.write(struct.pack('<I%ss'%length, length, _x)) 03851 _x = self.action_goal.goal.target.reference_frame_id 03852 length = len(_x) 03853 buff.write(struct.pack('<I%ss'%length, length, _x)) 03854 length = len(self.action_goal.goal.target.potential_models) 03855 buff.write(_struct_I.pack(length)) 03856 for val1 in self.action_goal.goal.target.potential_models: 03857 buff.write(_struct_i.pack(val1.model_id)) 03858 _v307 = val1.pose 03859 _v308 = _v307.header 03860 buff.write(_struct_I.pack(_v308.seq)) 03861 _v309 = _v308.stamp 03862 _x = _v309 03863 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 03864 _x = _v308.frame_id 03865 length = len(_x) 03866 buff.write(struct.pack('<I%ss'%length, length, _x)) 03867 _v310 = _v307.pose 03868 _v311 = _v310.position 03869 _x = _v311 03870 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 03871 _v312 = _v310.orientation 03872 _x = _v312 03873 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 03874 buff.write(_struct_f.pack(val1.confidence)) 03875 _x = val1.detector_name 03876 length = len(_x) 03877 buff.write(struct.pack('<I%ss'%length, length, _x)) 03878 _x = self 03879 buff.write(_struct_3I.pack(_x.action_goal.goal.target.cluster.header.seq, _x.action_goal.goal.target.cluster.header.stamp.secs, _x.action_goal.goal.target.cluster.header.stamp.nsecs)) 03880 _x = self.action_goal.goal.target.cluster.header.frame_id 03881 length = len(_x) 03882 buff.write(struct.pack('<I%ss'%length, length, _x)) 03883 length = len(self.action_goal.goal.target.cluster.points) 03884 buff.write(_struct_I.pack(length)) 03885 for val1 in self.action_goal.goal.target.cluster.points: 03886 _x = val1 03887 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 03888 length = len(self.action_goal.goal.target.cluster.channels) 03889 buff.write(_struct_I.pack(length)) 03890 for val1 in self.action_goal.goal.target.cluster.channels: 03891 _x = val1.name 03892 length = len(_x) 03893 buff.write(struct.pack('<I%ss'%length, length, _x)) 03894 length = len(val1.values) 03895 buff.write(_struct_I.pack(length)) 03896 pattern = '<%sf'%length 03897 buff.write(val1.values.tostring()) 03898 _x = self 03899 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.cloud.header.seq, _x.action_goal.goal.target.region.cloud.header.stamp.secs, _x.action_goal.goal.target.region.cloud.header.stamp.nsecs)) 03900 _x = self.action_goal.goal.target.region.cloud.header.frame_id 03901 length = len(_x) 03902 buff.write(struct.pack('<I%ss'%length, length, _x)) 03903 _x = self 03904 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.cloud.height, _x.action_goal.goal.target.region.cloud.width)) 03905 length = len(self.action_goal.goal.target.region.cloud.fields) 03906 buff.write(_struct_I.pack(length)) 03907 for val1 in self.action_goal.goal.target.region.cloud.fields: 03908 _x = val1.name 03909 length = len(_x) 03910 buff.write(struct.pack('<I%ss'%length, length, _x)) 03911 _x = val1 03912 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 03913 _x = self 03914 buff.write(_struct_B2I.pack(_x.action_goal.goal.target.region.cloud.is_bigendian, _x.action_goal.goal.target.region.cloud.point_step, _x.action_goal.goal.target.region.cloud.row_step)) 03915 _x = self.action_goal.goal.target.region.cloud.data 03916 length = len(_x) 03917 # - if encoded as a list instead, serialize as bytes instead of string 03918 if type(_x) in [list, tuple]: 03919 buff.write(struct.pack('<I%sB'%length, length, *_x)) 03920 else: 03921 buff.write(struct.pack('<I%ss'%length, length, _x)) 03922 buff.write(_struct_B.pack(self.action_goal.goal.target.region.cloud.is_dense)) 03923 length = len(self.action_goal.goal.target.region.mask) 03924 buff.write(_struct_I.pack(length)) 03925 pattern = '<%si'%length 03926 buff.write(self.action_goal.goal.target.region.mask.tostring()) 03927 _x = self 03928 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.image.header.seq, _x.action_goal.goal.target.region.image.header.stamp.secs, _x.action_goal.goal.target.region.image.header.stamp.nsecs)) 03929 _x = self.action_goal.goal.target.region.image.header.frame_id 03930 length = len(_x) 03931 buff.write(struct.pack('<I%ss'%length, length, _x)) 03932 _x = self 03933 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.image.height, _x.action_goal.goal.target.region.image.width)) 03934 _x = self.action_goal.goal.target.region.image.encoding 03935 length = len(_x) 03936 buff.write(struct.pack('<I%ss'%length, length, _x)) 03937 _x = self 03938 buff.write(_struct_BI.pack(_x.action_goal.goal.target.region.image.is_bigendian, _x.action_goal.goal.target.region.image.step)) 03939 _x = self.action_goal.goal.target.region.image.data 03940 length = len(_x) 03941 # - if encoded as a list instead, serialize as bytes instead of string 03942 if type(_x) in [list, tuple]: 03943 buff.write(struct.pack('<I%sB'%length, length, *_x)) 03944 else: 03945 buff.write(struct.pack('<I%ss'%length, length, _x)) 03946 _x = self 03947 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.disparity_image.header.seq, _x.action_goal.goal.target.region.disparity_image.header.stamp.secs, _x.action_goal.goal.target.region.disparity_image.header.stamp.nsecs)) 03948 _x = self.action_goal.goal.target.region.disparity_image.header.frame_id 03949 length = len(_x) 03950 buff.write(struct.pack('<I%ss'%length, length, _x)) 03951 _x = self 03952 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.disparity_image.height, _x.action_goal.goal.target.region.disparity_image.width)) 03953 _x = self.action_goal.goal.target.region.disparity_image.encoding 03954 length = len(_x) 03955 buff.write(struct.pack('<I%ss'%length, length, _x)) 03956 _x = self 03957 buff.write(_struct_BI.pack(_x.action_goal.goal.target.region.disparity_image.is_bigendian, _x.action_goal.goal.target.region.disparity_image.step)) 03958 _x = self.action_goal.goal.target.region.disparity_image.data 03959 length = len(_x) 03960 # - if encoded as a list instead, serialize as bytes instead of string 03961 if type(_x) in [list, tuple]: 03962 buff.write(struct.pack('<I%sB'%length, length, *_x)) 03963 else: 03964 buff.write(struct.pack('<I%ss'%length, length, _x)) 03965 _x = self 03966 buff.write(_struct_3I.pack(_x.action_goal.goal.target.region.cam_info.header.seq, _x.action_goal.goal.target.region.cam_info.header.stamp.secs, _x.action_goal.goal.target.region.cam_info.header.stamp.nsecs)) 03967 _x = self.action_goal.goal.target.region.cam_info.header.frame_id 03968 length = len(_x) 03969 buff.write(struct.pack('<I%ss'%length, length, _x)) 03970 _x = self 03971 buff.write(_struct_2I.pack(_x.action_goal.goal.target.region.cam_info.height, _x.action_goal.goal.target.region.cam_info.width)) 03972 _x = self.action_goal.goal.target.region.cam_info.distortion_model 03973 length = len(_x) 03974 buff.write(struct.pack('<I%ss'%length, length, _x)) 03975 length = len(self.action_goal.goal.target.region.cam_info.D) 03976 buff.write(_struct_I.pack(length)) 03977 pattern = '<%sd'%length 03978 buff.write(self.action_goal.goal.target.region.cam_info.D.tostring()) 03979 buff.write(self.action_goal.goal.target.region.cam_info.K.tostring()) 03980 buff.write(self.action_goal.goal.target.region.cam_info.R.tostring()) 03981 buff.write(self.action_goal.goal.target.region.cam_info.P.tostring()) 03982 _x = self 03983 buff.write(_struct_6IB3I.pack(_x.action_goal.goal.target.region.cam_info.binning_x, _x.action_goal.goal.target.region.cam_info.binning_y, _x.action_goal.goal.target.region.cam_info.roi.x_offset, _x.action_goal.goal.target.region.cam_info.roi.y_offset, _x.action_goal.goal.target.region.cam_info.roi.height, _x.action_goal.goal.target.region.cam_info.roi.width, _x.action_goal.goal.target.region.cam_info.roi.do_rectify, _x.action_goal.goal.target.region.roi_box_pose.header.seq, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.secs, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.nsecs)) 03984 _x = self.action_goal.goal.target.region.roi_box_pose.header.frame_id 03985 length = len(_x) 03986 buff.write(struct.pack('<I%ss'%length, length, _x)) 03987 _x = self 03988 buff.write(_struct_10d.pack(_x.action_goal.goal.target.region.roi_box_pose.pose.position.x, _x.action_goal.goal.target.region.roi_box_pose.pose.position.y, _x.action_goal.goal.target.region.roi_box_pose.pose.position.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.x, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.y, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.w, _x.action_goal.goal.target.region.roi_box_dims.x, _x.action_goal.goal.target.region.roi_box_dims.y, _x.action_goal.goal.target.region.roi_box_dims.z)) 03989 _x = self.action_goal.goal.target.collision_name 03990 length = len(_x) 03991 buff.write(struct.pack('<I%ss'%length, length, _x)) 03992 _x = self.action_goal.goal.collision_object_name 03993 length = len(_x) 03994 buff.write(struct.pack('<I%ss'%length, length, _x)) 03995 _x = self.action_goal.goal.collision_support_surface_name 03996 length = len(_x) 03997 buff.write(struct.pack('<I%ss'%length, length, _x)) 03998 length = len(self.action_goal.goal.grasps_to_evaluate) 03999 buff.write(_struct_I.pack(length)) 04000 for val1 in self.action_goal.goal.grasps_to_evaluate: 04001 _v313 = val1.pre_grasp_posture 04002 _v314 = _v313.header 04003 buff.write(_struct_I.pack(_v314.seq)) 04004 _v315 = _v314.stamp 04005 _x = _v315 04006 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04007 _x = _v314.frame_id 04008 length = len(_x) 04009 buff.write(struct.pack('<I%ss'%length, length, _x)) 04010 length = len(_v313.name) 04011 buff.write(_struct_I.pack(length)) 04012 for val3 in _v313.name: 04013 length = len(val3) 04014 buff.write(struct.pack('<I%ss'%length, length, val3)) 04015 length = len(_v313.position) 04016 buff.write(_struct_I.pack(length)) 04017 pattern = '<%sd'%length 04018 buff.write(_v313.position.tostring()) 04019 length = len(_v313.velocity) 04020 buff.write(_struct_I.pack(length)) 04021 pattern = '<%sd'%length 04022 buff.write(_v313.velocity.tostring()) 04023 length = len(_v313.effort) 04024 buff.write(_struct_I.pack(length)) 04025 pattern = '<%sd'%length 04026 buff.write(_v313.effort.tostring()) 04027 _v316 = val1.grasp_posture 04028 _v317 = _v316.header 04029 buff.write(_struct_I.pack(_v317.seq)) 04030 _v318 = _v317.stamp 04031 _x = _v318 04032 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04033 _x = _v317.frame_id 04034 length = len(_x) 04035 buff.write(struct.pack('<I%ss'%length, length, _x)) 04036 length = len(_v316.name) 04037 buff.write(_struct_I.pack(length)) 04038 for val3 in _v316.name: 04039 length = len(val3) 04040 buff.write(struct.pack('<I%ss'%length, length, val3)) 04041 length = len(_v316.position) 04042 buff.write(_struct_I.pack(length)) 04043 pattern = '<%sd'%length 04044 buff.write(_v316.position.tostring()) 04045 length = len(_v316.velocity) 04046 buff.write(_struct_I.pack(length)) 04047 pattern = '<%sd'%length 04048 buff.write(_v316.velocity.tostring()) 04049 length = len(_v316.effort) 04050 buff.write(_struct_I.pack(length)) 04051 pattern = '<%sd'%length 04052 buff.write(_v316.effort.tostring()) 04053 _v319 = val1.grasp_pose 04054 _v320 = _v319.position 04055 _x = _v320 04056 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04057 _v321 = _v319.orientation 04058 _x = _v321 04059 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04060 _x = val1 04061 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 04062 length = len(val1.moved_obstacles) 04063 buff.write(_struct_I.pack(length)) 04064 for val2 in val1.moved_obstacles: 04065 _x = val2.reference_frame_id 04066 length = len(_x) 04067 buff.write(struct.pack('<I%ss'%length, length, _x)) 04068 length = len(val2.potential_models) 04069 buff.write(_struct_I.pack(length)) 04070 for val3 in val2.potential_models: 04071 buff.write(_struct_i.pack(val3.model_id)) 04072 _v322 = val3.pose 04073 _v323 = _v322.header 04074 buff.write(_struct_I.pack(_v323.seq)) 04075 _v324 = _v323.stamp 04076 _x = _v324 04077 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04078 _x = _v323.frame_id 04079 length = len(_x) 04080 buff.write(struct.pack('<I%ss'%length, length, _x)) 04081 _v325 = _v322.pose 04082 _v326 = _v325.position 04083 _x = _v326 04084 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04085 _v327 = _v325.orientation 04086 _x = _v327 04087 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04088 buff.write(_struct_f.pack(val3.confidence)) 04089 _x = val3.detector_name 04090 length = len(_x) 04091 buff.write(struct.pack('<I%ss'%length, length, _x)) 04092 _v328 = val2.cluster 04093 _v329 = _v328.header 04094 buff.write(_struct_I.pack(_v329.seq)) 04095 _v330 = _v329.stamp 04096 _x = _v330 04097 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04098 _x = _v329.frame_id 04099 length = len(_x) 04100 buff.write(struct.pack('<I%ss'%length, length, _x)) 04101 length = len(_v328.points) 04102 buff.write(_struct_I.pack(length)) 04103 for val4 in _v328.points: 04104 _x = val4 04105 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 04106 length = len(_v328.channels) 04107 buff.write(_struct_I.pack(length)) 04108 for val4 in _v328.channels: 04109 _x = val4.name 04110 length = len(_x) 04111 buff.write(struct.pack('<I%ss'%length, length, _x)) 04112 length = len(val4.values) 04113 buff.write(_struct_I.pack(length)) 04114 pattern = '<%sf'%length 04115 buff.write(val4.values.tostring()) 04116 _v331 = val2.region 04117 _v332 = _v331.cloud 04118 _v333 = _v332.header 04119 buff.write(_struct_I.pack(_v333.seq)) 04120 _v334 = _v333.stamp 04121 _x = _v334 04122 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04123 _x = _v333.frame_id 04124 length = len(_x) 04125 buff.write(struct.pack('<I%ss'%length, length, _x)) 04126 _x = _v332 04127 buff.write(_struct_2I.pack(_x.height, _x.width)) 04128 length = len(_v332.fields) 04129 buff.write(_struct_I.pack(length)) 04130 for val5 in _v332.fields: 04131 _x = val5.name 04132 length = len(_x) 04133 buff.write(struct.pack('<I%ss'%length, length, _x)) 04134 _x = val5 04135 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 04136 _x = _v332 04137 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 04138 _x = _v332.data 04139 length = len(_x) 04140 # - if encoded as a list instead, serialize as bytes instead of string 04141 if type(_x) in [list, tuple]: 04142 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04143 else: 04144 buff.write(struct.pack('<I%ss'%length, length, _x)) 04145 buff.write(_struct_B.pack(_v332.is_dense)) 04146 length = len(_v331.mask) 04147 buff.write(_struct_I.pack(length)) 04148 pattern = '<%si'%length 04149 buff.write(_v331.mask.tostring()) 04150 _v335 = _v331.image 04151 _v336 = _v335.header 04152 buff.write(_struct_I.pack(_v336.seq)) 04153 _v337 = _v336.stamp 04154 _x = _v337 04155 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04156 _x = _v336.frame_id 04157 length = len(_x) 04158 buff.write(struct.pack('<I%ss'%length, length, _x)) 04159 _x = _v335 04160 buff.write(_struct_2I.pack(_x.height, _x.width)) 04161 _x = _v335.encoding 04162 length = len(_x) 04163 buff.write(struct.pack('<I%ss'%length, length, _x)) 04164 _x = _v335 04165 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04166 _x = _v335.data 04167 length = len(_x) 04168 # - if encoded as a list instead, serialize as bytes instead of string 04169 if type(_x) in [list, tuple]: 04170 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04171 else: 04172 buff.write(struct.pack('<I%ss'%length, length, _x)) 04173 _v338 = _v331.disparity_image 04174 _v339 = _v338.header 04175 buff.write(_struct_I.pack(_v339.seq)) 04176 _v340 = _v339.stamp 04177 _x = _v340 04178 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04179 _x = _v339.frame_id 04180 length = len(_x) 04181 buff.write(struct.pack('<I%ss'%length, length, _x)) 04182 _x = _v338 04183 buff.write(_struct_2I.pack(_x.height, _x.width)) 04184 _x = _v338.encoding 04185 length = len(_x) 04186 buff.write(struct.pack('<I%ss'%length, length, _x)) 04187 _x = _v338 04188 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04189 _x = _v338.data 04190 length = len(_x) 04191 # - if encoded as a list instead, serialize as bytes instead of string 04192 if type(_x) in [list, tuple]: 04193 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04194 else: 04195 buff.write(struct.pack('<I%ss'%length, length, _x)) 04196 _v341 = _v331.cam_info 04197 _v342 = _v341.header 04198 buff.write(_struct_I.pack(_v342.seq)) 04199 _v343 = _v342.stamp 04200 _x = _v343 04201 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04202 _x = _v342.frame_id 04203 length = len(_x) 04204 buff.write(struct.pack('<I%ss'%length, length, _x)) 04205 _x = _v341 04206 buff.write(_struct_2I.pack(_x.height, _x.width)) 04207 _x = _v341.distortion_model 04208 length = len(_x) 04209 buff.write(struct.pack('<I%ss'%length, length, _x)) 04210 length = len(_v341.D) 04211 buff.write(_struct_I.pack(length)) 04212 pattern = '<%sd'%length 04213 buff.write(_v341.D.tostring()) 04214 buff.write(_v341.K.tostring()) 04215 buff.write(_v341.R.tostring()) 04216 buff.write(_v341.P.tostring()) 04217 _x = _v341 04218 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 04219 _v344 = _v341.roi 04220 _x = _v344 04221 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 04222 _v345 = _v331.roi_box_pose 04223 _v346 = _v345.header 04224 buff.write(_struct_I.pack(_v346.seq)) 04225 _v347 = _v346.stamp 04226 _x = _v347 04227 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04228 _x = _v346.frame_id 04229 length = len(_x) 04230 buff.write(struct.pack('<I%ss'%length, length, _x)) 04231 _v348 = _v345.pose 04232 _v349 = _v348.position 04233 _x = _v349 04234 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04235 _v350 = _v348.orientation 04236 _x = _v350 04237 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04238 _v351 = _v331.roi_box_dims 04239 _x = _v351 04240 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04241 _x = val2.collision_name 04242 length = len(_x) 04243 buff.write(struct.pack('<I%ss'%length, length, _x)) 04244 length = len(self.action_goal.goal.movable_obstacles) 04245 buff.write(_struct_I.pack(length)) 04246 for val1 in self.action_goal.goal.movable_obstacles: 04247 _x = val1.reference_frame_id 04248 length = len(_x) 04249 buff.write(struct.pack('<I%ss'%length, length, _x)) 04250 length = len(val1.potential_models) 04251 buff.write(_struct_I.pack(length)) 04252 for val2 in val1.potential_models: 04253 buff.write(_struct_i.pack(val2.model_id)) 04254 _v352 = val2.pose 04255 _v353 = _v352.header 04256 buff.write(_struct_I.pack(_v353.seq)) 04257 _v354 = _v353.stamp 04258 _x = _v354 04259 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04260 _x = _v353.frame_id 04261 length = len(_x) 04262 buff.write(struct.pack('<I%ss'%length, length, _x)) 04263 _v355 = _v352.pose 04264 _v356 = _v355.position 04265 _x = _v356 04266 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04267 _v357 = _v355.orientation 04268 _x = _v357 04269 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04270 buff.write(_struct_f.pack(val2.confidence)) 04271 _x = val2.detector_name 04272 length = len(_x) 04273 buff.write(struct.pack('<I%ss'%length, length, _x)) 04274 _v358 = val1.cluster 04275 _v359 = _v358.header 04276 buff.write(_struct_I.pack(_v359.seq)) 04277 _v360 = _v359.stamp 04278 _x = _v360 04279 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04280 _x = _v359.frame_id 04281 length = len(_x) 04282 buff.write(struct.pack('<I%ss'%length, length, _x)) 04283 length = len(_v358.points) 04284 buff.write(_struct_I.pack(length)) 04285 for val3 in _v358.points: 04286 _x = val3 04287 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 04288 length = len(_v358.channels) 04289 buff.write(_struct_I.pack(length)) 04290 for val3 in _v358.channels: 04291 _x = val3.name 04292 length = len(_x) 04293 buff.write(struct.pack('<I%ss'%length, length, _x)) 04294 length = len(val3.values) 04295 buff.write(_struct_I.pack(length)) 04296 pattern = '<%sf'%length 04297 buff.write(val3.values.tostring()) 04298 _v361 = val1.region 04299 _v362 = _v361.cloud 04300 _v363 = _v362.header 04301 buff.write(_struct_I.pack(_v363.seq)) 04302 _v364 = _v363.stamp 04303 _x = _v364 04304 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04305 _x = _v363.frame_id 04306 length = len(_x) 04307 buff.write(struct.pack('<I%ss'%length, length, _x)) 04308 _x = _v362 04309 buff.write(_struct_2I.pack(_x.height, _x.width)) 04310 length = len(_v362.fields) 04311 buff.write(_struct_I.pack(length)) 04312 for val4 in _v362.fields: 04313 _x = val4.name 04314 length = len(_x) 04315 buff.write(struct.pack('<I%ss'%length, length, _x)) 04316 _x = val4 04317 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 04318 _x = _v362 04319 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 04320 _x = _v362.data 04321 length = len(_x) 04322 # - if encoded as a list instead, serialize as bytes instead of string 04323 if type(_x) in [list, tuple]: 04324 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04325 else: 04326 buff.write(struct.pack('<I%ss'%length, length, _x)) 04327 buff.write(_struct_B.pack(_v362.is_dense)) 04328 length = len(_v361.mask) 04329 buff.write(_struct_I.pack(length)) 04330 pattern = '<%si'%length 04331 buff.write(_v361.mask.tostring()) 04332 _v365 = _v361.image 04333 _v366 = _v365.header 04334 buff.write(_struct_I.pack(_v366.seq)) 04335 _v367 = _v366.stamp 04336 _x = _v367 04337 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04338 _x = _v366.frame_id 04339 length = len(_x) 04340 buff.write(struct.pack('<I%ss'%length, length, _x)) 04341 _x = _v365 04342 buff.write(_struct_2I.pack(_x.height, _x.width)) 04343 _x = _v365.encoding 04344 length = len(_x) 04345 buff.write(struct.pack('<I%ss'%length, length, _x)) 04346 _x = _v365 04347 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04348 _x = _v365.data 04349 length = len(_x) 04350 # - if encoded as a list instead, serialize as bytes instead of string 04351 if type(_x) in [list, tuple]: 04352 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04353 else: 04354 buff.write(struct.pack('<I%ss'%length, length, _x)) 04355 _v368 = _v361.disparity_image 04356 _v369 = _v368.header 04357 buff.write(_struct_I.pack(_v369.seq)) 04358 _v370 = _v369.stamp 04359 _x = _v370 04360 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04361 _x = _v369.frame_id 04362 length = len(_x) 04363 buff.write(struct.pack('<I%ss'%length, length, _x)) 04364 _x = _v368 04365 buff.write(_struct_2I.pack(_x.height, _x.width)) 04366 _x = _v368.encoding 04367 length = len(_x) 04368 buff.write(struct.pack('<I%ss'%length, length, _x)) 04369 _x = _v368 04370 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04371 _x = _v368.data 04372 length = len(_x) 04373 # - if encoded as a list instead, serialize as bytes instead of string 04374 if type(_x) in [list, tuple]: 04375 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04376 else: 04377 buff.write(struct.pack('<I%ss'%length, length, _x)) 04378 _v371 = _v361.cam_info 04379 _v372 = _v371.header 04380 buff.write(_struct_I.pack(_v372.seq)) 04381 _v373 = _v372.stamp 04382 _x = _v373 04383 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04384 _x = _v372.frame_id 04385 length = len(_x) 04386 buff.write(struct.pack('<I%ss'%length, length, _x)) 04387 _x = _v371 04388 buff.write(_struct_2I.pack(_x.height, _x.width)) 04389 _x = _v371.distortion_model 04390 length = len(_x) 04391 buff.write(struct.pack('<I%ss'%length, length, _x)) 04392 length = len(_v371.D) 04393 buff.write(_struct_I.pack(length)) 04394 pattern = '<%sd'%length 04395 buff.write(_v371.D.tostring()) 04396 buff.write(_v371.K.tostring()) 04397 buff.write(_v371.R.tostring()) 04398 buff.write(_v371.P.tostring()) 04399 _x = _v371 04400 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 04401 _v374 = _v371.roi 04402 _x = _v374 04403 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 04404 _v375 = _v361.roi_box_pose 04405 _v376 = _v375.header 04406 buff.write(_struct_I.pack(_v376.seq)) 04407 _v377 = _v376.stamp 04408 _x = _v377 04409 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04410 _x = _v376.frame_id 04411 length = len(_x) 04412 buff.write(struct.pack('<I%ss'%length, length, _x)) 04413 _v378 = _v375.pose 04414 _v379 = _v378.position 04415 _x = _v379 04416 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04417 _v380 = _v378.orientation 04418 _x = _v380 04419 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04420 _v381 = _v361.roi_box_dims 04421 _x = _v381 04422 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04423 _x = val1.collision_name 04424 length = len(_x) 04425 buff.write(struct.pack('<I%ss'%length, length, _x)) 04426 _x = self 04427 buff.write(_struct_3I.pack(_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs)) 04428 _x = self.action_result.header.frame_id 04429 length = len(_x) 04430 buff.write(struct.pack('<I%ss'%length, length, _x)) 04431 _x = self 04432 buff.write(_struct_2I.pack(_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs)) 04433 _x = self.action_result.status.goal_id.id 04434 length = len(_x) 04435 buff.write(struct.pack('<I%ss'%length, length, _x)) 04436 buff.write(_struct_B.pack(self.action_result.status.status)) 04437 _x = self.action_result.status.text 04438 length = len(_x) 04439 buff.write(struct.pack('<I%ss'%length, length, _x)) 04440 length = len(self.action_result.result.grasps) 04441 buff.write(_struct_I.pack(length)) 04442 for val1 in self.action_result.result.grasps: 04443 _v382 = val1.pre_grasp_posture 04444 _v383 = _v382.header 04445 buff.write(_struct_I.pack(_v383.seq)) 04446 _v384 = _v383.stamp 04447 _x = _v384 04448 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04449 _x = _v383.frame_id 04450 length = len(_x) 04451 buff.write(struct.pack('<I%ss'%length, length, _x)) 04452 length = len(_v382.name) 04453 buff.write(_struct_I.pack(length)) 04454 for val3 in _v382.name: 04455 length = len(val3) 04456 buff.write(struct.pack('<I%ss'%length, length, val3)) 04457 length = len(_v382.position) 04458 buff.write(_struct_I.pack(length)) 04459 pattern = '<%sd'%length 04460 buff.write(_v382.position.tostring()) 04461 length = len(_v382.velocity) 04462 buff.write(_struct_I.pack(length)) 04463 pattern = '<%sd'%length 04464 buff.write(_v382.velocity.tostring()) 04465 length = len(_v382.effort) 04466 buff.write(_struct_I.pack(length)) 04467 pattern = '<%sd'%length 04468 buff.write(_v382.effort.tostring()) 04469 _v385 = val1.grasp_posture 04470 _v386 = _v385.header 04471 buff.write(_struct_I.pack(_v386.seq)) 04472 _v387 = _v386.stamp 04473 _x = _v387 04474 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04475 _x = _v386.frame_id 04476 length = len(_x) 04477 buff.write(struct.pack('<I%ss'%length, length, _x)) 04478 length = len(_v385.name) 04479 buff.write(_struct_I.pack(length)) 04480 for val3 in _v385.name: 04481 length = len(val3) 04482 buff.write(struct.pack('<I%ss'%length, length, val3)) 04483 length = len(_v385.position) 04484 buff.write(_struct_I.pack(length)) 04485 pattern = '<%sd'%length 04486 buff.write(_v385.position.tostring()) 04487 length = len(_v385.velocity) 04488 buff.write(_struct_I.pack(length)) 04489 pattern = '<%sd'%length 04490 buff.write(_v385.velocity.tostring()) 04491 length = len(_v385.effort) 04492 buff.write(_struct_I.pack(length)) 04493 pattern = '<%sd'%length 04494 buff.write(_v385.effort.tostring()) 04495 _v388 = val1.grasp_pose 04496 _v389 = _v388.position 04497 _x = _v389 04498 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04499 _v390 = _v388.orientation 04500 _x = _v390 04501 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04502 _x = val1 04503 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 04504 length = len(val1.moved_obstacles) 04505 buff.write(_struct_I.pack(length)) 04506 for val2 in val1.moved_obstacles: 04507 _x = val2.reference_frame_id 04508 length = len(_x) 04509 buff.write(struct.pack('<I%ss'%length, length, _x)) 04510 length = len(val2.potential_models) 04511 buff.write(_struct_I.pack(length)) 04512 for val3 in val2.potential_models: 04513 buff.write(_struct_i.pack(val3.model_id)) 04514 _v391 = val3.pose 04515 _v392 = _v391.header 04516 buff.write(_struct_I.pack(_v392.seq)) 04517 _v393 = _v392.stamp 04518 _x = _v393 04519 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04520 _x = _v392.frame_id 04521 length = len(_x) 04522 buff.write(struct.pack('<I%ss'%length, length, _x)) 04523 _v394 = _v391.pose 04524 _v395 = _v394.position 04525 _x = _v395 04526 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04527 _v396 = _v394.orientation 04528 _x = _v396 04529 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04530 buff.write(_struct_f.pack(val3.confidence)) 04531 _x = val3.detector_name 04532 length = len(_x) 04533 buff.write(struct.pack('<I%ss'%length, length, _x)) 04534 _v397 = val2.cluster 04535 _v398 = _v397.header 04536 buff.write(_struct_I.pack(_v398.seq)) 04537 _v399 = _v398.stamp 04538 _x = _v399 04539 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04540 _x = _v398.frame_id 04541 length = len(_x) 04542 buff.write(struct.pack('<I%ss'%length, length, _x)) 04543 length = len(_v397.points) 04544 buff.write(_struct_I.pack(length)) 04545 for val4 in _v397.points: 04546 _x = val4 04547 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 04548 length = len(_v397.channels) 04549 buff.write(_struct_I.pack(length)) 04550 for val4 in _v397.channels: 04551 _x = val4.name 04552 length = len(_x) 04553 buff.write(struct.pack('<I%ss'%length, length, _x)) 04554 length = len(val4.values) 04555 buff.write(_struct_I.pack(length)) 04556 pattern = '<%sf'%length 04557 buff.write(val4.values.tostring()) 04558 _v400 = val2.region 04559 _v401 = _v400.cloud 04560 _v402 = _v401.header 04561 buff.write(_struct_I.pack(_v402.seq)) 04562 _v403 = _v402.stamp 04563 _x = _v403 04564 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04565 _x = _v402.frame_id 04566 length = len(_x) 04567 buff.write(struct.pack('<I%ss'%length, length, _x)) 04568 _x = _v401 04569 buff.write(_struct_2I.pack(_x.height, _x.width)) 04570 length = len(_v401.fields) 04571 buff.write(_struct_I.pack(length)) 04572 for val5 in _v401.fields: 04573 _x = val5.name 04574 length = len(_x) 04575 buff.write(struct.pack('<I%ss'%length, length, _x)) 04576 _x = val5 04577 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 04578 _x = _v401 04579 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 04580 _x = _v401.data 04581 length = len(_x) 04582 # - if encoded as a list instead, serialize as bytes instead of string 04583 if type(_x) in [list, tuple]: 04584 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04585 else: 04586 buff.write(struct.pack('<I%ss'%length, length, _x)) 04587 buff.write(_struct_B.pack(_v401.is_dense)) 04588 length = len(_v400.mask) 04589 buff.write(_struct_I.pack(length)) 04590 pattern = '<%si'%length 04591 buff.write(_v400.mask.tostring()) 04592 _v404 = _v400.image 04593 _v405 = _v404.header 04594 buff.write(_struct_I.pack(_v405.seq)) 04595 _v406 = _v405.stamp 04596 _x = _v406 04597 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04598 _x = _v405.frame_id 04599 length = len(_x) 04600 buff.write(struct.pack('<I%ss'%length, length, _x)) 04601 _x = _v404 04602 buff.write(_struct_2I.pack(_x.height, _x.width)) 04603 _x = _v404.encoding 04604 length = len(_x) 04605 buff.write(struct.pack('<I%ss'%length, length, _x)) 04606 _x = _v404 04607 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04608 _x = _v404.data 04609 length = len(_x) 04610 # - if encoded as a list instead, serialize as bytes instead of string 04611 if type(_x) in [list, tuple]: 04612 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04613 else: 04614 buff.write(struct.pack('<I%ss'%length, length, _x)) 04615 _v407 = _v400.disparity_image 04616 _v408 = _v407.header 04617 buff.write(_struct_I.pack(_v408.seq)) 04618 _v409 = _v408.stamp 04619 _x = _v409 04620 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04621 _x = _v408.frame_id 04622 length = len(_x) 04623 buff.write(struct.pack('<I%ss'%length, length, _x)) 04624 _x = _v407 04625 buff.write(_struct_2I.pack(_x.height, _x.width)) 04626 _x = _v407.encoding 04627 length = len(_x) 04628 buff.write(struct.pack('<I%ss'%length, length, _x)) 04629 _x = _v407 04630 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04631 _x = _v407.data 04632 length = len(_x) 04633 # - if encoded as a list instead, serialize as bytes instead of string 04634 if type(_x) in [list, tuple]: 04635 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04636 else: 04637 buff.write(struct.pack('<I%ss'%length, length, _x)) 04638 _v410 = _v400.cam_info 04639 _v411 = _v410.header 04640 buff.write(_struct_I.pack(_v411.seq)) 04641 _v412 = _v411.stamp 04642 _x = _v412 04643 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04644 _x = _v411.frame_id 04645 length = len(_x) 04646 buff.write(struct.pack('<I%ss'%length, length, _x)) 04647 _x = _v410 04648 buff.write(_struct_2I.pack(_x.height, _x.width)) 04649 _x = _v410.distortion_model 04650 length = len(_x) 04651 buff.write(struct.pack('<I%ss'%length, length, _x)) 04652 length = len(_v410.D) 04653 buff.write(_struct_I.pack(length)) 04654 pattern = '<%sd'%length 04655 buff.write(_v410.D.tostring()) 04656 buff.write(_v410.K.tostring()) 04657 buff.write(_v410.R.tostring()) 04658 buff.write(_v410.P.tostring()) 04659 _x = _v410 04660 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 04661 _v413 = _v410.roi 04662 _x = _v413 04663 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 04664 _v414 = _v400.roi_box_pose 04665 _v415 = _v414.header 04666 buff.write(_struct_I.pack(_v415.seq)) 04667 _v416 = _v415.stamp 04668 _x = _v416 04669 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04670 _x = _v415.frame_id 04671 length = len(_x) 04672 buff.write(struct.pack('<I%ss'%length, length, _x)) 04673 _v417 = _v414.pose 04674 _v418 = _v417.position 04675 _x = _v418 04676 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04677 _v419 = _v417.orientation 04678 _x = _v419 04679 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04680 _v420 = _v400.roi_box_dims 04681 _x = _v420 04682 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04683 _x = val2.collision_name 04684 length = len(_x) 04685 buff.write(struct.pack('<I%ss'%length, length, _x)) 04686 _x = self 04687 buff.write(_struct_i3I.pack(_x.action_result.result.error_code.value, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs)) 04688 _x = self.action_feedback.header.frame_id 04689 length = len(_x) 04690 buff.write(struct.pack('<I%ss'%length, length, _x)) 04691 _x = self 04692 buff.write(_struct_2I.pack(_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs)) 04693 _x = self.action_feedback.status.goal_id.id 04694 length = len(_x) 04695 buff.write(struct.pack('<I%ss'%length, length, _x)) 04696 buff.write(_struct_B.pack(self.action_feedback.status.status)) 04697 _x = self.action_feedback.status.text 04698 length = len(_x) 04699 buff.write(struct.pack('<I%ss'%length, length, _x)) 04700 length = len(self.action_feedback.feedback.grasps) 04701 buff.write(_struct_I.pack(length)) 04702 for val1 in self.action_feedback.feedback.grasps: 04703 _v421 = val1.pre_grasp_posture 04704 _v422 = _v421.header 04705 buff.write(_struct_I.pack(_v422.seq)) 04706 _v423 = _v422.stamp 04707 _x = _v423 04708 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04709 _x = _v422.frame_id 04710 length = len(_x) 04711 buff.write(struct.pack('<I%ss'%length, length, _x)) 04712 length = len(_v421.name) 04713 buff.write(_struct_I.pack(length)) 04714 for val3 in _v421.name: 04715 length = len(val3) 04716 buff.write(struct.pack('<I%ss'%length, length, val3)) 04717 length = len(_v421.position) 04718 buff.write(_struct_I.pack(length)) 04719 pattern = '<%sd'%length 04720 buff.write(_v421.position.tostring()) 04721 length = len(_v421.velocity) 04722 buff.write(_struct_I.pack(length)) 04723 pattern = '<%sd'%length 04724 buff.write(_v421.velocity.tostring()) 04725 length = len(_v421.effort) 04726 buff.write(_struct_I.pack(length)) 04727 pattern = '<%sd'%length 04728 buff.write(_v421.effort.tostring()) 04729 _v424 = val1.grasp_posture 04730 _v425 = _v424.header 04731 buff.write(_struct_I.pack(_v425.seq)) 04732 _v426 = _v425.stamp 04733 _x = _v426 04734 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04735 _x = _v425.frame_id 04736 length = len(_x) 04737 buff.write(struct.pack('<I%ss'%length, length, _x)) 04738 length = len(_v424.name) 04739 buff.write(_struct_I.pack(length)) 04740 for val3 in _v424.name: 04741 length = len(val3) 04742 buff.write(struct.pack('<I%ss'%length, length, val3)) 04743 length = len(_v424.position) 04744 buff.write(_struct_I.pack(length)) 04745 pattern = '<%sd'%length 04746 buff.write(_v424.position.tostring()) 04747 length = len(_v424.velocity) 04748 buff.write(_struct_I.pack(length)) 04749 pattern = '<%sd'%length 04750 buff.write(_v424.velocity.tostring()) 04751 length = len(_v424.effort) 04752 buff.write(_struct_I.pack(length)) 04753 pattern = '<%sd'%length 04754 buff.write(_v424.effort.tostring()) 04755 _v427 = val1.grasp_pose 04756 _v428 = _v427.position 04757 _x = _v428 04758 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04759 _v429 = _v427.orientation 04760 _x = _v429 04761 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04762 _x = val1 04763 buff.write(_struct_dB2f.pack(_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance)) 04764 length = len(val1.moved_obstacles) 04765 buff.write(_struct_I.pack(length)) 04766 for val2 in val1.moved_obstacles: 04767 _x = val2.reference_frame_id 04768 length = len(_x) 04769 buff.write(struct.pack('<I%ss'%length, length, _x)) 04770 length = len(val2.potential_models) 04771 buff.write(_struct_I.pack(length)) 04772 for val3 in val2.potential_models: 04773 buff.write(_struct_i.pack(val3.model_id)) 04774 _v430 = val3.pose 04775 _v431 = _v430.header 04776 buff.write(_struct_I.pack(_v431.seq)) 04777 _v432 = _v431.stamp 04778 _x = _v432 04779 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04780 _x = _v431.frame_id 04781 length = len(_x) 04782 buff.write(struct.pack('<I%ss'%length, length, _x)) 04783 _v433 = _v430.pose 04784 _v434 = _v433.position 04785 _x = _v434 04786 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04787 _v435 = _v433.orientation 04788 _x = _v435 04789 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04790 buff.write(_struct_f.pack(val3.confidence)) 04791 _x = val3.detector_name 04792 length = len(_x) 04793 buff.write(struct.pack('<I%ss'%length, length, _x)) 04794 _v436 = val2.cluster 04795 _v437 = _v436.header 04796 buff.write(_struct_I.pack(_v437.seq)) 04797 _v438 = _v437.stamp 04798 _x = _v438 04799 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04800 _x = _v437.frame_id 04801 length = len(_x) 04802 buff.write(struct.pack('<I%ss'%length, length, _x)) 04803 length = len(_v436.points) 04804 buff.write(_struct_I.pack(length)) 04805 for val4 in _v436.points: 04806 _x = val4 04807 buff.write(_struct_3f.pack(_x.x, _x.y, _x.z)) 04808 length = len(_v436.channels) 04809 buff.write(_struct_I.pack(length)) 04810 for val4 in _v436.channels: 04811 _x = val4.name 04812 length = len(_x) 04813 buff.write(struct.pack('<I%ss'%length, length, _x)) 04814 length = len(val4.values) 04815 buff.write(_struct_I.pack(length)) 04816 pattern = '<%sf'%length 04817 buff.write(val4.values.tostring()) 04818 _v439 = val2.region 04819 _v440 = _v439.cloud 04820 _v441 = _v440.header 04821 buff.write(_struct_I.pack(_v441.seq)) 04822 _v442 = _v441.stamp 04823 _x = _v442 04824 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04825 _x = _v441.frame_id 04826 length = len(_x) 04827 buff.write(struct.pack('<I%ss'%length, length, _x)) 04828 _x = _v440 04829 buff.write(_struct_2I.pack(_x.height, _x.width)) 04830 length = len(_v440.fields) 04831 buff.write(_struct_I.pack(length)) 04832 for val5 in _v440.fields: 04833 _x = val5.name 04834 length = len(_x) 04835 buff.write(struct.pack('<I%ss'%length, length, _x)) 04836 _x = val5 04837 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count)) 04838 _x = _v440 04839 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step)) 04840 _x = _v440.data 04841 length = len(_x) 04842 # - if encoded as a list instead, serialize as bytes instead of string 04843 if type(_x) in [list, tuple]: 04844 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04845 else: 04846 buff.write(struct.pack('<I%ss'%length, length, _x)) 04847 buff.write(_struct_B.pack(_v440.is_dense)) 04848 length = len(_v439.mask) 04849 buff.write(_struct_I.pack(length)) 04850 pattern = '<%si'%length 04851 buff.write(_v439.mask.tostring()) 04852 _v443 = _v439.image 04853 _v444 = _v443.header 04854 buff.write(_struct_I.pack(_v444.seq)) 04855 _v445 = _v444.stamp 04856 _x = _v445 04857 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04858 _x = _v444.frame_id 04859 length = len(_x) 04860 buff.write(struct.pack('<I%ss'%length, length, _x)) 04861 _x = _v443 04862 buff.write(_struct_2I.pack(_x.height, _x.width)) 04863 _x = _v443.encoding 04864 length = len(_x) 04865 buff.write(struct.pack('<I%ss'%length, length, _x)) 04866 _x = _v443 04867 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04868 _x = _v443.data 04869 length = len(_x) 04870 # - if encoded as a list instead, serialize as bytes instead of string 04871 if type(_x) in [list, tuple]: 04872 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04873 else: 04874 buff.write(struct.pack('<I%ss'%length, length, _x)) 04875 _v446 = _v439.disparity_image 04876 _v447 = _v446.header 04877 buff.write(_struct_I.pack(_v447.seq)) 04878 _v448 = _v447.stamp 04879 _x = _v448 04880 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04881 _x = _v447.frame_id 04882 length = len(_x) 04883 buff.write(struct.pack('<I%ss'%length, length, _x)) 04884 _x = _v446 04885 buff.write(_struct_2I.pack(_x.height, _x.width)) 04886 _x = _v446.encoding 04887 length = len(_x) 04888 buff.write(struct.pack('<I%ss'%length, length, _x)) 04889 _x = _v446 04890 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step)) 04891 _x = _v446.data 04892 length = len(_x) 04893 # - if encoded as a list instead, serialize as bytes instead of string 04894 if type(_x) in [list, tuple]: 04895 buff.write(struct.pack('<I%sB'%length, length, *_x)) 04896 else: 04897 buff.write(struct.pack('<I%ss'%length, length, _x)) 04898 _v449 = _v439.cam_info 04899 _v450 = _v449.header 04900 buff.write(_struct_I.pack(_v450.seq)) 04901 _v451 = _v450.stamp 04902 _x = _v451 04903 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04904 _x = _v450.frame_id 04905 length = len(_x) 04906 buff.write(struct.pack('<I%ss'%length, length, _x)) 04907 _x = _v449 04908 buff.write(_struct_2I.pack(_x.height, _x.width)) 04909 _x = _v449.distortion_model 04910 length = len(_x) 04911 buff.write(struct.pack('<I%ss'%length, length, _x)) 04912 length = len(_v449.D) 04913 buff.write(_struct_I.pack(length)) 04914 pattern = '<%sd'%length 04915 buff.write(_v449.D.tostring()) 04916 buff.write(_v449.K.tostring()) 04917 buff.write(_v449.R.tostring()) 04918 buff.write(_v449.P.tostring()) 04919 _x = _v449 04920 buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y)) 04921 _v452 = _v449.roi 04922 _x = _v452 04923 buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify)) 04924 _v453 = _v439.roi_box_pose 04925 _v454 = _v453.header 04926 buff.write(_struct_I.pack(_v454.seq)) 04927 _v455 = _v454.stamp 04928 _x = _v455 04929 buff.write(_struct_2I.pack(_x.secs, _x.nsecs)) 04930 _x = _v454.frame_id 04931 length = len(_x) 04932 buff.write(struct.pack('<I%ss'%length, length, _x)) 04933 _v456 = _v453.pose 04934 _v457 = _v456.position 04935 _x = _v457 04936 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04937 _v458 = _v456.orientation 04938 _x = _v458 04939 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w)) 04940 _v459 = _v439.roi_box_dims 04941 _x = _v459 04942 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z)) 04943 _x = val2.collision_name 04944 length = len(_x) 04945 buff.write(struct.pack('<I%ss'%length, length, _x)) 04946 except struct.error as se: self._check_types(se) 04947 except TypeError as te: self._check_types(te) 04948 04949 def deserialize_numpy(self, str, numpy): 04950 """ 04951 unpack serialized message in str into this message instance using numpy for array types 04952 @param str: byte array of serialized message 04953 @type str: str 04954 @param numpy: numpy python module 04955 @type numpy: module 04956 """ 04957 try: 04958 if self.action_goal is None: 04959 self.action_goal = object_manipulation_msgs.msg.GraspPlanningActionGoal() 04960 if self.action_result is None: 04961 self.action_result = object_manipulation_msgs.msg.GraspPlanningActionResult() 04962 if self.action_feedback is None: 04963 self.action_feedback = object_manipulation_msgs.msg.GraspPlanningActionFeedback() 04964 end = 0 04965 _x = self 04966 start = end 04967 end += 12 04968 (_x.action_goal.header.seq, _x.action_goal.header.stamp.secs, _x.action_goal.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 04969 start = end 04970 end += 4 04971 (length,) = _struct_I.unpack(str[start:end]) 04972 start = end 04973 end += length 04974 self.action_goal.header.frame_id = str[start:end] 04975 _x = self 04976 start = end 04977 end += 8 04978 (_x.action_goal.goal_id.stamp.secs, _x.action_goal.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 04979 start = end 04980 end += 4 04981 (length,) = _struct_I.unpack(str[start:end]) 04982 start = end 04983 end += length 04984 self.action_goal.goal_id.id = str[start:end] 04985 start = end 04986 end += 4 04987 (length,) = _struct_I.unpack(str[start:end]) 04988 start = end 04989 end += length 04990 self.action_goal.goal.arm_name = str[start:end] 04991 start = end 04992 end += 4 04993 (length,) = _struct_I.unpack(str[start:end]) 04994 start = end 04995 end += length 04996 self.action_goal.goal.target.reference_frame_id = str[start:end] 04997 start = end 04998 end += 4 04999 (length,) = _struct_I.unpack(str[start:end]) 05000 self.action_goal.goal.target.potential_models = [] 05001 for i in range(0, length): 05002 val1 = household_objects_database_msgs.msg.DatabaseModelPose() 05003 start = end 05004 end += 4 05005 (val1.model_id,) = _struct_i.unpack(str[start:end]) 05006 _v460 = val1.pose 05007 _v461 = _v460.header 05008 start = end 05009 end += 4 05010 (_v461.seq,) = _struct_I.unpack(str[start:end]) 05011 _v462 = _v461.stamp 05012 _x = _v462 05013 start = end 05014 end += 8 05015 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05016 start = end 05017 end += 4 05018 (length,) = _struct_I.unpack(str[start:end]) 05019 start = end 05020 end += length 05021 _v461.frame_id = str[start:end] 05022 _v463 = _v460.pose 05023 _v464 = _v463.position 05024 _x = _v464 05025 start = end 05026 end += 24 05027 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05028 _v465 = _v463.orientation 05029 _x = _v465 05030 start = end 05031 end += 32 05032 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 05033 start = end 05034 end += 4 05035 (val1.confidence,) = _struct_f.unpack(str[start:end]) 05036 start = end 05037 end += 4 05038 (length,) = _struct_I.unpack(str[start:end]) 05039 start = end 05040 end += length 05041 val1.detector_name = str[start:end] 05042 self.action_goal.goal.target.potential_models.append(val1) 05043 _x = self 05044 start = end 05045 end += 12 05046 (_x.action_goal.goal.target.cluster.header.seq, _x.action_goal.goal.target.cluster.header.stamp.secs, _x.action_goal.goal.target.cluster.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 05047 start = end 05048 end += 4 05049 (length,) = _struct_I.unpack(str[start:end]) 05050 start = end 05051 end += length 05052 self.action_goal.goal.target.cluster.header.frame_id = str[start:end] 05053 start = end 05054 end += 4 05055 (length,) = _struct_I.unpack(str[start:end]) 05056 self.action_goal.goal.target.cluster.points = [] 05057 for i in range(0, length): 05058 val1 = geometry_msgs.msg.Point32() 05059 _x = val1 05060 start = end 05061 end += 12 05062 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 05063 self.action_goal.goal.target.cluster.points.append(val1) 05064 start = end 05065 end += 4 05066 (length,) = _struct_I.unpack(str[start:end]) 05067 self.action_goal.goal.target.cluster.channels = [] 05068 for i in range(0, length): 05069 val1 = sensor_msgs.msg.ChannelFloat32() 05070 start = end 05071 end += 4 05072 (length,) = _struct_I.unpack(str[start:end]) 05073 start = end 05074 end += length 05075 val1.name = str[start:end] 05076 start = end 05077 end += 4 05078 (length,) = _struct_I.unpack(str[start:end]) 05079 pattern = '<%sf'%length 05080 start = end 05081 end += struct.calcsize(pattern) 05082 val1.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length) 05083 self.action_goal.goal.target.cluster.channels.append(val1) 05084 _x = self 05085 start = end 05086 end += 12 05087 (_x.action_goal.goal.target.region.cloud.header.seq, _x.action_goal.goal.target.region.cloud.header.stamp.secs, _x.action_goal.goal.target.region.cloud.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 05088 start = end 05089 end += 4 05090 (length,) = _struct_I.unpack(str[start:end]) 05091 start = end 05092 end += length 05093 self.action_goal.goal.target.region.cloud.header.frame_id = str[start:end] 05094 _x = self 05095 start = end 05096 end += 8 05097 (_x.action_goal.goal.target.region.cloud.height, _x.action_goal.goal.target.region.cloud.width,) = _struct_2I.unpack(str[start:end]) 05098 start = end 05099 end += 4 05100 (length,) = _struct_I.unpack(str[start:end]) 05101 self.action_goal.goal.target.region.cloud.fields = [] 05102 for i in range(0, length): 05103 val1 = sensor_msgs.msg.PointField() 05104 start = end 05105 end += 4 05106 (length,) = _struct_I.unpack(str[start:end]) 05107 start = end 05108 end += length 05109 val1.name = str[start:end] 05110 _x = val1 05111 start = end 05112 end += 9 05113 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 05114 self.action_goal.goal.target.region.cloud.fields.append(val1) 05115 _x = self 05116 start = end 05117 end += 9 05118 (_x.action_goal.goal.target.region.cloud.is_bigendian, _x.action_goal.goal.target.region.cloud.point_step, _x.action_goal.goal.target.region.cloud.row_step,) = _struct_B2I.unpack(str[start:end]) 05119 self.action_goal.goal.target.region.cloud.is_bigendian = bool(self.action_goal.goal.target.region.cloud.is_bigendian) 05120 start = end 05121 end += 4 05122 (length,) = _struct_I.unpack(str[start:end]) 05123 start = end 05124 end += length 05125 self.action_goal.goal.target.region.cloud.data = str[start:end] 05126 start = end 05127 end += 1 05128 (self.action_goal.goal.target.region.cloud.is_dense,) = _struct_B.unpack(str[start:end]) 05129 self.action_goal.goal.target.region.cloud.is_dense = bool(self.action_goal.goal.target.region.cloud.is_dense) 05130 start = end 05131 end += 4 05132 (length,) = _struct_I.unpack(str[start:end]) 05133 pattern = '<%si'%length 05134 start = end 05135 end += struct.calcsize(pattern) 05136 self.action_goal.goal.target.region.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 05137 _x = self 05138 start = end 05139 end += 12 05140 (_x.action_goal.goal.target.region.image.header.seq, _x.action_goal.goal.target.region.image.header.stamp.secs, _x.action_goal.goal.target.region.image.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 05141 start = end 05142 end += 4 05143 (length,) = _struct_I.unpack(str[start:end]) 05144 start = end 05145 end += length 05146 self.action_goal.goal.target.region.image.header.frame_id = str[start:end] 05147 _x = self 05148 start = end 05149 end += 8 05150 (_x.action_goal.goal.target.region.image.height, _x.action_goal.goal.target.region.image.width,) = _struct_2I.unpack(str[start:end]) 05151 start = end 05152 end += 4 05153 (length,) = _struct_I.unpack(str[start:end]) 05154 start = end 05155 end += length 05156 self.action_goal.goal.target.region.image.encoding = str[start:end] 05157 _x = self 05158 start = end 05159 end += 5 05160 (_x.action_goal.goal.target.region.image.is_bigendian, _x.action_goal.goal.target.region.image.step,) = _struct_BI.unpack(str[start:end]) 05161 start = end 05162 end += 4 05163 (length,) = _struct_I.unpack(str[start:end]) 05164 start = end 05165 end += length 05166 self.action_goal.goal.target.region.image.data = str[start:end] 05167 _x = self 05168 start = end 05169 end += 12 05170 (_x.action_goal.goal.target.region.disparity_image.header.seq, _x.action_goal.goal.target.region.disparity_image.header.stamp.secs, _x.action_goal.goal.target.region.disparity_image.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 05171 start = end 05172 end += 4 05173 (length,) = _struct_I.unpack(str[start:end]) 05174 start = end 05175 end += length 05176 self.action_goal.goal.target.region.disparity_image.header.frame_id = str[start:end] 05177 _x = self 05178 start = end 05179 end += 8 05180 (_x.action_goal.goal.target.region.disparity_image.height, _x.action_goal.goal.target.region.disparity_image.width,) = _struct_2I.unpack(str[start:end]) 05181 start = end 05182 end += 4 05183 (length,) = _struct_I.unpack(str[start:end]) 05184 start = end 05185 end += length 05186 self.action_goal.goal.target.region.disparity_image.encoding = str[start:end] 05187 _x = self 05188 start = end 05189 end += 5 05190 (_x.action_goal.goal.target.region.disparity_image.is_bigendian, _x.action_goal.goal.target.region.disparity_image.step,) = _struct_BI.unpack(str[start:end]) 05191 start = end 05192 end += 4 05193 (length,) = _struct_I.unpack(str[start:end]) 05194 start = end 05195 end += length 05196 self.action_goal.goal.target.region.disparity_image.data = str[start:end] 05197 _x = self 05198 start = end 05199 end += 12 05200 (_x.action_goal.goal.target.region.cam_info.header.seq, _x.action_goal.goal.target.region.cam_info.header.stamp.secs, _x.action_goal.goal.target.region.cam_info.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 05201 start = end 05202 end += 4 05203 (length,) = _struct_I.unpack(str[start:end]) 05204 start = end 05205 end += length 05206 self.action_goal.goal.target.region.cam_info.header.frame_id = str[start:end] 05207 _x = self 05208 start = end 05209 end += 8 05210 (_x.action_goal.goal.target.region.cam_info.height, _x.action_goal.goal.target.region.cam_info.width,) = _struct_2I.unpack(str[start:end]) 05211 start = end 05212 end += 4 05213 (length,) = _struct_I.unpack(str[start:end]) 05214 start = end 05215 end += length 05216 self.action_goal.goal.target.region.cam_info.distortion_model = str[start:end] 05217 start = end 05218 end += 4 05219 (length,) = _struct_I.unpack(str[start:end]) 05220 pattern = '<%sd'%length 05221 start = end 05222 end += struct.calcsize(pattern) 05223 self.action_goal.goal.target.region.cam_info.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05224 start = end 05225 end += 72 05226 self.action_goal.goal.target.region.cam_info.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05227 start = end 05228 end += 72 05229 self.action_goal.goal.target.region.cam_info.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05230 start = end 05231 end += 96 05232 self.action_goal.goal.target.region.cam_info.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12) 05233 _x = self 05234 start = end 05235 end += 37 05236 (_x.action_goal.goal.target.region.cam_info.binning_x, _x.action_goal.goal.target.region.cam_info.binning_y, _x.action_goal.goal.target.region.cam_info.roi.x_offset, _x.action_goal.goal.target.region.cam_info.roi.y_offset, _x.action_goal.goal.target.region.cam_info.roi.height, _x.action_goal.goal.target.region.cam_info.roi.width, _x.action_goal.goal.target.region.cam_info.roi.do_rectify, _x.action_goal.goal.target.region.roi_box_pose.header.seq, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.secs, _x.action_goal.goal.target.region.roi_box_pose.header.stamp.nsecs,) = _struct_6IB3I.unpack(str[start:end]) 05237 self.action_goal.goal.target.region.cam_info.roi.do_rectify = bool(self.action_goal.goal.target.region.cam_info.roi.do_rectify) 05238 start = end 05239 end += 4 05240 (length,) = _struct_I.unpack(str[start:end]) 05241 start = end 05242 end += length 05243 self.action_goal.goal.target.region.roi_box_pose.header.frame_id = str[start:end] 05244 _x = self 05245 start = end 05246 end += 80 05247 (_x.action_goal.goal.target.region.roi_box_pose.pose.position.x, _x.action_goal.goal.target.region.roi_box_pose.pose.position.y, _x.action_goal.goal.target.region.roi_box_pose.pose.position.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.x, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.y, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.z, _x.action_goal.goal.target.region.roi_box_pose.pose.orientation.w, _x.action_goal.goal.target.region.roi_box_dims.x, _x.action_goal.goal.target.region.roi_box_dims.y, _x.action_goal.goal.target.region.roi_box_dims.z,) = _struct_10d.unpack(str[start:end]) 05248 start = end 05249 end += 4 05250 (length,) = _struct_I.unpack(str[start:end]) 05251 start = end 05252 end += length 05253 self.action_goal.goal.target.collision_name = str[start:end] 05254 start = end 05255 end += 4 05256 (length,) = _struct_I.unpack(str[start:end]) 05257 start = end 05258 end += length 05259 self.action_goal.goal.collision_object_name = str[start:end] 05260 start = end 05261 end += 4 05262 (length,) = _struct_I.unpack(str[start:end]) 05263 start = end 05264 end += length 05265 self.action_goal.goal.collision_support_surface_name = str[start:end] 05266 start = end 05267 end += 4 05268 (length,) = _struct_I.unpack(str[start:end]) 05269 self.action_goal.goal.grasps_to_evaluate = [] 05270 for i in range(0, length): 05271 val1 = object_manipulation_msgs.msg.Grasp() 05272 _v466 = val1.pre_grasp_posture 05273 _v467 = _v466.header 05274 start = end 05275 end += 4 05276 (_v467.seq,) = _struct_I.unpack(str[start:end]) 05277 _v468 = _v467.stamp 05278 _x = _v468 05279 start = end 05280 end += 8 05281 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05282 start = end 05283 end += 4 05284 (length,) = _struct_I.unpack(str[start:end]) 05285 start = end 05286 end += length 05287 _v467.frame_id = str[start:end] 05288 start = end 05289 end += 4 05290 (length,) = _struct_I.unpack(str[start:end]) 05291 _v466.name = [] 05292 for i in range(0, length): 05293 start = end 05294 end += 4 05295 (length,) = _struct_I.unpack(str[start:end]) 05296 start = end 05297 end += length 05298 val3 = str[start:end] 05299 _v466.name.append(val3) 05300 start = end 05301 end += 4 05302 (length,) = _struct_I.unpack(str[start:end]) 05303 pattern = '<%sd'%length 05304 start = end 05305 end += struct.calcsize(pattern) 05306 _v466.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05307 start = end 05308 end += 4 05309 (length,) = _struct_I.unpack(str[start:end]) 05310 pattern = '<%sd'%length 05311 start = end 05312 end += struct.calcsize(pattern) 05313 _v466.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05314 start = end 05315 end += 4 05316 (length,) = _struct_I.unpack(str[start:end]) 05317 pattern = '<%sd'%length 05318 start = end 05319 end += struct.calcsize(pattern) 05320 _v466.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05321 _v469 = val1.grasp_posture 05322 _v470 = _v469.header 05323 start = end 05324 end += 4 05325 (_v470.seq,) = _struct_I.unpack(str[start:end]) 05326 _v471 = _v470.stamp 05327 _x = _v471 05328 start = end 05329 end += 8 05330 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05331 start = end 05332 end += 4 05333 (length,) = _struct_I.unpack(str[start:end]) 05334 start = end 05335 end += length 05336 _v470.frame_id = str[start:end] 05337 start = end 05338 end += 4 05339 (length,) = _struct_I.unpack(str[start:end]) 05340 _v469.name = [] 05341 for i in range(0, length): 05342 start = end 05343 end += 4 05344 (length,) = _struct_I.unpack(str[start:end]) 05345 start = end 05346 end += length 05347 val3 = str[start:end] 05348 _v469.name.append(val3) 05349 start = end 05350 end += 4 05351 (length,) = _struct_I.unpack(str[start:end]) 05352 pattern = '<%sd'%length 05353 start = end 05354 end += struct.calcsize(pattern) 05355 _v469.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05356 start = end 05357 end += 4 05358 (length,) = _struct_I.unpack(str[start:end]) 05359 pattern = '<%sd'%length 05360 start = end 05361 end += struct.calcsize(pattern) 05362 _v469.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05363 start = end 05364 end += 4 05365 (length,) = _struct_I.unpack(str[start:end]) 05366 pattern = '<%sd'%length 05367 start = end 05368 end += struct.calcsize(pattern) 05369 _v469.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05370 _v472 = val1.grasp_pose 05371 _v473 = _v472.position 05372 _x = _v473 05373 start = end 05374 end += 24 05375 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05376 _v474 = _v472.orientation 05377 _x = _v474 05378 start = end 05379 end += 32 05380 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 05381 _x = val1 05382 start = end 05383 end += 17 05384 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 05385 val1.cluster_rep = bool(val1.cluster_rep) 05386 start = end 05387 end += 4 05388 (length,) = _struct_I.unpack(str[start:end]) 05389 val1.moved_obstacles = [] 05390 for i in range(0, length): 05391 val2 = object_manipulation_msgs.msg.GraspableObject() 05392 start = end 05393 end += 4 05394 (length,) = _struct_I.unpack(str[start:end]) 05395 start = end 05396 end += length 05397 val2.reference_frame_id = str[start:end] 05398 start = end 05399 end += 4 05400 (length,) = _struct_I.unpack(str[start:end]) 05401 val2.potential_models = [] 05402 for i in range(0, length): 05403 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 05404 start = end 05405 end += 4 05406 (val3.model_id,) = _struct_i.unpack(str[start:end]) 05407 _v475 = val3.pose 05408 _v476 = _v475.header 05409 start = end 05410 end += 4 05411 (_v476.seq,) = _struct_I.unpack(str[start:end]) 05412 _v477 = _v476.stamp 05413 _x = _v477 05414 start = end 05415 end += 8 05416 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05417 start = end 05418 end += 4 05419 (length,) = _struct_I.unpack(str[start:end]) 05420 start = end 05421 end += length 05422 _v476.frame_id = str[start:end] 05423 _v478 = _v475.pose 05424 _v479 = _v478.position 05425 _x = _v479 05426 start = end 05427 end += 24 05428 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05429 _v480 = _v478.orientation 05430 _x = _v480 05431 start = end 05432 end += 32 05433 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 05434 start = end 05435 end += 4 05436 (val3.confidence,) = _struct_f.unpack(str[start:end]) 05437 start = end 05438 end += 4 05439 (length,) = _struct_I.unpack(str[start:end]) 05440 start = end 05441 end += length 05442 val3.detector_name = str[start:end] 05443 val2.potential_models.append(val3) 05444 _v481 = val2.cluster 05445 _v482 = _v481.header 05446 start = end 05447 end += 4 05448 (_v482.seq,) = _struct_I.unpack(str[start:end]) 05449 _v483 = _v482.stamp 05450 _x = _v483 05451 start = end 05452 end += 8 05453 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05454 start = end 05455 end += 4 05456 (length,) = _struct_I.unpack(str[start:end]) 05457 start = end 05458 end += length 05459 _v482.frame_id = str[start:end] 05460 start = end 05461 end += 4 05462 (length,) = _struct_I.unpack(str[start:end]) 05463 _v481.points = [] 05464 for i in range(0, length): 05465 val4 = geometry_msgs.msg.Point32() 05466 _x = val4 05467 start = end 05468 end += 12 05469 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 05470 _v481.points.append(val4) 05471 start = end 05472 end += 4 05473 (length,) = _struct_I.unpack(str[start:end]) 05474 _v481.channels = [] 05475 for i in range(0, length): 05476 val4 = sensor_msgs.msg.ChannelFloat32() 05477 start = end 05478 end += 4 05479 (length,) = _struct_I.unpack(str[start:end]) 05480 start = end 05481 end += length 05482 val4.name = str[start:end] 05483 start = end 05484 end += 4 05485 (length,) = _struct_I.unpack(str[start:end]) 05486 pattern = '<%sf'%length 05487 start = end 05488 end += struct.calcsize(pattern) 05489 val4.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length) 05490 _v481.channels.append(val4) 05491 _v484 = val2.region 05492 _v485 = _v484.cloud 05493 _v486 = _v485.header 05494 start = end 05495 end += 4 05496 (_v486.seq,) = _struct_I.unpack(str[start:end]) 05497 _v487 = _v486.stamp 05498 _x = _v487 05499 start = end 05500 end += 8 05501 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05502 start = end 05503 end += 4 05504 (length,) = _struct_I.unpack(str[start:end]) 05505 start = end 05506 end += length 05507 _v486.frame_id = str[start:end] 05508 _x = _v485 05509 start = end 05510 end += 8 05511 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05512 start = end 05513 end += 4 05514 (length,) = _struct_I.unpack(str[start:end]) 05515 _v485.fields = [] 05516 for i in range(0, length): 05517 val5 = sensor_msgs.msg.PointField() 05518 start = end 05519 end += 4 05520 (length,) = _struct_I.unpack(str[start:end]) 05521 start = end 05522 end += length 05523 val5.name = str[start:end] 05524 _x = val5 05525 start = end 05526 end += 9 05527 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 05528 _v485.fields.append(val5) 05529 _x = _v485 05530 start = end 05531 end += 9 05532 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 05533 _v485.is_bigendian = bool(_v485.is_bigendian) 05534 start = end 05535 end += 4 05536 (length,) = _struct_I.unpack(str[start:end]) 05537 start = end 05538 end += length 05539 _v485.data = str[start:end] 05540 start = end 05541 end += 1 05542 (_v485.is_dense,) = _struct_B.unpack(str[start:end]) 05543 _v485.is_dense = bool(_v485.is_dense) 05544 start = end 05545 end += 4 05546 (length,) = _struct_I.unpack(str[start:end]) 05547 pattern = '<%si'%length 05548 start = end 05549 end += struct.calcsize(pattern) 05550 _v484.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 05551 _v488 = _v484.image 05552 _v489 = _v488.header 05553 start = end 05554 end += 4 05555 (_v489.seq,) = _struct_I.unpack(str[start:end]) 05556 _v490 = _v489.stamp 05557 _x = _v490 05558 start = end 05559 end += 8 05560 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05561 start = end 05562 end += 4 05563 (length,) = _struct_I.unpack(str[start:end]) 05564 start = end 05565 end += length 05566 _v489.frame_id = str[start:end] 05567 _x = _v488 05568 start = end 05569 end += 8 05570 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05571 start = end 05572 end += 4 05573 (length,) = _struct_I.unpack(str[start:end]) 05574 start = end 05575 end += length 05576 _v488.encoding = str[start:end] 05577 _x = _v488 05578 start = end 05579 end += 5 05580 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 05581 start = end 05582 end += 4 05583 (length,) = _struct_I.unpack(str[start:end]) 05584 start = end 05585 end += length 05586 _v488.data = str[start:end] 05587 _v491 = _v484.disparity_image 05588 _v492 = _v491.header 05589 start = end 05590 end += 4 05591 (_v492.seq,) = _struct_I.unpack(str[start:end]) 05592 _v493 = _v492.stamp 05593 _x = _v493 05594 start = end 05595 end += 8 05596 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05597 start = end 05598 end += 4 05599 (length,) = _struct_I.unpack(str[start:end]) 05600 start = end 05601 end += length 05602 _v492.frame_id = str[start:end] 05603 _x = _v491 05604 start = end 05605 end += 8 05606 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05607 start = end 05608 end += 4 05609 (length,) = _struct_I.unpack(str[start:end]) 05610 start = end 05611 end += length 05612 _v491.encoding = str[start:end] 05613 _x = _v491 05614 start = end 05615 end += 5 05616 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 05617 start = end 05618 end += 4 05619 (length,) = _struct_I.unpack(str[start:end]) 05620 start = end 05621 end += length 05622 _v491.data = str[start:end] 05623 _v494 = _v484.cam_info 05624 _v495 = _v494.header 05625 start = end 05626 end += 4 05627 (_v495.seq,) = _struct_I.unpack(str[start:end]) 05628 _v496 = _v495.stamp 05629 _x = _v496 05630 start = end 05631 end += 8 05632 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05633 start = end 05634 end += 4 05635 (length,) = _struct_I.unpack(str[start:end]) 05636 start = end 05637 end += length 05638 _v495.frame_id = str[start:end] 05639 _x = _v494 05640 start = end 05641 end += 8 05642 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05643 start = end 05644 end += 4 05645 (length,) = _struct_I.unpack(str[start:end]) 05646 start = end 05647 end += length 05648 _v494.distortion_model = str[start:end] 05649 start = end 05650 end += 4 05651 (length,) = _struct_I.unpack(str[start:end]) 05652 pattern = '<%sd'%length 05653 start = end 05654 end += struct.calcsize(pattern) 05655 _v494.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05656 start = end 05657 end += 72 05658 _v494.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05659 start = end 05660 end += 72 05661 _v494.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05662 start = end 05663 end += 96 05664 _v494.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12) 05665 _x = _v494 05666 start = end 05667 end += 8 05668 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 05669 _v497 = _v494.roi 05670 _x = _v497 05671 start = end 05672 end += 17 05673 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 05674 _v497.do_rectify = bool(_v497.do_rectify) 05675 _v498 = _v484.roi_box_pose 05676 _v499 = _v498.header 05677 start = end 05678 end += 4 05679 (_v499.seq,) = _struct_I.unpack(str[start:end]) 05680 _v500 = _v499.stamp 05681 _x = _v500 05682 start = end 05683 end += 8 05684 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05685 start = end 05686 end += 4 05687 (length,) = _struct_I.unpack(str[start:end]) 05688 start = end 05689 end += length 05690 _v499.frame_id = str[start:end] 05691 _v501 = _v498.pose 05692 _v502 = _v501.position 05693 _x = _v502 05694 start = end 05695 end += 24 05696 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05697 _v503 = _v501.orientation 05698 _x = _v503 05699 start = end 05700 end += 32 05701 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 05702 _v504 = _v484.roi_box_dims 05703 _x = _v504 05704 start = end 05705 end += 24 05706 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05707 start = end 05708 end += 4 05709 (length,) = _struct_I.unpack(str[start:end]) 05710 start = end 05711 end += length 05712 val2.collision_name = str[start:end] 05713 val1.moved_obstacles.append(val2) 05714 self.action_goal.goal.grasps_to_evaluate.append(val1) 05715 start = end 05716 end += 4 05717 (length,) = _struct_I.unpack(str[start:end]) 05718 self.action_goal.goal.movable_obstacles = [] 05719 for i in range(0, length): 05720 val1 = object_manipulation_msgs.msg.GraspableObject() 05721 start = end 05722 end += 4 05723 (length,) = _struct_I.unpack(str[start:end]) 05724 start = end 05725 end += length 05726 val1.reference_frame_id = str[start:end] 05727 start = end 05728 end += 4 05729 (length,) = _struct_I.unpack(str[start:end]) 05730 val1.potential_models = [] 05731 for i in range(0, length): 05732 val2 = household_objects_database_msgs.msg.DatabaseModelPose() 05733 start = end 05734 end += 4 05735 (val2.model_id,) = _struct_i.unpack(str[start:end]) 05736 _v505 = val2.pose 05737 _v506 = _v505.header 05738 start = end 05739 end += 4 05740 (_v506.seq,) = _struct_I.unpack(str[start:end]) 05741 _v507 = _v506.stamp 05742 _x = _v507 05743 start = end 05744 end += 8 05745 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05746 start = end 05747 end += 4 05748 (length,) = _struct_I.unpack(str[start:end]) 05749 start = end 05750 end += length 05751 _v506.frame_id = str[start:end] 05752 _v508 = _v505.pose 05753 _v509 = _v508.position 05754 _x = _v509 05755 start = end 05756 end += 24 05757 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 05758 _v510 = _v508.orientation 05759 _x = _v510 05760 start = end 05761 end += 32 05762 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 05763 start = end 05764 end += 4 05765 (val2.confidence,) = _struct_f.unpack(str[start:end]) 05766 start = end 05767 end += 4 05768 (length,) = _struct_I.unpack(str[start:end]) 05769 start = end 05770 end += length 05771 val2.detector_name = str[start:end] 05772 val1.potential_models.append(val2) 05773 _v511 = val1.cluster 05774 _v512 = _v511.header 05775 start = end 05776 end += 4 05777 (_v512.seq,) = _struct_I.unpack(str[start:end]) 05778 _v513 = _v512.stamp 05779 _x = _v513 05780 start = end 05781 end += 8 05782 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05783 start = end 05784 end += 4 05785 (length,) = _struct_I.unpack(str[start:end]) 05786 start = end 05787 end += length 05788 _v512.frame_id = str[start:end] 05789 start = end 05790 end += 4 05791 (length,) = _struct_I.unpack(str[start:end]) 05792 _v511.points = [] 05793 for i in range(0, length): 05794 val3 = geometry_msgs.msg.Point32() 05795 _x = val3 05796 start = end 05797 end += 12 05798 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 05799 _v511.points.append(val3) 05800 start = end 05801 end += 4 05802 (length,) = _struct_I.unpack(str[start:end]) 05803 _v511.channels = [] 05804 for i in range(0, length): 05805 val3 = sensor_msgs.msg.ChannelFloat32() 05806 start = end 05807 end += 4 05808 (length,) = _struct_I.unpack(str[start:end]) 05809 start = end 05810 end += length 05811 val3.name = str[start:end] 05812 start = end 05813 end += 4 05814 (length,) = _struct_I.unpack(str[start:end]) 05815 pattern = '<%sf'%length 05816 start = end 05817 end += struct.calcsize(pattern) 05818 val3.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length) 05819 _v511.channels.append(val3) 05820 _v514 = val1.region 05821 _v515 = _v514.cloud 05822 _v516 = _v515.header 05823 start = end 05824 end += 4 05825 (_v516.seq,) = _struct_I.unpack(str[start:end]) 05826 _v517 = _v516.stamp 05827 _x = _v517 05828 start = end 05829 end += 8 05830 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05831 start = end 05832 end += 4 05833 (length,) = _struct_I.unpack(str[start:end]) 05834 start = end 05835 end += length 05836 _v516.frame_id = str[start:end] 05837 _x = _v515 05838 start = end 05839 end += 8 05840 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05841 start = end 05842 end += 4 05843 (length,) = _struct_I.unpack(str[start:end]) 05844 _v515.fields = [] 05845 for i in range(0, length): 05846 val4 = sensor_msgs.msg.PointField() 05847 start = end 05848 end += 4 05849 (length,) = _struct_I.unpack(str[start:end]) 05850 start = end 05851 end += length 05852 val4.name = str[start:end] 05853 _x = val4 05854 start = end 05855 end += 9 05856 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 05857 _v515.fields.append(val4) 05858 _x = _v515 05859 start = end 05860 end += 9 05861 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 05862 _v515.is_bigendian = bool(_v515.is_bigendian) 05863 start = end 05864 end += 4 05865 (length,) = _struct_I.unpack(str[start:end]) 05866 start = end 05867 end += length 05868 _v515.data = str[start:end] 05869 start = end 05870 end += 1 05871 (_v515.is_dense,) = _struct_B.unpack(str[start:end]) 05872 _v515.is_dense = bool(_v515.is_dense) 05873 start = end 05874 end += 4 05875 (length,) = _struct_I.unpack(str[start:end]) 05876 pattern = '<%si'%length 05877 start = end 05878 end += struct.calcsize(pattern) 05879 _v514.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 05880 _v518 = _v514.image 05881 _v519 = _v518.header 05882 start = end 05883 end += 4 05884 (_v519.seq,) = _struct_I.unpack(str[start:end]) 05885 _v520 = _v519.stamp 05886 _x = _v520 05887 start = end 05888 end += 8 05889 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05890 start = end 05891 end += 4 05892 (length,) = _struct_I.unpack(str[start:end]) 05893 start = end 05894 end += length 05895 _v519.frame_id = str[start:end] 05896 _x = _v518 05897 start = end 05898 end += 8 05899 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05900 start = end 05901 end += 4 05902 (length,) = _struct_I.unpack(str[start:end]) 05903 start = end 05904 end += length 05905 _v518.encoding = str[start:end] 05906 _x = _v518 05907 start = end 05908 end += 5 05909 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 05910 start = end 05911 end += 4 05912 (length,) = _struct_I.unpack(str[start:end]) 05913 start = end 05914 end += length 05915 _v518.data = str[start:end] 05916 _v521 = _v514.disparity_image 05917 _v522 = _v521.header 05918 start = end 05919 end += 4 05920 (_v522.seq,) = _struct_I.unpack(str[start:end]) 05921 _v523 = _v522.stamp 05922 _x = _v523 05923 start = end 05924 end += 8 05925 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05926 start = end 05927 end += 4 05928 (length,) = _struct_I.unpack(str[start:end]) 05929 start = end 05930 end += length 05931 _v522.frame_id = str[start:end] 05932 _x = _v521 05933 start = end 05934 end += 8 05935 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05936 start = end 05937 end += 4 05938 (length,) = _struct_I.unpack(str[start:end]) 05939 start = end 05940 end += length 05941 _v521.encoding = str[start:end] 05942 _x = _v521 05943 start = end 05944 end += 5 05945 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 05946 start = end 05947 end += 4 05948 (length,) = _struct_I.unpack(str[start:end]) 05949 start = end 05950 end += length 05951 _v521.data = str[start:end] 05952 _v524 = _v514.cam_info 05953 _v525 = _v524.header 05954 start = end 05955 end += 4 05956 (_v525.seq,) = _struct_I.unpack(str[start:end]) 05957 _v526 = _v525.stamp 05958 _x = _v526 05959 start = end 05960 end += 8 05961 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 05962 start = end 05963 end += 4 05964 (length,) = _struct_I.unpack(str[start:end]) 05965 start = end 05966 end += length 05967 _v525.frame_id = str[start:end] 05968 _x = _v524 05969 start = end 05970 end += 8 05971 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 05972 start = end 05973 end += 4 05974 (length,) = _struct_I.unpack(str[start:end]) 05975 start = end 05976 end += length 05977 _v524.distortion_model = str[start:end] 05978 start = end 05979 end += 4 05980 (length,) = _struct_I.unpack(str[start:end]) 05981 pattern = '<%sd'%length 05982 start = end 05983 end += struct.calcsize(pattern) 05984 _v524.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 05985 start = end 05986 end += 72 05987 _v524.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05988 start = end 05989 end += 72 05990 _v524.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 05991 start = end 05992 end += 96 05993 _v524.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12) 05994 _x = _v524 05995 start = end 05996 end += 8 05997 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 05998 _v527 = _v524.roi 05999 _x = _v527 06000 start = end 06001 end += 17 06002 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 06003 _v527.do_rectify = bool(_v527.do_rectify) 06004 _v528 = _v514.roi_box_pose 06005 _v529 = _v528.header 06006 start = end 06007 end += 4 06008 (_v529.seq,) = _struct_I.unpack(str[start:end]) 06009 _v530 = _v529.stamp 06010 _x = _v530 06011 start = end 06012 end += 8 06013 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06014 start = end 06015 end += 4 06016 (length,) = _struct_I.unpack(str[start:end]) 06017 start = end 06018 end += length 06019 _v529.frame_id = str[start:end] 06020 _v531 = _v528.pose 06021 _v532 = _v531.position 06022 _x = _v532 06023 start = end 06024 end += 24 06025 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06026 _v533 = _v531.orientation 06027 _x = _v533 06028 start = end 06029 end += 32 06030 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06031 _v534 = _v514.roi_box_dims 06032 _x = _v534 06033 start = end 06034 end += 24 06035 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06036 start = end 06037 end += 4 06038 (length,) = _struct_I.unpack(str[start:end]) 06039 start = end 06040 end += length 06041 val1.collision_name = str[start:end] 06042 self.action_goal.goal.movable_obstacles.append(val1) 06043 _x = self 06044 start = end 06045 end += 12 06046 (_x.action_result.header.seq, _x.action_result.header.stamp.secs, _x.action_result.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end]) 06047 start = end 06048 end += 4 06049 (length,) = _struct_I.unpack(str[start:end]) 06050 start = end 06051 end += length 06052 self.action_result.header.frame_id = str[start:end] 06053 _x = self 06054 start = end 06055 end += 8 06056 (_x.action_result.status.goal_id.stamp.secs, _x.action_result.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 06057 start = end 06058 end += 4 06059 (length,) = _struct_I.unpack(str[start:end]) 06060 start = end 06061 end += length 06062 self.action_result.status.goal_id.id = str[start:end] 06063 start = end 06064 end += 1 06065 (self.action_result.status.status,) = _struct_B.unpack(str[start:end]) 06066 start = end 06067 end += 4 06068 (length,) = _struct_I.unpack(str[start:end]) 06069 start = end 06070 end += length 06071 self.action_result.status.text = str[start:end] 06072 start = end 06073 end += 4 06074 (length,) = _struct_I.unpack(str[start:end]) 06075 self.action_result.result.grasps = [] 06076 for i in range(0, length): 06077 val1 = object_manipulation_msgs.msg.Grasp() 06078 _v535 = val1.pre_grasp_posture 06079 _v536 = _v535.header 06080 start = end 06081 end += 4 06082 (_v536.seq,) = _struct_I.unpack(str[start:end]) 06083 _v537 = _v536.stamp 06084 _x = _v537 06085 start = end 06086 end += 8 06087 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06088 start = end 06089 end += 4 06090 (length,) = _struct_I.unpack(str[start:end]) 06091 start = end 06092 end += length 06093 _v536.frame_id = str[start:end] 06094 start = end 06095 end += 4 06096 (length,) = _struct_I.unpack(str[start:end]) 06097 _v535.name = [] 06098 for i in range(0, length): 06099 start = end 06100 end += 4 06101 (length,) = _struct_I.unpack(str[start:end]) 06102 start = end 06103 end += length 06104 val3 = str[start:end] 06105 _v535.name.append(val3) 06106 start = end 06107 end += 4 06108 (length,) = _struct_I.unpack(str[start:end]) 06109 pattern = '<%sd'%length 06110 start = end 06111 end += struct.calcsize(pattern) 06112 _v535.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06113 start = end 06114 end += 4 06115 (length,) = _struct_I.unpack(str[start:end]) 06116 pattern = '<%sd'%length 06117 start = end 06118 end += struct.calcsize(pattern) 06119 _v535.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06120 start = end 06121 end += 4 06122 (length,) = _struct_I.unpack(str[start:end]) 06123 pattern = '<%sd'%length 06124 start = end 06125 end += struct.calcsize(pattern) 06126 _v535.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06127 _v538 = val1.grasp_posture 06128 _v539 = _v538.header 06129 start = end 06130 end += 4 06131 (_v539.seq,) = _struct_I.unpack(str[start:end]) 06132 _v540 = _v539.stamp 06133 _x = _v540 06134 start = end 06135 end += 8 06136 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06137 start = end 06138 end += 4 06139 (length,) = _struct_I.unpack(str[start:end]) 06140 start = end 06141 end += length 06142 _v539.frame_id = str[start:end] 06143 start = end 06144 end += 4 06145 (length,) = _struct_I.unpack(str[start:end]) 06146 _v538.name = [] 06147 for i in range(0, length): 06148 start = end 06149 end += 4 06150 (length,) = _struct_I.unpack(str[start:end]) 06151 start = end 06152 end += length 06153 val3 = str[start:end] 06154 _v538.name.append(val3) 06155 start = end 06156 end += 4 06157 (length,) = _struct_I.unpack(str[start:end]) 06158 pattern = '<%sd'%length 06159 start = end 06160 end += struct.calcsize(pattern) 06161 _v538.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06162 start = end 06163 end += 4 06164 (length,) = _struct_I.unpack(str[start:end]) 06165 pattern = '<%sd'%length 06166 start = end 06167 end += struct.calcsize(pattern) 06168 _v538.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06169 start = end 06170 end += 4 06171 (length,) = _struct_I.unpack(str[start:end]) 06172 pattern = '<%sd'%length 06173 start = end 06174 end += struct.calcsize(pattern) 06175 _v538.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06176 _v541 = val1.grasp_pose 06177 _v542 = _v541.position 06178 _x = _v542 06179 start = end 06180 end += 24 06181 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06182 _v543 = _v541.orientation 06183 _x = _v543 06184 start = end 06185 end += 32 06186 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06187 _x = val1 06188 start = end 06189 end += 17 06190 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 06191 val1.cluster_rep = bool(val1.cluster_rep) 06192 start = end 06193 end += 4 06194 (length,) = _struct_I.unpack(str[start:end]) 06195 val1.moved_obstacles = [] 06196 for i in range(0, length): 06197 val2 = object_manipulation_msgs.msg.GraspableObject() 06198 start = end 06199 end += 4 06200 (length,) = _struct_I.unpack(str[start:end]) 06201 start = end 06202 end += length 06203 val2.reference_frame_id = str[start:end] 06204 start = end 06205 end += 4 06206 (length,) = _struct_I.unpack(str[start:end]) 06207 val2.potential_models = [] 06208 for i in range(0, length): 06209 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 06210 start = end 06211 end += 4 06212 (val3.model_id,) = _struct_i.unpack(str[start:end]) 06213 _v544 = val3.pose 06214 _v545 = _v544.header 06215 start = end 06216 end += 4 06217 (_v545.seq,) = _struct_I.unpack(str[start:end]) 06218 _v546 = _v545.stamp 06219 _x = _v546 06220 start = end 06221 end += 8 06222 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06223 start = end 06224 end += 4 06225 (length,) = _struct_I.unpack(str[start:end]) 06226 start = end 06227 end += length 06228 _v545.frame_id = str[start:end] 06229 _v547 = _v544.pose 06230 _v548 = _v547.position 06231 _x = _v548 06232 start = end 06233 end += 24 06234 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06235 _v549 = _v547.orientation 06236 _x = _v549 06237 start = end 06238 end += 32 06239 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06240 start = end 06241 end += 4 06242 (val3.confidence,) = _struct_f.unpack(str[start:end]) 06243 start = end 06244 end += 4 06245 (length,) = _struct_I.unpack(str[start:end]) 06246 start = end 06247 end += length 06248 val3.detector_name = str[start:end] 06249 val2.potential_models.append(val3) 06250 _v550 = val2.cluster 06251 _v551 = _v550.header 06252 start = end 06253 end += 4 06254 (_v551.seq,) = _struct_I.unpack(str[start:end]) 06255 _v552 = _v551.stamp 06256 _x = _v552 06257 start = end 06258 end += 8 06259 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06260 start = end 06261 end += 4 06262 (length,) = _struct_I.unpack(str[start:end]) 06263 start = end 06264 end += length 06265 _v551.frame_id = str[start:end] 06266 start = end 06267 end += 4 06268 (length,) = _struct_I.unpack(str[start:end]) 06269 _v550.points = [] 06270 for i in range(0, length): 06271 val4 = geometry_msgs.msg.Point32() 06272 _x = val4 06273 start = end 06274 end += 12 06275 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 06276 _v550.points.append(val4) 06277 start = end 06278 end += 4 06279 (length,) = _struct_I.unpack(str[start:end]) 06280 _v550.channels = [] 06281 for i in range(0, length): 06282 val4 = sensor_msgs.msg.ChannelFloat32() 06283 start = end 06284 end += 4 06285 (length,) = _struct_I.unpack(str[start:end]) 06286 start = end 06287 end += length 06288 val4.name = str[start:end] 06289 start = end 06290 end += 4 06291 (length,) = _struct_I.unpack(str[start:end]) 06292 pattern = '<%sf'%length 06293 start = end 06294 end += struct.calcsize(pattern) 06295 val4.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length) 06296 _v550.channels.append(val4) 06297 _v553 = val2.region 06298 _v554 = _v553.cloud 06299 _v555 = _v554.header 06300 start = end 06301 end += 4 06302 (_v555.seq,) = _struct_I.unpack(str[start:end]) 06303 _v556 = _v555.stamp 06304 _x = _v556 06305 start = end 06306 end += 8 06307 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06308 start = end 06309 end += 4 06310 (length,) = _struct_I.unpack(str[start:end]) 06311 start = end 06312 end += length 06313 _v555.frame_id = str[start:end] 06314 _x = _v554 06315 start = end 06316 end += 8 06317 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06318 start = end 06319 end += 4 06320 (length,) = _struct_I.unpack(str[start:end]) 06321 _v554.fields = [] 06322 for i in range(0, length): 06323 val5 = sensor_msgs.msg.PointField() 06324 start = end 06325 end += 4 06326 (length,) = _struct_I.unpack(str[start:end]) 06327 start = end 06328 end += length 06329 val5.name = str[start:end] 06330 _x = val5 06331 start = end 06332 end += 9 06333 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 06334 _v554.fields.append(val5) 06335 _x = _v554 06336 start = end 06337 end += 9 06338 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 06339 _v554.is_bigendian = bool(_v554.is_bigendian) 06340 start = end 06341 end += 4 06342 (length,) = _struct_I.unpack(str[start:end]) 06343 start = end 06344 end += length 06345 _v554.data = str[start:end] 06346 start = end 06347 end += 1 06348 (_v554.is_dense,) = _struct_B.unpack(str[start:end]) 06349 _v554.is_dense = bool(_v554.is_dense) 06350 start = end 06351 end += 4 06352 (length,) = _struct_I.unpack(str[start:end]) 06353 pattern = '<%si'%length 06354 start = end 06355 end += struct.calcsize(pattern) 06356 _v553.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 06357 _v557 = _v553.image 06358 _v558 = _v557.header 06359 start = end 06360 end += 4 06361 (_v558.seq,) = _struct_I.unpack(str[start:end]) 06362 _v559 = _v558.stamp 06363 _x = _v559 06364 start = end 06365 end += 8 06366 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06367 start = end 06368 end += 4 06369 (length,) = _struct_I.unpack(str[start:end]) 06370 start = end 06371 end += length 06372 _v558.frame_id = str[start:end] 06373 _x = _v557 06374 start = end 06375 end += 8 06376 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06377 start = end 06378 end += 4 06379 (length,) = _struct_I.unpack(str[start:end]) 06380 start = end 06381 end += length 06382 _v557.encoding = str[start:end] 06383 _x = _v557 06384 start = end 06385 end += 5 06386 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 06387 start = end 06388 end += 4 06389 (length,) = _struct_I.unpack(str[start:end]) 06390 start = end 06391 end += length 06392 _v557.data = str[start:end] 06393 _v560 = _v553.disparity_image 06394 _v561 = _v560.header 06395 start = end 06396 end += 4 06397 (_v561.seq,) = _struct_I.unpack(str[start:end]) 06398 _v562 = _v561.stamp 06399 _x = _v562 06400 start = end 06401 end += 8 06402 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06403 start = end 06404 end += 4 06405 (length,) = _struct_I.unpack(str[start:end]) 06406 start = end 06407 end += length 06408 _v561.frame_id = str[start:end] 06409 _x = _v560 06410 start = end 06411 end += 8 06412 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06413 start = end 06414 end += 4 06415 (length,) = _struct_I.unpack(str[start:end]) 06416 start = end 06417 end += length 06418 _v560.encoding = str[start:end] 06419 _x = _v560 06420 start = end 06421 end += 5 06422 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 06423 start = end 06424 end += 4 06425 (length,) = _struct_I.unpack(str[start:end]) 06426 start = end 06427 end += length 06428 _v560.data = str[start:end] 06429 _v563 = _v553.cam_info 06430 _v564 = _v563.header 06431 start = end 06432 end += 4 06433 (_v564.seq,) = _struct_I.unpack(str[start:end]) 06434 _v565 = _v564.stamp 06435 _x = _v565 06436 start = end 06437 end += 8 06438 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06439 start = end 06440 end += 4 06441 (length,) = _struct_I.unpack(str[start:end]) 06442 start = end 06443 end += length 06444 _v564.frame_id = str[start:end] 06445 _x = _v563 06446 start = end 06447 end += 8 06448 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06449 start = end 06450 end += 4 06451 (length,) = _struct_I.unpack(str[start:end]) 06452 start = end 06453 end += length 06454 _v563.distortion_model = str[start:end] 06455 start = end 06456 end += 4 06457 (length,) = _struct_I.unpack(str[start:end]) 06458 pattern = '<%sd'%length 06459 start = end 06460 end += struct.calcsize(pattern) 06461 _v563.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06462 start = end 06463 end += 72 06464 _v563.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 06465 start = end 06466 end += 72 06467 _v563.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 06468 start = end 06469 end += 96 06470 _v563.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12) 06471 _x = _v563 06472 start = end 06473 end += 8 06474 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 06475 _v566 = _v563.roi 06476 _x = _v566 06477 start = end 06478 end += 17 06479 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 06480 _v566.do_rectify = bool(_v566.do_rectify) 06481 _v567 = _v553.roi_box_pose 06482 _v568 = _v567.header 06483 start = end 06484 end += 4 06485 (_v568.seq,) = _struct_I.unpack(str[start:end]) 06486 _v569 = _v568.stamp 06487 _x = _v569 06488 start = end 06489 end += 8 06490 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06491 start = end 06492 end += 4 06493 (length,) = _struct_I.unpack(str[start:end]) 06494 start = end 06495 end += length 06496 _v568.frame_id = str[start:end] 06497 _v570 = _v567.pose 06498 _v571 = _v570.position 06499 _x = _v571 06500 start = end 06501 end += 24 06502 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06503 _v572 = _v570.orientation 06504 _x = _v572 06505 start = end 06506 end += 32 06507 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06508 _v573 = _v553.roi_box_dims 06509 _x = _v573 06510 start = end 06511 end += 24 06512 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06513 start = end 06514 end += 4 06515 (length,) = _struct_I.unpack(str[start:end]) 06516 start = end 06517 end += length 06518 val2.collision_name = str[start:end] 06519 val1.moved_obstacles.append(val2) 06520 self.action_result.result.grasps.append(val1) 06521 _x = self 06522 start = end 06523 end += 16 06524 (_x.action_result.result.error_code.value, _x.action_feedback.header.seq, _x.action_feedback.header.stamp.secs, _x.action_feedback.header.stamp.nsecs,) = _struct_i3I.unpack(str[start:end]) 06525 start = end 06526 end += 4 06527 (length,) = _struct_I.unpack(str[start:end]) 06528 start = end 06529 end += length 06530 self.action_feedback.header.frame_id = str[start:end] 06531 _x = self 06532 start = end 06533 end += 8 06534 (_x.action_feedback.status.goal_id.stamp.secs, _x.action_feedback.status.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end]) 06535 start = end 06536 end += 4 06537 (length,) = _struct_I.unpack(str[start:end]) 06538 start = end 06539 end += length 06540 self.action_feedback.status.goal_id.id = str[start:end] 06541 start = end 06542 end += 1 06543 (self.action_feedback.status.status,) = _struct_B.unpack(str[start:end]) 06544 start = end 06545 end += 4 06546 (length,) = _struct_I.unpack(str[start:end]) 06547 start = end 06548 end += length 06549 self.action_feedback.status.text = str[start:end] 06550 start = end 06551 end += 4 06552 (length,) = _struct_I.unpack(str[start:end]) 06553 self.action_feedback.feedback.grasps = [] 06554 for i in range(0, length): 06555 val1 = object_manipulation_msgs.msg.Grasp() 06556 _v574 = val1.pre_grasp_posture 06557 _v575 = _v574.header 06558 start = end 06559 end += 4 06560 (_v575.seq,) = _struct_I.unpack(str[start:end]) 06561 _v576 = _v575.stamp 06562 _x = _v576 06563 start = end 06564 end += 8 06565 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06566 start = end 06567 end += 4 06568 (length,) = _struct_I.unpack(str[start:end]) 06569 start = end 06570 end += length 06571 _v575.frame_id = str[start:end] 06572 start = end 06573 end += 4 06574 (length,) = _struct_I.unpack(str[start:end]) 06575 _v574.name = [] 06576 for i in range(0, length): 06577 start = end 06578 end += 4 06579 (length,) = _struct_I.unpack(str[start:end]) 06580 start = end 06581 end += length 06582 val3 = str[start:end] 06583 _v574.name.append(val3) 06584 start = end 06585 end += 4 06586 (length,) = _struct_I.unpack(str[start:end]) 06587 pattern = '<%sd'%length 06588 start = end 06589 end += struct.calcsize(pattern) 06590 _v574.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06591 start = end 06592 end += 4 06593 (length,) = _struct_I.unpack(str[start:end]) 06594 pattern = '<%sd'%length 06595 start = end 06596 end += struct.calcsize(pattern) 06597 _v574.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06598 start = end 06599 end += 4 06600 (length,) = _struct_I.unpack(str[start:end]) 06601 pattern = '<%sd'%length 06602 start = end 06603 end += struct.calcsize(pattern) 06604 _v574.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06605 _v577 = val1.grasp_posture 06606 _v578 = _v577.header 06607 start = end 06608 end += 4 06609 (_v578.seq,) = _struct_I.unpack(str[start:end]) 06610 _v579 = _v578.stamp 06611 _x = _v579 06612 start = end 06613 end += 8 06614 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06615 start = end 06616 end += 4 06617 (length,) = _struct_I.unpack(str[start:end]) 06618 start = end 06619 end += length 06620 _v578.frame_id = str[start:end] 06621 start = end 06622 end += 4 06623 (length,) = _struct_I.unpack(str[start:end]) 06624 _v577.name = [] 06625 for i in range(0, length): 06626 start = end 06627 end += 4 06628 (length,) = _struct_I.unpack(str[start:end]) 06629 start = end 06630 end += length 06631 val3 = str[start:end] 06632 _v577.name.append(val3) 06633 start = end 06634 end += 4 06635 (length,) = _struct_I.unpack(str[start:end]) 06636 pattern = '<%sd'%length 06637 start = end 06638 end += struct.calcsize(pattern) 06639 _v577.position = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06640 start = end 06641 end += 4 06642 (length,) = _struct_I.unpack(str[start:end]) 06643 pattern = '<%sd'%length 06644 start = end 06645 end += struct.calcsize(pattern) 06646 _v577.velocity = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06647 start = end 06648 end += 4 06649 (length,) = _struct_I.unpack(str[start:end]) 06650 pattern = '<%sd'%length 06651 start = end 06652 end += struct.calcsize(pattern) 06653 _v577.effort = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06654 _v580 = val1.grasp_pose 06655 _v581 = _v580.position 06656 _x = _v581 06657 start = end 06658 end += 24 06659 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06660 _v582 = _v580.orientation 06661 _x = _v582 06662 start = end 06663 end += 32 06664 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06665 _x = val1 06666 start = end 06667 end += 17 06668 (_x.success_probability, _x.cluster_rep, _x.desired_approach_distance, _x.min_approach_distance,) = _struct_dB2f.unpack(str[start:end]) 06669 val1.cluster_rep = bool(val1.cluster_rep) 06670 start = end 06671 end += 4 06672 (length,) = _struct_I.unpack(str[start:end]) 06673 val1.moved_obstacles = [] 06674 for i in range(0, length): 06675 val2 = object_manipulation_msgs.msg.GraspableObject() 06676 start = end 06677 end += 4 06678 (length,) = _struct_I.unpack(str[start:end]) 06679 start = end 06680 end += length 06681 val2.reference_frame_id = str[start:end] 06682 start = end 06683 end += 4 06684 (length,) = _struct_I.unpack(str[start:end]) 06685 val2.potential_models = [] 06686 for i in range(0, length): 06687 val3 = household_objects_database_msgs.msg.DatabaseModelPose() 06688 start = end 06689 end += 4 06690 (val3.model_id,) = _struct_i.unpack(str[start:end]) 06691 _v583 = val3.pose 06692 _v584 = _v583.header 06693 start = end 06694 end += 4 06695 (_v584.seq,) = _struct_I.unpack(str[start:end]) 06696 _v585 = _v584.stamp 06697 _x = _v585 06698 start = end 06699 end += 8 06700 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06701 start = end 06702 end += 4 06703 (length,) = _struct_I.unpack(str[start:end]) 06704 start = end 06705 end += length 06706 _v584.frame_id = str[start:end] 06707 _v586 = _v583.pose 06708 _v587 = _v586.position 06709 _x = _v587 06710 start = end 06711 end += 24 06712 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06713 _v588 = _v586.orientation 06714 _x = _v588 06715 start = end 06716 end += 32 06717 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06718 start = end 06719 end += 4 06720 (val3.confidence,) = _struct_f.unpack(str[start:end]) 06721 start = end 06722 end += 4 06723 (length,) = _struct_I.unpack(str[start:end]) 06724 start = end 06725 end += length 06726 val3.detector_name = str[start:end] 06727 val2.potential_models.append(val3) 06728 _v589 = val2.cluster 06729 _v590 = _v589.header 06730 start = end 06731 end += 4 06732 (_v590.seq,) = _struct_I.unpack(str[start:end]) 06733 _v591 = _v590.stamp 06734 _x = _v591 06735 start = end 06736 end += 8 06737 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06738 start = end 06739 end += 4 06740 (length,) = _struct_I.unpack(str[start:end]) 06741 start = end 06742 end += length 06743 _v590.frame_id = str[start:end] 06744 start = end 06745 end += 4 06746 (length,) = _struct_I.unpack(str[start:end]) 06747 _v589.points = [] 06748 for i in range(0, length): 06749 val4 = geometry_msgs.msg.Point32() 06750 _x = val4 06751 start = end 06752 end += 12 06753 (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end]) 06754 _v589.points.append(val4) 06755 start = end 06756 end += 4 06757 (length,) = _struct_I.unpack(str[start:end]) 06758 _v589.channels = [] 06759 for i in range(0, length): 06760 val4 = sensor_msgs.msg.ChannelFloat32() 06761 start = end 06762 end += 4 06763 (length,) = _struct_I.unpack(str[start:end]) 06764 start = end 06765 end += length 06766 val4.name = str[start:end] 06767 start = end 06768 end += 4 06769 (length,) = _struct_I.unpack(str[start:end]) 06770 pattern = '<%sf'%length 06771 start = end 06772 end += struct.calcsize(pattern) 06773 val4.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length) 06774 _v589.channels.append(val4) 06775 _v592 = val2.region 06776 _v593 = _v592.cloud 06777 _v594 = _v593.header 06778 start = end 06779 end += 4 06780 (_v594.seq,) = _struct_I.unpack(str[start:end]) 06781 _v595 = _v594.stamp 06782 _x = _v595 06783 start = end 06784 end += 8 06785 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06786 start = end 06787 end += 4 06788 (length,) = _struct_I.unpack(str[start:end]) 06789 start = end 06790 end += length 06791 _v594.frame_id = str[start:end] 06792 _x = _v593 06793 start = end 06794 end += 8 06795 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06796 start = end 06797 end += 4 06798 (length,) = _struct_I.unpack(str[start:end]) 06799 _v593.fields = [] 06800 for i in range(0, length): 06801 val5 = sensor_msgs.msg.PointField() 06802 start = end 06803 end += 4 06804 (length,) = _struct_I.unpack(str[start:end]) 06805 start = end 06806 end += length 06807 val5.name = str[start:end] 06808 _x = val5 06809 start = end 06810 end += 9 06811 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end]) 06812 _v593.fields.append(val5) 06813 _x = _v593 06814 start = end 06815 end += 9 06816 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end]) 06817 _v593.is_bigendian = bool(_v593.is_bigendian) 06818 start = end 06819 end += 4 06820 (length,) = _struct_I.unpack(str[start:end]) 06821 start = end 06822 end += length 06823 _v593.data = str[start:end] 06824 start = end 06825 end += 1 06826 (_v593.is_dense,) = _struct_B.unpack(str[start:end]) 06827 _v593.is_dense = bool(_v593.is_dense) 06828 start = end 06829 end += 4 06830 (length,) = _struct_I.unpack(str[start:end]) 06831 pattern = '<%si'%length 06832 start = end 06833 end += struct.calcsize(pattern) 06834 _v592.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length) 06835 _v596 = _v592.image 06836 _v597 = _v596.header 06837 start = end 06838 end += 4 06839 (_v597.seq,) = _struct_I.unpack(str[start:end]) 06840 _v598 = _v597.stamp 06841 _x = _v598 06842 start = end 06843 end += 8 06844 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06845 start = end 06846 end += 4 06847 (length,) = _struct_I.unpack(str[start:end]) 06848 start = end 06849 end += length 06850 _v597.frame_id = str[start:end] 06851 _x = _v596 06852 start = end 06853 end += 8 06854 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06855 start = end 06856 end += 4 06857 (length,) = _struct_I.unpack(str[start:end]) 06858 start = end 06859 end += length 06860 _v596.encoding = str[start:end] 06861 _x = _v596 06862 start = end 06863 end += 5 06864 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 06865 start = end 06866 end += 4 06867 (length,) = _struct_I.unpack(str[start:end]) 06868 start = end 06869 end += length 06870 _v596.data = str[start:end] 06871 _v599 = _v592.disparity_image 06872 _v600 = _v599.header 06873 start = end 06874 end += 4 06875 (_v600.seq,) = _struct_I.unpack(str[start:end]) 06876 _v601 = _v600.stamp 06877 _x = _v601 06878 start = end 06879 end += 8 06880 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06881 start = end 06882 end += 4 06883 (length,) = _struct_I.unpack(str[start:end]) 06884 start = end 06885 end += length 06886 _v600.frame_id = str[start:end] 06887 _x = _v599 06888 start = end 06889 end += 8 06890 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06891 start = end 06892 end += 4 06893 (length,) = _struct_I.unpack(str[start:end]) 06894 start = end 06895 end += length 06896 _v599.encoding = str[start:end] 06897 _x = _v599 06898 start = end 06899 end += 5 06900 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end]) 06901 start = end 06902 end += 4 06903 (length,) = _struct_I.unpack(str[start:end]) 06904 start = end 06905 end += length 06906 _v599.data = str[start:end] 06907 _v602 = _v592.cam_info 06908 _v603 = _v602.header 06909 start = end 06910 end += 4 06911 (_v603.seq,) = _struct_I.unpack(str[start:end]) 06912 _v604 = _v603.stamp 06913 _x = _v604 06914 start = end 06915 end += 8 06916 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06917 start = end 06918 end += 4 06919 (length,) = _struct_I.unpack(str[start:end]) 06920 start = end 06921 end += length 06922 _v603.frame_id = str[start:end] 06923 _x = _v602 06924 start = end 06925 end += 8 06926 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end]) 06927 start = end 06928 end += 4 06929 (length,) = _struct_I.unpack(str[start:end]) 06930 start = end 06931 end += length 06932 _v602.distortion_model = str[start:end] 06933 start = end 06934 end += 4 06935 (length,) = _struct_I.unpack(str[start:end]) 06936 pattern = '<%sd'%length 06937 start = end 06938 end += struct.calcsize(pattern) 06939 _v602.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length) 06940 start = end 06941 end += 72 06942 _v602.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 06943 start = end 06944 end += 72 06945 _v602.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9) 06946 start = end 06947 end += 96 06948 _v602.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12) 06949 _x = _v602 06950 start = end 06951 end += 8 06952 (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end]) 06953 _v605 = _v602.roi 06954 _x = _v605 06955 start = end 06956 end += 17 06957 (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end]) 06958 _v605.do_rectify = bool(_v605.do_rectify) 06959 _v606 = _v592.roi_box_pose 06960 _v607 = _v606.header 06961 start = end 06962 end += 4 06963 (_v607.seq,) = _struct_I.unpack(str[start:end]) 06964 _v608 = _v607.stamp 06965 _x = _v608 06966 start = end 06967 end += 8 06968 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end]) 06969 start = end 06970 end += 4 06971 (length,) = _struct_I.unpack(str[start:end]) 06972 start = end 06973 end += length 06974 _v607.frame_id = str[start:end] 06975 _v609 = _v606.pose 06976 _v610 = _v609.position 06977 _x = _v610 06978 start = end 06979 end += 24 06980 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06981 _v611 = _v609.orientation 06982 _x = _v611 06983 start = end 06984 end += 32 06985 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end]) 06986 _v612 = _v592.roi_box_dims 06987 _x = _v612 06988 start = end 06989 end += 24 06990 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end]) 06991 start = end 06992 end += 4 06993 (length,) = _struct_I.unpack(str[start:end]) 06994 start = end 06995 end += length 06996 val2.collision_name = str[start:end] 06997 val1.moved_obstacles.append(val2) 06998 self.action_feedback.feedback.grasps.append(val1) 06999 return self 07000 except struct.error as e: 07001 raise roslib.message.DeserializationError(e) #most likely buffer underfill 07002 07003 _struct_I = roslib.message.struct_I 07004 _struct_IBI = struct.Struct("<IBI") 07005 _struct_6IB3I = struct.Struct("<6IB3I") 07006 _struct_B = struct.Struct("<B") 07007 _struct_12d = struct.Struct("<12d") 07008 _struct_f = struct.Struct("<f") 07009 _struct_i = struct.Struct("<i") 07010 _struct_dB2f = struct.Struct("<dB2f") 07011 _struct_BI = struct.Struct("<BI") 07012 _struct_10d = struct.Struct("<10d") 07013 _struct_3f = struct.Struct("<3f") 07014 _struct_3I = struct.Struct("<3I") 07015 _struct_9d = struct.Struct("<9d") 07016 _struct_B2I = struct.Struct("<B2I") 07017 _struct_i3I = struct.Struct("<i3I") 07018 _struct_4d = struct.Struct("<4d") 07019 _struct_2I = struct.Struct("<2I") 07020 _struct_4IB = struct.Struct("<4IB") 07021 _struct_3d = struct.Struct("<3d")