_PickPlace.py
Go to the documentation of this file.
00001 """autogenerated by genpy from pr2_pick_and_place_service/PickPlaceRequest.msg. Do not edit."""
00002 import sys
00003 python3 = True if sys.hexversion > 0x03000000 else False
00004 import genpy
00005 import struct
00006 
00007 
00008 class PickPlaceRequest(genpy.Message):
00009   _md5sum = "a103fd90ae71bfd419fcdfa60a00c804"
00010   _type = "pr2_pick_and_place_service/PickPlaceRequest"
00011   _has_header = False #flag to mark the presence of a Header object
00012   _full_text = """string command
00013 string arg
00014 
00015 
00016 """
00017   __slots__ = ['command','arg']
00018   _slot_types = ['string','string']
00019 
00020   def __init__(self, *args, **kwds):
00021     """
00022     Constructor. Any message fields that are implicitly/explicitly
00023     set to None will be assigned a default value. The recommend
00024     use is keyword arguments as this is more robust to future message
00025     changes.  You cannot mix in-order arguments and keyword arguments.
00026 
00027     The available fields are:
00028        command,arg
00029 
00030     :param args: complete set of field values, in .msg order
00031     :param kwds: use keyword arguments corresponding to message field names
00032     to set specific fields.
00033     """
00034     if args or kwds:
00035       super(PickPlaceRequest, self).__init__(*args, **kwds)
00036       #message fields cannot be None, assign default values for those that are
00037       if self.command is None:
00038         self.command = ''
00039       if self.arg is None:
00040         self.arg = ''
00041     else:
00042       self.command = ''
00043       self.arg = ''
00044 
00045   def _get_types(self):
00046     """
00047     internal API method
00048     """
00049     return self._slot_types
00050 
00051   def serialize(self, buff):
00052     """
00053     serialize message into buffer
00054     :param buff: buffer, ``StringIO``
00055     """
00056     try:
00057       _x = self.command
00058       length = len(_x)
00059       if python3 or type(_x) == unicode:
00060         _x = _x.encode('utf-8')
00061         length = len(_x)
00062       buff.write(struct.pack('<I%ss'%length, length, _x))
00063       _x = self.arg
00064       length = len(_x)
00065       if python3 or type(_x) == unicode:
00066         _x = _x.encode('utf-8')
00067         length = len(_x)
00068       buff.write(struct.pack('<I%ss'%length, length, _x))
00069     except struct.error as se: self._check_types(se)
00070     except TypeError as te: self._check_types(te)
00071 
00072   def deserialize(self, str):
00073     """
00074     unpack serialized message in str into this message instance
00075     :param str: byte array of serialized message, ``str``
00076     """
00077     try:
00078       end = 0
00079       start = end
00080       end += 4
00081       (length,) = _struct_I.unpack(str[start:end])
00082       start = end
00083       end += length
00084       if python3:
00085         self.command = str[start:end].decode('utf-8')
00086       else:
00087         self.command = str[start:end]
00088       start = end
00089       end += 4
00090       (length,) = _struct_I.unpack(str[start:end])
00091       start = end
00092       end += length
00093       if python3:
00094         self.arg = str[start:end].decode('utf-8')
00095       else:
00096         self.arg = str[start:end]
00097       return self
00098     except struct.error as e:
00099       raise genpy.DeserializationError(e) #most likely buffer underfill
00100 
00101 
00102   def serialize_numpy(self, buff, numpy):
00103     """
00104     serialize message with numpy array types into buffer
00105     :param buff: buffer, ``StringIO``
00106     :param numpy: numpy python module
00107     """
00108     try:
00109       _x = self.command
00110       length = len(_x)
00111       if python3 or type(_x) == unicode:
00112         _x = _x.encode('utf-8')
00113         length = len(_x)
00114       buff.write(struct.pack('<I%ss'%length, length, _x))
00115       _x = self.arg
00116       length = len(_x)
00117       if python3 or type(_x) == unicode:
00118         _x = _x.encode('utf-8')
00119         length = len(_x)
00120       buff.write(struct.pack('<I%ss'%length, length, _x))
00121     except struct.error as se: self._check_types(se)
00122     except TypeError as te: self._check_types(te)
00123 
00124   def deserialize_numpy(self, str, numpy):
00125     """
00126     unpack serialized message in str into this message instance using numpy for array types
00127     :param str: byte array of serialized message, ``str``
00128     :param numpy: numpy python module
00129     """
00130     try:
00131       end = 0
00132       start = end
00133       end += 4
00134       (length,) = _struct_I.unpack(str[start:end])
00135       start = end
00136       end += length
00137       if python3:
00138         self.command = str[start:end].decode('utf-8')
00139       else:
00140         self.command = str[start:end]
00141       start = end
00142       end += 4
00143       (length,) = _struct_I.unpack(str[start:end])
00144       start = end
00145       end += length
00146       if python3:
00147         self.arg = str[start:end].decode('utf-8')
00148       else:
00149         self.arg = str[start:end]
00150       return self
00151     except struct.error as e:
00152       raise genpy.DeserializationError(e) #most likely buffer underfill
00153 
00154 _struct_I = genpy.struct_I
00155 """autogenerated by genpy from pr2_pick_and_place_service/PickPlaceResponse.msg. Do not edit."""
00156 import sys
00157 python3 = True if sys.hexversion > 0x03000000 else False
00158 import genpy
00159 import struct
00160 
00161 import object_manipulation_msgs.msg
00162 import geometry_msgs.msg
00163 import pr2_pick_and_place_service.msg
00164 import sensor_msgs.msg
00165 import household_objects_database_msgs.msg
00166 import std_msgs.msg
00167 
00168 class PickPlaceResponse(genpy.Message):
00169   _md5sum = "a1461d83d374e19cb65866ae1f17bb1c"
00170   _type = "pr2_pick_and_place_service/PickPlaceResponse"
00171   _has_header = False #flag to mark the presence of a Header object
00172   _full_text = """string response
00173 PickPlaceObject[] objects
00174 
00175 
00176 ================================================================================
00177 MSG: pr2_pick_and_place_service/PickPlaceObject
00178 int32 objectid
00179 object_manipulation_msgs/GraspableObject object
00180 geometry_msgs/PoseStamped pose
00181 float64[] boundingbox
00182 
00183 ================================================================================
00184 MSG: object_manipulation_msgs/GraspableObject
00185 # an object that the object_manipulator can work on
00186 
00187 # a graspable object can be represented in multiple ways. This message
00188 # can contain all of them. Which one is actually used is up to the receiver
00189 # of this message. When adding new representations, one must be careful that
00190 # they have reasonable lightweight defaults indicating that that particular
00191 # representation is not available.
00192 
00193 # the tf frame to be used as a reference frame when combining information from
00194 # the different representations below
00195 string reference_frame_id
00196 
00197 # potential recognition results from a database of models
00198 # all poses are relative to the object reference pose
00199 household_objects_database_msgs/DatabaseModelPose[] potential_models
00200 
00201 # the point cloud itself
00202 sensor_msgs/PointCloud cluster
00203 
00204 # a region of a PointCloud2 of interest
00205 object_manipulation_msgs/SceneRegion region
00206 
00207 # the name that this object has in the collision environment
00208 string collision_name
00209 ================================================================================
00210 MSG: household_objects_database_msgs/DatabaseModelPose
00211 # Informs that a specific model from the Model Database has been 
00212 # identified at a certain location
00213 
00214 # the database id of the model
00215 int32 model_id
00216 
00217 # the pose that it can be found in
00218 geometry_msgs/PoseStamped pose
00219 
00220 # a measure of the confidence level in this detection result
00221 float32 confidence
00222 
00223 # the name of the object detector that generated this detection result
00224 string detector_name
00225 
00226 ================================================================================
00227 MSG: geometry_msgs/PoseStamped
00228 # A Pose with reference coordinate frame and timestamp
00229 Header header
00230 Pose pose
00231 
00232 ================================================================================
00233 MSG: std_msgs/Header
00234 # Standard metadata for higher-level stamped data types.
00235 # This is generally used to communicate timestamped data 
00236 # in a particular coordinate frame.
00237 # 
00238 # sequence ID: consecutively increasing ID 
00239 uint32 seq
00240 #Two-integer timestamp that is expressed as:
00241 # * stamp.secs: seconds (stamp_secs) since epoch
00242 # * stamp.nsecs: nanoseconds since stamp_secs
00243 # time-handling sugar is provided by the client library
00244 time stamp
00245 #Frame this data is associated with
00246 # 0: no frame
00247 # 1: global frame
00248 string frame_id
00249 
00250 ================================================================================
00251 MSG: geometry_msgs/Pose
00252 # A representation of pose in free space, composed of postion and orientation. 
00253 Point position
00254 Quaternion orientation
00255 
00256 ================================================================================
00257 MSG: geometry_msgs/Point
00258 # This contains the position of a point in free space
00259 float64 x
00260 float64 y
00261 float64 z
00262 
00263 ================================================================================
00264 MSG: geometry_msgs/Quaternion
00265 # This represents an orientation in free space in quaternion form.
00266 
00267 float64 x
00268 float64 y
00269 float64 z
00270 float64 w
00271 
00272 ================================================================================
00273 MSG: sensor_msgs/PointCloud
00274 # This message holds a collection of 3d points, plus optional additional
00275 # information about each point.
00276 
00277 # Time of sensor data acquisition, coordinate frame ID.
00278 Header header
00279 
00280 # Array of 3d points. Each Point32 should be interpreted as a 3d point
00281 # in the frame given in the header.
00282 geometry_msgs/Point32[] points
00283 
00284 # Each channel should have the same number of elements as points array,
00285 # and the data in each channel should correspond 1:1 with each point.
00286 # Channel names in common practice are listed in ChannelFloat32.msg.
00287 ChannelFloat32[] channels
00288 
00289 ================================================================================
00290 MSG: geometry_msgs/Point32
00291 # This contains the position of a point in free space(with 32 bits of precision).
00292 # It is recommeded to use Point wherever possible instead of Point32.  
00293 # 
00294 # This recommendation is to promote interoperability.  
00295 #
00296 # This message is designed to take up less space when sending
00297 # lots of points at once, as in the case of a PointCloud.  
00298 
00299 float32 x
00300 float32 y
00301 float32 z
00302 ================================================================================
00303 MSG: sensor_msgs/ChannelFloat32
00304 # This message is used by the PointCloud message to hold optional data
00305 # associated with each point in the cloud. The length of the values
00306 # array should be the same as the length of the points array in the
00307 # PointCloud, and each value should be associated with the corresponding
00308 # point.
00309 
00310 # Channel names in existing practice include:
00311 #   "u", "v" - row and column (respectively) in the left stereo image.
00312 #              This is opposite to usual conventions but remains for
00313 #              historical reasons. The newer PointCloud2 message has no
00314 #              such problem.
00315 #   "rgb" - For point clouds produced by color stereo cameras. uint8
00316 #           (R,G,B) values packed into the least significant 24 bits,
00317 #           in order.
00318 #   "intensity" - laser or pixel intensity.
00319 #   "distance"
00320 
00321 # The channel name should give semantics of the channel (e.g.
00322 # "intensity" instead of "value").
00323 string name
00324 
00325 # The values array should be 1-1 with the elements of the associated
00326 # PointCloud.
00327 float32[] values
00328 
00329 ================================================================================
00330 MSG: object_manipulation_msgs/SceneRegion
00331 # Point cloud
00332 sensor_msgs/PointCloud2 cloud
00333 
00334 # Indices for the region of interest
00335 int32[] mask
00336 
00337 # One of the corresponding 2D images, if applicable
00338 sensor_msgs/Image image
00339 
00340 # The disparity image, if applicable
00341 sensor_msgs/Image disparity_image
00342 
00343 # Camera info for the camera that took the image
00344 sensor_msgs/CameraInfo cam_info
00345 
00346 # a 3D region of interest for grasp planning
00347 geometry_msgs/PoseStamped  roi_box_pose
00348 geometry_msgs/Vector3      roi_box_dims
00349 
00350 ================================================================================
00351 MSG: sensor_msgs/PointCloud2
00352 # This message holds a collection of N-dimensional points, which may
00353 # contain additional information such as normals, intensity, etc. The
00354 # point data is stored as a binary blob, its layout described by the
00355 # contents of the "fields" array.
00356 
00357 # The point cloud data may be organized 2d (image-like) or 1d
00358 # (unordered). Point clouds organized as 2d images may be produced by
00359 # camera depth sensors such as stereo or time-of-flight.
00360 
00361 # Time of sensor data acquisition, and the coordinate frame ID (for 3d
00362 # points).
00363 Header header
00364 
00365 # 2D structure of the point cloud. If the cloud is unordered, height is
00366 # 1 and width is the length of the point cloud.
00367 uint32 height
00368 uint32 width
00369 
00370 # Describes the channels and their layout in the binary data blob.
00371 PointField[] fields
00372 
00373 bool    is_bigendian # Is this data bigendian?
00374 uint32  point_step   # Length of a point in bytes
00375 uint32  row_step     # Length of a row in bytes
00376 uint8[] data         # Actual point data, size is (row_step*height)
00377 
00378 bool is_dense        # True if there are no invalid points
00379 
00380 ================================================================================
00381 MSG: sensor_msgs/PointField
00382 # This message holds the description of one point entry in the
00383 # PointCloud2 message format.
00384 uint8 INT8    = 1
00385 uint8 UINT8   = 2
00386 uint8 INT16   = 3
00387 uint8 UINT16  = 4
00388 uint8 INT32   = 5
00389 uint8 UINT32  = 6
00390 uint8 FLOAT32 = 7
00391 uint8 FLOAT64 = 8
00392 
00393 string name      # Name of field
00394 uint32 offset    # Offset from start of point struct
00395 uint8  datatype  # Datatype enumeration, see above
00396 uint32 count     # How many elements in the field
00397 
00398 ================================================================================
00399 MSG: sensor_msgs/Image
00400 # This message contains an uncompressed image
00401 # (0, 0) is at top-left corner of image
00402 #
00403 
00404 Header header        # Header timestamp should be acquisition time of image
00405                      # Header frame_id should be optical frame of camera
00406                      # origin of frame should be optical center of cameara
00407                      # +x should point to the right in the image
00408                      # +y should point down in the image
00409                      # +z should point into to plane of the image
00410                      # If the frame_id here and the frame_id of the CameraInfo
00411                      # message associated with the image conflict
00412                      # the behavior is undefined
00413 
00414 uint32 height         # image height, that is, number of rows
00415 uint32 width          # image width, that is, number of columns
00416 
00417 # The legal values for encoding are in file src/image_encodings.cpp
00418 # If you want to standardize a new string format, join
00419 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.
00420 
00421 string encoding       # Encoding of pixels -- channel meaning, ordering, size
00422                       # taken from the list of strings in src/image_encodings.cpp
00423 
00424 uint8 is_bigendian    # is this data bigendian?
00425 uint32 step           # Full row length in bytes
00426 uint8[] data          # actual matrix data, size is (step * rows)
00427 
00428 ================================================================================
00429 MSG: sensor_msgs/CameraInfo
00430 # This message defines meta information for a camera. It should be in a
00431 # camera namespace on topic "camera_info" and accompanied by up to five
00432 # image topics named:
00433 #
00434 #   image_raw - raw data from the camera driver, possibly Bayer encoded
00435 #   image            - monochrome, distorted
00436 #   image_color      - color, distorted
00437 #   image_rect       - monochrome, rectified
00438 #   image_rect_color - color, rectified
00439 #
00440 # The image_pipeline contains packages (image_proc, stereo_image_proc)
00441 # for producing the four processed image topics from image_raw and
00442 # camera_info. The meaning of the camera parameters are described in
00443 # detail at http://www.ros.org/wiki/image_pipeline/CameraInfo.
00444 #
00445 # The image_geometry package provides a user-friendly interface to
00446 # common operations using this meta information. If you want to, e.g.,
00447 # project a 3d point into image coordinates, we strongly recommend
00448 # using image_geometry.
00449 #
00450 # If the camera is uncalibrated, the matrices D, K, R, P should be left
00451 # zeroed out. In particular, clients may assume that K[0] == 0.0
00452 # indicates an uncalibrated camera.
00453 
00454 #######################################################################
00455 #                     Image acquisition info                          #
00456 #######################################################################
00457 
00458 # Time of image acquisition, camera coordinate frame ID
00459 Header header    # Header timestamp should be acquisition time of image
00460                  # Header frame_id should be optical frame of camera
00461                  # origin of frame should be optical center of camera
00462                  # +x should point to the right in the image
00463                  # +y should point down in the image
00464                  # +z should point into the plane of the image
00465 
00466 
00467 #######################################################################
00468 #                      Calibration Parameters                         #
00469 #######################################################################
00470 # These are fixed during camera calibration. Their values will be the #
00471 # same in all messages until the camera is recalibrated. Note that    #
00472 # self-calibrating systems may "recalibrate" frequently.              #
00473 #                                                                     #
00474 # The internal parameters can be used to warp a raw (distorted) image #
00475 # to:                                                                 #
00476 #   1. An undistorted image (requires D and K)                        #
00477 #   2. A rectified image (requires D, K, R)                           #
00478 # The projection matrix P projects 3D points into the rectified image.#
00479 #######################################################################
00480 
00481 # The image dimensions with which the camera was calibrated. Normally
00482 # this will be the full camera resolution in pixels.
00483 uint32 height
00484 uint32 width
00485 
00486 # The distortion model used. Supported models are listed in
00487 # sensor_msgs/distortion_models.h. For most cameras, "plumb_bob" - a
00488 # simple model of radial and tangential distortion - is sufficent.
00489 string distortion_model
00490 
00491 # The distortion parameters, size depending on the distortion model.
00492 # For "plumb_bob", the 5 parameters are: (k1, k2, t1, t2, k3).
00493 float64[] D
00494 
00495 # Intrinsic camera matrix for the raw (distorted) images.
00496 #     [fx  0 cx]
00497 # K = [ 0 fy cy]
00498 #     [ 0  0  1]
00499 # Projects 3D points in the camera coordinate frame to 2D pixel
00500 # coordinates using the focal lengths (fx, fy) and principal point
00501 # (cx, cy).
00502 float64[9]  K # 3x3 row-major matrix
00503 
00504 # Rectification matrix (stereo cameras only)
00505 # A rotation matrix aligning the camera coordinate system to the ideal
00506 # stereo image plane so that epipolar lines in both stereo images are
00507 # parallel.
00508 float64[9]  R # 3x3 row-major matrix
00509 
00510 # Projection/camera matrix
00511 #     [fx'  0  cx' Tx]
00512 # P = [ 0  fy' cy' Ty]
00513 #     [ 0   0   1   0]
00514 # By convention, this matrix specifies the intrinsic (camera) matrix
00515 #  of the processed (rectified) image. That is, the left 3x3 portion
00516 #  is the normal camera intrinsic matrix for the rectified image.
00517 # It projects 3D points in the camera coordinate frame to 2D pixel
00518 #  coordinates using the focal lengths (fx', fy') and principal point
00519 #  (cx', cy') - these may differ from the values in K.
00520 # For monocular cameras, Tx = Ty = 0. Normally, monocular cameras will
00521 #  also have R = the identity and P[1:3,1:3] = K.
00522 # For a stereo pair, the fourth column [Tx Ty 0]' is related to the
00523 #  position of the optical center of the second camera in the first
00524 #  camera's frame. We assume Tz = 0 so both cameras are in the same
00525 #  stereo image plane. The first camera always has Tx = Ty = 0. For
00526 #  the right (second) camera of a horizontal stereo pair, Ty = 0 and
00527 #  Tx = -fx' * B, where B is the baseline between the cameras.
00528 # Given a 3D point [X Y Z]', the projection (x, y) of the point onto
00529 #  the rectified image is given by:
00530 #  [u v w]' = P * [X Y Z 1]'
00531 #         x = u / w
00532 #         y = v / w
00533 #  This holds for both images of a stereo pair.
00534 float64[12] P # 3x4 row-major matrix
00535 
00536 
00537 #######################################################################
00538 #                      Operational Parameters                         #
00539 #######################################################################
00540 # These define the image region actually captured by the camera       #
00541 # driver. Although they affect the geometry of the output image, they #
00542 # may be changed freely without recalibrating the camera.             #
00543 #######################################################################
00544 
00545 # Binning refers here to any camera setting which combines rectangular
00546 #  neighborhoods of pixels into larger "super-pixels." It reduces the
00547 #  resolution of the output image to
00548 #  (width / binning_x) x (height / binning_y).
00549 # The default values binning_x = binning_y = 0 is considered the same
00550 #  as binning_x = binning_y = 1 (no subsampling).
00551 uint32 binning_x
00552 uint32 binning_y
00553 
00554 # Region of interest (subwindow of full camera resolution), given in
00555 #  full resolution (unbinned) image coordinates. A particular ROI
00556 #  always denotes the same window of pixels on the camera sensor,
00557 #  regardless of binning settings.
00558 # The default setting of roi (all values 0) is considered the same as
00559 #  full resolution (roi.width = width, roi.height = height).
00560 RegionOfInterest roi
00561 
00562 ================================================================================
00563 MSG: sensor_msgs/RegionOfInterest
00564 # This message is used to specify a region of interest within an image.
00565 #
00566 # When used to specify the ROI setting of the camera when the image was
00567 # taken, the height and width fields should either match the height and
00568 # width fields for the associated image; or height = width = 0
00569 # indicates that the full resolution image was captured.
00570 
00571 uint32 x_offset  # Leftmost pixel of the ROI
00572                  # (0 if the ROI includes the left edge of the image)
00573 uint32 y_offset  # Topmost pixel of the ROI
00574                  # (0 if the ROI includes the top edge of the image)
00575 uint32 height    # Height of ROI
00576 uint32 width     # Width of ROI
00577 
00578 # True if a distinct rectified ROI should be calculated from the "raw"
00579 # ROI in this message. Typically this should be False if the full image
00580 # is captured (ROI not used), and True if a subwindow is captured (ROI
00581 # used).
00582 bool do_rectify
00583 
00584 ================================================================================
00585 MSG: geometry_msgs/Vector3
00586 # This represents a vector in free space. 
00587 
00588 float64 x
00589 float64 y
00590 float64 z
00591 """
00592   __slots__ = ['response','objects']
00593   _slot_types = ['string','pr2_pick_and_place_service/PickPlaceObject[]']
00594 
00595   def __init__(self, *args, **kwds):
00596     """
00597     Constructor. Any message fields that are implicitly/explicitly
00598     set to None will be assigned a default value. The recommend
00599     use is keyword arguments as this is more robust to future message
00600     changes.  You cannot mix in-order arguments and keyword arguments.
00601 
00602     The available fields are:
00603        response,objects
00604 
00605     :param args: complete set of field values, in .msg order
00606     :param kwds: use keyword arguments corresponding to message field names
00607     to set specific fields.
00608     """
00609     if args or kwds:
00610       super(PickPlaceResponse, self).__init__(*args, **kwds)
00611       #message fields cannot be None, assign default values for those that are
00612       if self.response is None:
00613         self.response = ''
00614       if self.objects is None:
00615         self.objects = []
00616     else:
00617       self.response = ''
00618       self.objects = []
00619 
00620   def _get_types(self):
00621     """
00622     internal API method
00623     """
00624     return self._slot_types
00625 
00626   def serialize(self, buff):
00627     """
00628     serialize message into buffer
00629     :param buff: buffer, ``StringIO``
00630     """
00631     try:
00632       _x = self.response
00633       length = len(_x)
00634       if python3 or type(_x) == unicode:
00635         _x = _x.encode('utf-8')
00636         length = len(_x)
00637       buff.write(struct.pack('<I%ss'%length, length, _x))
00638       length = len(self.objects)
00639       buff.write(_struct_I.pack(length))
00640       for val1 in self.objects:
00641         buff.write(_struct_i.pack(val1.objectid))
00642         _v1 = val1.object
00643         _x = _v1.reference_frame_id
00644         length = len(_x)
00645         if python3 or type(_x) == unicode:
00646           _x = _x.encode('utf-8')
00647           length = len(_x)
00648         buff.write(struct.pack('<I%ss'%length, length, _x))
00649         length = len(_v1.potential_models)
00650         buff.write(_struct_I.pack(length))
00651         for val3 in _v1.potential_models:
00652           buff.write(_struct_i.pack(val3.model_id))
00653           _v2 = val3.pose
00654           _v3 = _v2.header
00655           buff.write(_struct_I.pack(_v3.seq))
00656           _v4 = _v3.stamp
00657           _x = _v4
00658           buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00659           _x = _v3.frame_id
00660           length = len(_x)
00661           if python3 or type(_x) == unicode:
00662             _x = _x.encode('utf-8')
00663             length = len(_x)
00664           buff.write(struct.pack('<I%ss'%length, length, _x))
00665           _v5 = _v2.pose
00666           _v6 = _v5.position
00667           _x = _v6
00668           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00669           _v7 = _v5.orientation
00670           _x = _v7
00671           buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00672           buff.write(_struct_f.pack(val3.confidence))
00673           _x = val3.detector_name
00674           length = len(_x)
00675           if python3 or type(_x) == unicode:
00676             _x = _x.encode('utf-8')
00677             length = len(_x)
00678           buff.write(struct.pack('<I%ss'%length, length, _x))
00679         _v8 = _v1.cluster
00680         _v9 = _v8.header
00681         buff.write(_struct_I.pack(_v9.seq))
00682         _v10 = _v9.stamp
00683         _x = _v10
00684         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00685         _x = _v9.frame_id
00686         length = len(_x)
00687         if python3 or type(_x) == unicode:
00688           _x = _x.encode('utf-8')
00689           length = len(_x)
00690         buff.write(struct.pack('<I%ss'%length, length, _x))
00691         length = len(_v8.points)
00692         buff.write(_struct_I.pack(length))
00693         for val4 in _v8.points:
00694           _x = val4
00695           buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
00696         length = len(_v8.channels)
00697         buff.write(_struct_I.pack(length))
00698         for val4 in _v8.channels:
00699           _x = val4.name
00700           length = len(_x)
00701           if python3 or type(_x) == unicode:
00702             _x = _x.encode('utf-8')
00703             length = len(_x)
00704           buff.write(struct.pack('<I%ss'%length, length, _x))
00705           length = len(val4.values)
00706           buff.write(_struct_I.pack(length))
00707           pattern = '<%sf'%length
00708           buff.write(struct.pack(pattern, *val4.values))
00709         _v11 = _v1.region
00710         _v12 = _v11.cloud
00711         _v13 = _v12.header
00712         buff.write(_struct_I.pack(_v13.seq))
00713         _v14 = _v13.stamp
00714         _x = _v14
00715         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00716         _x = _v13.frame_id
00717         length = len(_x)
00718         if python3 or type(_x) == unicode:
00719           _x = _x.encode('utf-8')
00720           length = len(_x)
00721         buff.write(struct.pack('<I%ss'%length, length, _x))
00722         _x = _v12
00723         buff.write(_struct_2I.pack(_x.height, _x.width))
00724         length = len(_v12.fields)
00725         buff.write(_struct_I.pack(length))
00726         for val5 in _v12.fields:
00727           _x = val5.name
00728           length = len(_x)
00729           if python3 or type(_x) == unicode:
00730             _x = _x.encode('utf-8')
00731             length = len(_x)
00732           buff.write(struct.pack('<I%ss'%length, length, _x))
00733           _x = val5
00734           buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00735         _x = _v12
00736         buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00737         _x = _v12.data
00738         length = len(_x)
00739         # - if encoded as a list instead, serialize as bytes instead of string
00740         if type(_x) in [list, tuple]:
00741           buff.write(struct.pack('<I%sB'%length, length, *_x))
00742         else:
00743           buff.write(struct.pack('<I%ss'%length, length, _x))
00744         buff.write(_struct_B.pack(_v12.is_dense))
00745         length = len(_v11.mask)
00746         buff.write(_struct_I.pack(length))
00747         pattern = '<%si'%length
00748         buff.write(struct.pack(pattern, *_v11.mask))
00749         _v15 = _v11.image
00750         _v16 = _v15.header
00751         buff.write(_struct_I.pack(_v16.seq))
00752         _v17 = _v16.stamp
00753         _x = _v17
00754         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00755         _x = _v16.frame_id
00756         length = len(_x)
00757         if python3 or type(_x) == unicode:
00758           _x = _x.encode('utf-8')
00759           length = len(_x)
00760         buff.write(struct.pack('<I%ss'%length, length, _x))
00761         _x = _v15
00762         buff.write(_struct_2I.pack(_x.height, _x.width))
00763         _x = _v15.encoding
00764         length = len(_x)
00765         if python3 or type(_x) == unicode:
00766           _x = _x.encode('utf-8')
00767           length = len(_x)
00768         buff.write(struct.pack('<I%ss'%length, length, _x))
00769         _x = _v15
00770         buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
00771         _x = _v15.data
00772         length = len(_x)
00773         # - if encoded as a list instead, serialize as bytes instead of string
00774         if type(_x) in [list, tuple]:
00775           buff.write(struct.pack('<I%sB'%length, length, *_x))
00776         else:
00777           buff.write(struct.pack('<I%ss'%length, length, _x))
00778         _v18 = _v11.disparity_image
00779         _v19 = _v18.header
00780         buff.write(_struct_I.pack(_v19.seq))
00781         _v20 = _v19.stamp
00782         _x = _v20
00783         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00784         _x = _v19.frame_id
00785         length = len(_x)
00786         if python3 or type(_x) == unicode:
00787           _x = _x.encode('utf-8')
00788           length = len(_x)
00789         buff.write(struct.pack('<I%ss'%length, length, _x))
00790         _x = _v18
00791         buff.write(_struct_2I.pack(_x.height, _x.width))
00792         _x = _v18.encoding
00793         length = len(_x)
00794         if python3 or type(_x) == unicode:
00795           _x = _x.encode('utf-8')
00796           length = len(_x)
00797         buff.write(struct.pack('<I%ss'%length, length, _x))
00798         _x = _v18
00799         buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
00800         _x = _v18.data
00801         length = len(_x)
00802         # - if encoded as a list instead, serialize as bytes instead of string
00803         if type(_x) in [list, tuple]:
00804           buff.write(struct.pack('<I%sB'%length, length, *_x))
00805         else:
00806           buff.write(struct.pack('<I%ss'%length, length, _x))
00807         _v21 = _v11.cam_info
00808         _v22 = _v21.header
00809         buff.write(_struct_I.pack(_v22.seq))
00810         _v23 = _v22.stamp
00811         _x = _v23
00812         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00813         _x = _v22.frame_id
00814         length = len(_x)
00815         if python3 or type(_x) == unicode:
00816           _x = _x.encode('utf-8')
00817           length = len(_x)
00818         buff.write(struct.pack('<I%ss'%length, length, _x))
00819         _x = _v21
00820         buff.write(_struct_2I.pack(_x.height, _x.width))
00821         _x = _v21.distortion_model
00822         length = len(_x)
00823         if python3 or type(_x) == unicode:
00824           _x = _x.encode('utf-8')
00825           length = len(_x)
00826         buff.write(struct.pack('<I%ss'%length, length, _x))
00827         length = len(_v21.D)
00828         buff.write(_struct_I.pack(length))
00829         pattern = '<%sd'%length
00830         buff.write(struct.pack(pattern, *_v21.D))
00831         buff.write(_struct_9d.pack(*_v21.K))
00832         buff.write(_struct_9d.pack(*_v21.R))
00833         buff.write(_struct_12d.pack(*_v21.P))
00834         _x = _v21
00835         buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y))
00836         _v24 = _v21.roi
00837         _x = _v24
00838         buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify))
00839         _v25 = _v11.roi_box_pose
00840         _v26 = _v25.header
00841         buff.write(_struct_I.pack(_v26.seq))
00842         _v27 = _v26.stamp
00843         _x = _v27
00844         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00845         _x = _v26.frame_id
00846         length = len(_x)
00847         if python3 or type(_x) == unicode:
00848           _x = _x.encode('utf-8')
00849           length = len(_x)
00850         buff.write(struct.pack('<I%ss'%length, length, _x))
00851         _v28 = _v25.pose
00852         _v29 = _v28.position
00853         _x = _v29
00854         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00855         _v30 = _v28.orientation
00856         _x = _v30
00857         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00858         _v31 = _v11.roi_box_dims
00859         _x = _v31
00860         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00861         _x = _v1.collision_name
00862         length = len(_x)
00863         if python3 or type(_x) == unicode:
00864           _x = _x.encode('utf-8')
00865           length = len(_x)
00866         buff.write(struct.pack('<I%ss'%length, length, _x))
00867         _v32 = val1.pose
00868         _v33 = _v32.header
00869         buff.write(_struct_I.pack(_v33.seq))
00870         _v34 = _v33.stamp
00871         _x = _v34
00872         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00873         _x = _v33.frame_id
00874         length = len(_x)
00875         if python3 or type(_x) == unicode:
00876           _x = _x.encode('utf-8')
00877           length = len(_x)
00878         buff.write(struct.pack('<I%ss'%length, length, _x))
00879         _v35 = _v32.pose
00880         _v36 = _v35.position
00881         _x = _v36
00882         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00883         _v37 = _v35.orientation
00884         _x = _v37
00885         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00886         length = len(val1.boundingbox)
00887         buff.write(_struct_I.pack(length))
00888         pattern = '<%sd'%length
00889         buff.write(struct.pack(pattern, *val1.boundingbox))
00890     except struct.error as se: self._check_types(se)
00891     except TypeError as te: self._check_types(te)
00892 
00893   def deserialize(self, str):
00894     """
00895     unpack serialized message in str into this message instance
00896     :param str: byte array of serialized message, ``str``
00897     """
00898     try:
00899       if self.objects is None:
00900         self.objects = None
00901       end = 0
00902       start = end
00903       end += 4
00904       (length,) = _struct_I.unpack(str[start:end])
00905       start = end
00906       end += length
00907       if python3:
00908         self.response = str[start:end].decode('utf-8')
00909       else:
00910         self.response = str[start:end]
00911       start = end
00912       end += 4
00913       (length,) = _struct_I.unpack(str[start:end])
00914       self.objects = []
00915       for i in range(0, length):
00916         val1 = pr2_pick_and_place_service.msg.PickPlaceObject()
00917         start = end
00918         end += 4
00919         (val1.objectid,) = _struct_i.unpack(str[start:end])
00920         _v38 = val1.object
00921         start = end
00922         end += 4
00923         (length,) = _struct_I.unpack(str[start:end])
00924         start = end
00925         end += length
00926         if python3:
00927           _v38.reference_frame_id = str[start:end].decode('utf-8')
00928         else:
00929           _v38.reference_frame_id = str[start:end]
00930         start = end
00931         end += 4
00932         (length,) = _struct_I.unpack(str[start:end])
00933         _v38.potential_models = []
00934         for i in range(0, length):
00935           val3 = household_objects_database_msgs.msg.DatabaseModelPose()
00936           start = end
00937           end += 4
00938           (val3.model_id,) = _struct_i.unpack(str[start:end])
00939           _v39 = val3.pose
00940           _v40 = _v39.header
00941           start = end
00942           end += 4
00943           (_v40.seq,) = _struct_I.unpack(str[start:end])
00944           _v41 = _v40.stamp
00945           _x = _v41
00946           start = end
00947           end += 8
00948           (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00949           start = end
00950           end += 4
00951           (length,) = _struct_I.unpack(str[start:end])
00952           start = end
00953           end += length
00954           if python3:
00955             _v40.frame_id = str[start:end].decode('utf-8')
00956           else:
00957             _v40.frame_id = str[start:end]
00958           _v42 = _v39.pose
00959           _v43 = _v42.position
00960           _x = _v43
00961           start = end
00962           end += 24
00963           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00964           _v44 = _v42.orientation
00965           _x = _v44
00966           start = end
00967           end += 32
00968           (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00969           start = end
00970           end += 4
00971           (val3.confidence,) = _struct_f.unpack(str[start:end])
00972           start = end
00973           end += 4
00974           (length,) = _struct_I.unpack(str[start:end])
00975           start = end
00976           end += length
00977           if python3:
00978             val3.detector_name = str[start:end].decode('utf-8')
00979           else:
00980             val3.detector_name = str[start:end]
00981           _v38.potential_models.append(val3)
00982         _v45 = _v38.cluster
00983         _v46 = _v45.header
00984         start = end
00985         end += 4
00986         (_v46.seq,) = _struct_I.unpack(str[start:end])
00987         _v47 = _v46.stamp
00988         _x = _v47
00989         start = end
00990         end += 8
00991         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00992         start = end
00993         end += 4
00994         (length,) = _struct_I.unpack(str[start:end])
00995         start = end
00996         end += length
00997         if python3:
00998           _v46.frame_id = str[start:end].decode('utf-8')
00999         else:
01000           _v46.frame_id = str[start:end]
01001         start = end
01002         end += 4
01003         (length,) = _struct_I.unpack(str[start:end])
01004         _v45.points = []
01005         for i in range(0, length):
01006           val4 = geometry_msgs.msg.Point32()
01007           _x = val4
01008           start = end
01009           end += 12
01010           (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
01011           _v45.points.append(val4)
01012         start = end
01013         end += 4
01014         (length,) = _struct_I.unpack(str[start:end])
01015         _v45.channels = []
01016         for i in range(0, length):
01017           val4 = sensor_msgs.msg.ChannelFloat32()
01018           start = end
01019           end += 4
01020           (length,) = _struct_I.unpack(str[start:end])
01021           start = end
01022           end += length
01023           if python3:
01024             val4.name = str[start:end].decode('utf-8')
01025           else:
01026             val4.name = str[start:end]
01027           start = end
01028           end += 4
01029           (length,) = _struct_I.unpack(str[start:end])
01030           pattern = '<%sf'%length
01031           start = end
01032           end += struct.calcsize(pattern)
01033           val4.values = struct.unpack(pattern, str[start:end])
01034           _v45.channels.append(val4)
01035         _v48 = _v38.region
01036         _v49 = _v48.cloud
01037         _v50 = _v49.header
01038         start = end
01039         end += 4
01040         (_v50.seq,) = _struct_I.unpack(str[start:end])
01041         _v51 = _v50.stamp
01042         _x = _v51
01043         start = end
01044         end += 8
01045         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01046         start = end
01047         end += 4
01048         (length,) = _struct_I.unpack(str[start:end])
01049         start = end
01050         end += length
01051         if python3:
01052           _v50.frame_id = str[start:end].decode('utf-8')
01053         else:
01054           _v50.frame_id = str[start:end]
01055         _x = _v49
01056         start = end
01057         end += 8
01058         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01059         start = end
01060         end += 4
01061         (length,) = _struct_I.unpack(str[start:end])
01062         _v49.fields = []
01063         for i in range(0, length):
01064           val5 = sensor_msgs.msg.PointField()
01065           start = end
01066           end += 4
01067           (length,) = _struct_I.unpack(str[start:end])
01068           start = end
01069           end += length
01070           if python3:
01071             val5.name = str[start:end].decode('utf-8')
01072           else:
01073             val5.name = str[start:end]
01074           _x = val5
01075           start = end
01076           end += 9
01077           (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01078           _v49.fields.append(val5)
01079         _x = _v49
01080         start = end
01081         end += 9
01082         (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01083         _v49.is_bigendian = bool(_v49.is_bigendian)
01084         start = end
01085         end += 4
01086         (length,) = _struct_I.unpack(str[start:end])
01087         start = end
01088         end += length
01089         if python3:
01090           _v49.data = str[start:end].decode('utf-8')
01091         else:
01092           _v49.data = str[start:end]
01093         start = end
01094         end += 1
01095         (_v49.is_dense,) = _struct_B.unpack(str[start:end])
01096         _v49.is_dense = bool(_v49.is_dense)
01097         start = end
01098         end += 4
01099         (length,) = _struct_I.unpack(str[start:end])
01100         pattern = '<%si'%length
01101         start = end
01102         end += struct.calcsize(pattern)
01103         _v48.mask = struct.unpack(pattern, str[start:end])
01104         _v52 = _v48.image
01105         _v53 = _v52.header
01106         start = end
01107         end += 4
01108         (_v53.seq,) = _struct_I.unpack(str[start:end])
01109         _v54 = _v53.stamp
01110         _x = _v54
01111         start = end
01112         end += 8
01113         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01114         start = end
01115         end += 4
01116         (length,) = _struct_I.unpack(str[start:end])
01117         start = end
01118         end += length
01119         if python3:
01120           _v53.frame_id = str[start:end].decode('utf-8')
01121         else:
01122           _v53.frame_id = str[start:end]
01123         _x = _v52
01124         start = end
01125         end += 8
01126         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01127         start = end
01128         end += 4
01129         (length,) = _struct_I.unpack(str[start:end])
01130         start = end
01131         end += length
01132         if python3:
01133           _v52.encoding = str[start:end].decode('utf-8')
01134         else:
01135           _v52.encoding = str[start:end]
01136         _x = _v52
01137         start = end
01138         end += 5
01139         (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
01140         start = end
01141         end += 4
01142         (length,) = _struct_I.unpack(str[start:end])
01143         start = end
01144         end += length
01145         if python3:
01146           _v52.data = str[start:end].decode('utf-8')
01147         else:
01148           _v52.data = str[start:end]
01149         _v55 = _v48.disparity_image
01150         _v56 = _v55.header
01151         start = end
01152         end += 4
01153         (_v56.seq,) = _struct_I.unpack(str[start:end])
01154         _v57 = _v56.stamp
01155         _x = _v57
01156         start = end
01157         end += 8
01158         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01159         start = end
01160         end += 4
01161         (length,) = _struct_I.unpack(str[start:end])
01162         start = end
01163         end += length
01164         if python3:
01165           _v56.frame_id = str[start:end].decode('utf-8')
01166         else:
01167           _v56.frame_id = str[start:end]
01168         _x = _v55
01169         start = end
01170         end += 8
01171         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01172         start = end
01173         end += 4
01174         (length,) = _struct_I.unpack(str[start:end])
01175         start = end
01176         end += length
01177         if python3:
01178           _v55.encoding = str[start:end].decode('utf-8')
01179         else:
01180           _v55.encoding = str[start:end]
01181         _x = _v55
01182         start = end
01183         end += 5
01184         (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
01185         start = end
01186         end += 4
01187         (length,) = _struct_I.unpack(str[start:end])
01188         start = end
01189         end += length
01190         if python3:
01191           _v55.data = str[start:end].decode('utf-8')
01192         else:
01193           _v55.data = str[start:end]
01194         _v58 = _v48.cam_info
01195         _v59 = _v58.header
01196         start = end
01197         end += 4
01198         (_v59.seq,) = _struct_I.unpack(str[start:end])
01199         _v60 = _v59.stamp
01200         _x = _v60
01201         start = end
01202         end += 8
01203         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01204         start = end
01205         end += 4
01206         (length,) = _struct_I.unpack(str[start:end])
01207         start = end
01208         end += length
01209         if python3:
01210           _v59.frame_id = str[start:end].decode('utf-8')
01211         else:
01212           _v59.frame_id = str[start:end]
01213         _x = _v58
01214         start = end
01215         end += 8
01216         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01217         start = end
01218         end += 4
01219         (length,) = _struct_I.unpack(str[start:end])
01220         start = end
01221         end += length
01222         if python3:
01223           _v58.distortion_model = str[start:end].decode('utf-8')
01224         else:
01225           _v58.distortion_model = str[start:end]
01226         start = end
01227         end += 4
01228         (length,) = _struct_I.unpack(str[start:end])
01229         pattern = '<%sd'%length
01230         start = end
01231         end += struct.calcsize(pattern)
01232         _v58.D = struct.unpack(pattern, str[start:end])
01233         start = end
01234         end += 72
01235         _v58.K = _struct_9d.unpack(str[start:end])
01236         start = end
01237         end += 72
01238         _v58.R = _struct_9d.unpack(str[start:end])
01239         start = end
01240         end += 96
01241         _v58.P = _struct_12d.unpack(str[start:end])
01242         _x = _v58
01243         start = end
01244         end += 8
01245         (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end])
01246         _v61 = _v58.roi
01247         _x = _v61
01248         start = end
01249         end += 17
01250         (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end])
01251         _v61.do_rectify = bool(_v61.do_rectify)
01252         _v62 = _v48.roi_box_pose
01253         _v63 = _v62.header
01254         start = end
01255         end += 4
01256         (_v63.seq,) = _struct_I.unpack(str[start:end])
01257         _v64 = _v63.stamp
01258         _x = _v64
01259         start = end
01260         end += 8
01261         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01262         start = end
01263         end += 4
01264         (length,) = _struct_I.unpack(str[start:end])
01265         start = end
01266         end += length
01267         if python3:
01268           _v63.frame_id = str[start:end].decode('utf-8')
01269         else:
01270           _v63.frame_id = str[start:end]
01271         _v65 = _v62.pose
01272         _v66 = _v65.position
01273         _x = _v66
01274         start = end
01275         end += 24
01276         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01277         _v67 = _v65.orientation
01278         _x = _v67
01279         start = end
01280         end += 32
01281         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01282         _v68 = _v48.roi_box_dims
01283         _x = _v68
01284         start = end
01285         end += 24
01286         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01287         start = end
01288         end += 4
01289         (length,) = _struct_I.unpack(str[start:end])
01290         start = end
01291         end += length
01292         if python3:
01293           _v38.collision_name = str[start:end].decode('utf-8')
01294         else:
01295           _v38.collision_name = str[start:end]
01296         _v69 = val1.pose
01297         _v70 = _v69.header
01298         start = end
01299         end += 4
01300         (_v70.seq,) = _struct_I.unpack(str[start:end])
01301         _v71 = _v70.stamp
01302         _x = _v71
01303         start = end
01304         end += 8
01305         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01306         start = end
01307         end += 4
01308         (length,) = _struct_I.unpack(str[start:end])
01309         start = end
01310         end += length
01311         if python3:
01312           _v70.frame_id = str[start:end].decode('utf-8')
01313         else:
01314           _v70.frame_id = str[start:end]
01315         _v72 = _v69.pose
01316         _v73 = _v72.position
01317         _x = _v73
01318         start = end
01319         end += 24
01320         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01321         _v74 = _v72.orientation
01322         _x = _v74
01323         start = end
01324         end += 32
01325         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01326         start = end
01327         end += 4
01328         (length,) = _struct_I.unpack(str[start:end])
01329         pattern = '<%sd'%length
01330         start = end
01331         end += struct.calcsize(pattern)
01332         val1.boundingbox = struct.unpack(pattern, str[start:end])
01333         self.objects.append(val1)
01334       return self
01335     except struct.error as e:
01336       raise genpy.DeserializationError(e) #most likely buffer underfill
01337 
01338 
01339   def serialize_numpy(self, buff, numpy):
01340     """
01341     serialize message with numpy array types into buffer
01342     :param buff: buffer, ``StringIO``
01343     :param numpy: numpy python module
01344     """
01345     try:
01346       _x = self.response
01347       length = len(_x)
01348       if python3 or type(_x) == unicode:
01349         _x = _x.encode('utf-8')
01350         length = len(_x)
01351       buff.write(struct.pack('<I%ss'%length, length, _x))
01352       length = len(self.objects)
01353       buff.write(_struct_I.pack(length))
01354       for val1 in self.objects:
01355         buff.write(_struct_i.pack(val1.objectid))
01356         _v75 = val1.object
01357         _x = _v75.reference_frame_id
01358         length = len(_x)
01359         if python3 or type(_x) == unicode:
01360           _x = _x.encode('utf-8')
01361           length = len(_x)
01362         buff.write(struct.pack('<I%ss'%length, length, _x))
01363         length = len(_v75.potential_models)
01364         buff.write(_struct_I.pack(length))
01365         for val3 in _v75.potential_models:
01366           buff.write(_struct_i.pack(val3.model_id))
01367           _v76 = val3.pose
01368           _v77 = _v76.header
01369           buff.write(_struct_I.pack(_v77.seq))
01370           _v78 = _v77.stamp
01371           _x = _v78
01372           buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01373           _x = _v77.frame_id
01374           length = len(_x)
01375           if python3 or type(_x) == unicode:
01376             _x = _x.encode('utf-8')
01377             length = len(_x)
01378           buff.write(struct.pack('<I%ss'%length, length, _x))
01379           _v79 = _v76.pose
01380           _v80 = _v79.position
01381           _x = _v80
01382           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01383           _v81 = _v79.orientation
01384           _x = _v81
01385           buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01386           buff.write(_struct_f.pack(val3.confidence))
01387           _x = val3.detector_name
01388           length = len(_x)
01389           if python3 or type(_x) == unicode:
01390             _x = _x.encode('utf-8')
01391             length = len(_x)
01392           buff.write(struct.pack('<I%ss'%length, length, _x))
01393         _v82 = _v75.cluster
01394         _v83 = _v82.header
01395         buff.write(_struct_I.pack(_v83.seq))
01396         _v84 = _v83.stamp
01397         _x = _v84
01398         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01399         _x = _v83.frame_id
01400         length = len(_x)
01401         if python3 or type(_x) == unicode:
01402           _x = _x.encode('utf-8')
01403           length = len(_x)
01404         buff.write(struct.pack('<I%ss'%length, length, _x))
01405         length = len(_v82.points)
01406         buff.write(_struct_I.pack(length))
01407         for val4 in _v82.points:
01408           _x = val4
01409           buff.write(_struct_3f.pack(_x.x, _x.y, _x.z))
01410         length = len(_v82.channels)
01411         buff.write(_struct_I.pack(length))
01412         for val4 in _v82.channels:
01413           _x = val4.name
01414           length = len(_x)
01415           if python3 or type(_x) == unicode:
01416             _x = _x.encode('utf-8')
01417             length = len(_x)
01418           buff.write(struct.pack('<I%ss'%length, length, _x))
01419           length = len(val4.values)
01420           buff.write(_struct_I.pack(length))
01421           pattern = '<%sf'%length
01422           buff.write(val4.values.tostring())
01423         _v85 = _v75.region
01424         _v86 = _v85.cloud
01425         _v87 = _v86.header
01426         buff.write(_struct_I.pack(_v87.seq))
01427         _v88 = _v87.stamp
01428         _x = _v88
01429         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01430         _x = _v87.frame_id
01431         length = len(_x)
01432         if python3 or type(_x) == unicode:
01433           _x = _x.encode('utf-8')
01434           length = len(_x)
01435         buff.write(struct.pack('<I%ss'%length, length, _x))
01436         _x = _v86
01437         buff.write(_struct_2I.pack(_x.height, _x.width))
01438         length = len(_v86.fields)
01439         buff.write(_struct_I.pack(length))
01440         for val5 in _v86.fields:
01441           _x = val5.name
01442           length = len(_x)
01443           if python3 or type(_x) == unicode:
01444             _x = _x.encode('utf-8')
01445             length = len(_x)
01446           buff.write(struct.pack('<I%ss'%length, length, _x))
01447           _x = val5
01448           buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
01449         _x = _v86
01450         buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
01451         _x = _v86.data
01452         length = len(_x)
01453         # - if encoded as a list instead, serialize as bytes instead of string
01454         if type(_x) in [list, tuple]:
01455           buff.write(struct.pack('<I%sB'%length, length, *_x))
01456         else:
01457           buff.write(struct.pack('<I%ss'%length, length, _x))
01458         buff.write(_struct_B.pack(_v86.is_dense))
01459         length = len(_v85.mask)
01460         buff.write(_struct_I.pack(length))
01461         pattern = '<%si'%length
01462         buff.write(_v85.mask.tostring())
01463         _v89 = _v85.image
01464         _v90 = _v89.header
01465         buff.write(_struct_I.pack(_v90.seq))
01466         _v91 = _v90.stamp
01467         _x = _v91
01468         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01469         _x = _v90.frame_id
01470         length = len(_x)
01471         if python3 or type(_x) == unicode:
01472           _x = _x.encode('utf-8')
01473           length = len(_x)
01474         buff.write(struct.pack('<I%ss'%length, length, _x))
01475         _x = _v89
01476         buff.write(_struct_2I.pack(_x.height, _x.width))
01477         _x = _v89.encoding
01478         length = len(_x)
01479         if python3 or type(_x) == unicode:
01480           _x = _x.encode('utf-8')
01481           length = len(_x)
01482         buff.write(struct.pack('<I%ss'%length, length, _x))
01483         _x = _v89
01484         buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
01485         _x = _v89.data
01486         length = len(_x)
01487         # - if encoded as a list instead, serialize as bytes instead of string
01488         if type(_x) in [list, tuple]:
01489           buff.write(struct.pack('<I%sB'%length, length, *_x))
01490         else:
01491           buff.write(struct.pack('<I%ss'%length, length, _x))
01492         _v92 = _v85.disparity_image
01493         _v93 = _v92.header
01494         buff.write(_struct_I.pack(_v93.seq))
01495         _v94 = _v93.stamp
01496         _x = _v94
01497         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01498         _x = _v93.frame_id
01499         length = len(_x)
01500         if python3 or type(_x) == unicode:
01501           _x = _x.encode('utf-8')
01502           length = len(_x)
01503         buff.write(struct.pack('<I%ss'%length, length, _x))
01504         _x = _v92
01505         buff.write(_struct_2I.pack(_x.height, _x.width))
01506         _x = _v92.encoding
01507         length = len(_x)
01508         if python3 or type(_x) == unicode:
01509           _x = _x.encode('utf-8')
01510           length = len(_x)
01511         buff.write(struct.pack('<I%ss'%length, length, _x))
01512         _x = _v92
01513         buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
01514         _x = _v92.data
01515         length = len(_x)
01516         # - if encoded as a list instead, serialize as bytes instead of string
01517         if type(_x) in [list, tuple]:
01518           buff.write(struct.pack('<I%sB'%length, length, *_x))
01519         else:
01520           buff.write(struct.pack('<I%ss'%length, length, _x))
01521         _v95 = _v85.cam_info
01522         _v96 = _v95.header
01523         buff.write(_struct_I.pack(_v96.seq))
01524         _v97 = _v96.stamp
01525         _x = _v97
01526         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01527         _x = _v96.frame_id
01528         length = len(_x)
01529         if python3 or type(_x) == unicode:
01530           _x = _x.encode('utf-8')
01531           length = len(_x)
01532         buff.write(struct.pack('<I%ss'%length, length, _x))
01533         _x = _v95
01534         buff.write(_struct_2I.pack(_x.height, _x.width))
01535         _x = _v95.distortion_model
01536         length = len(_x)
01537         if python3 or type(_x) == unicode:
01538           _x = _x.encode('utf-8')
01539           length = len(_x)
01540         buff.write(struct.pack('<I%ss'%length, length, _x))
01541         length = len(_v95.D)
01542         buff.write(_struct_I.pack(length))
01543         pattern = '<%sd'%length
01544         buff.write(_v95.D.tostring())
01545         buff.write(_v95.K.tostring())
01546         buff.write(_v95.R.tostring())
01547         buff.write(_v95.P.tostring())
01548         _x = _v95
01549         buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y))
01550         _v98 = _v95.roi
01551         _x = _v98
01552         buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify))
01553         _v99 = _v85.roi_box_pose
01554         _v100 = _v99.header
01555         buff.write(_struct_I.pack(_v100.seq))
01556         _v101 = _v100.stamp
01557         _x = _v101
01558         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01559         _x = _v100.frame_id
01560         length = len(_x)
01561         if python3 or type(_x) == unicode:
01562           _x = _x.encode('utf-8')
01563           length = len(_x)
01564         buff.write(struct.pack('<I%ss'%length, length, _x))
01565         _v102 = _v99.pose
01566         _v103 = _v102.position
01567         _x = _v103
01568         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01569         _v104 = _v102.orientation
01570         _x = _v104
01571         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01572         _v105 = _v85.roi_box_dims
01573         _x = _v105
01574         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01575         _x = _v75.collision_name
01576         length = len(_x)
01577         if python3 or type(_x) == unicode:
01578           _x = _x.encode('utf-8')
01579           length = len(_x)
01580         buff.write(struct.pack('<I%ss'%length, length, _x))
01581         _v106 = val1.pose
01582         _v107 = _v106.header
01583         buff.write(_struct_I.pack(_v107.seq))
01584         _v108 = _v107.stamp
01585         _x = _v108
01586         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01587         _x = _v107.frame_id
01588         length = len(_x)
01589         if python3 or type(_x) == unicode:
01590           _x = _x.encode('utf-8')
01591           length = len(_x)
01592         buff.write(struct.pack('<I%ss'%length, length, _x))
01593         _v109 = _v106.pose
01594         _v110 = _v109.position
01595         _x = _v110
01596         buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01597         _v111 = _v109.orientation
01598         _x = _v111
01599         buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01600         length = len(val1.boundingbox)
01601         buff.write(_struct_I.pack(length))
01602         pattern = '<%sd'%length
01603         buff.write(val1.boundingbox.tostring())
01604     except struct.error as se: self._check_types(se)
01605     except TypeError as te: self._check_types(te)
01606 
01607   def deserialize_numpy(self, str, numpy):
01608     """
01609     unpack serialized message in str into this message instance using numpy for array types
01610     :param str: byte array of serialized message, ``str``
01611     :param numpy: numpy python module
01612     """
01613     try:
01614       if self.objects is None:
01615         self.objects = None
01616       end = 0
01617       start = end
01618       end += 4
01619       (length,) = _struct_I.unpack(str[start:end])
01620       start = end
01621       end += length
01622       if python3:
01623         self.response = str[start:end].decode('utf-8')
01624       else:
01625         self.response = str[start:end]
01626       start = end
01627       end += 4
01628       (length,) = _struct_I.unpack(str[start:end])
01629       self.objects = []
01630       for i in range(0, length):
01631         val1 = pr2_pick_and_place_service.msg.PickPlaceObject()
01632         start = end
01633         end += 4
01634         (val1.objectid,) = _struct_i.unpack(str[start:end])
01635         _v112 = val1.object
01636         start = end
01637         end += 4
01638         (length,) = _struct_I.unpack(str[start:end])
01639         start = end
01640         end += length
01641         if python3:
01642           _v112.reference_frame_id = str[start:end].decode('utf-8')
01643         else:
01644           _v112.reference_frame_id = str[start:end]
01645         start = end
01646         end += 4
01647         (length,) = _struct_I.unpack(str[start:end])
01648         _v112.potential_models = []
01649         for i in range(0, length):
01650           val3 = household_objects_database_msgs.msg.DatabaseModelPose()
01651           start = end
01652           end += 4
01653           (val3.model_id,) = _struct_i.unpack(str[start:end])
01654           _v113 = val3.pose
01655           _v114 = _v113.header
01656           start = end
01657           end += 4
01658           (_v114.seq,) = _struct_I.unpack(str[start:end])
01659           _v115 = _v114.stamp
01660           _x = _v115
01661           start = end
01662           end += 8
01663           (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01664           start = end
01665           end += 4
01666           (length,) = _struct_I.unpack(str[start:end])
01667           start = end
01668           end += length
01669           if python3:
01670             _v114.frame_id = str[start:end].decode('utf-8')
01671           else:
01672             _v114.frame_id = str[start:end]
01673           _v116 = _v113.pose
01674           _v117 = _v116.position
01675           _x = _v117
01676           start = end
01677           end += 24
01678           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01679           _v118 = _v116.orientation
01680           _x = _v118
01681           start = end
01682           end += 32
01683           (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01684           start = end
01685           end += 4
01686           (val3.confidence,) = _struct_f.unpack(str[start:end])
01687           start = end
01688           end += 4
01689           (length,) = _struct_I.unpack(str[start:end])
01690           start = end
01691           end += length
01692           if python3:
01693             val3.detector_name = str[start:end].decode('utf-8')
01694           else:
01695             val3.detector_name = str[start:end]
01696           _v112.potential_models.append(val3)
01697         _v119 = _v112.cluster
01698         _v120 = _v119.header
01699         start = end
01700         end += 4
01701         (_v120.seq,) = _struct_I.unpack(str[start:end])
01702         _v121 = _v120.stamp
01703         _x = _v121
01704         start = end
01705         end += 8
01706         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01707         start = end
01708         end += 4
01709         (length,) = _struct_I.unpack(str[start:end])
01710         start = end
01711         end += length
01712         if python3:
01713           _v120.frame_id = str[start:end].decode('utf-8')
01714         else:
01715           _v120.frame_id = str[start:end]
01716         start = end
01717         end += 4
01718         (length,) = _struct_I.unpack(str[start:end])
01719         _v119.points = []
01720         for i in range(0, length):
01721           val4 = geometry_msgs.msg.Point32()
01722           _x = val4
01723           start = end
01724           end += 12
01725           (_x.x, _x.y, _x.z,) = _struct_3f.unpack(str[start:end])
01726           _v119.points.append(val4)
01727         start = end
01728         end += 4
01729         (length,) = _struct_I.unpack(str[start:end])
01730         _v119.channels = []
01731         for i in range(0, length):
01732           val4 = sensor_msgs.msg.ChannelFloat32()
01733           start = end
01734           end += 4
01735           (length,) = _struct_I.unpack(str[start:end])
01736           start = end
01737           end += length
01738           if python3:
01739             val4.name = str[start:end].decode('utf-8')
01740           else:
01741             val4.name = str[start:end]
01742           start = end
01743           end += 4
01744           (length,) = _struct_I.unpack(str[start:end])
01745           pattern = '<%sf'%length
01746           start = end
01747           end += struct.calcsize(pattern)
01748           val4.values = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=length)
01749           _v119.channels.append(val4)
01750         _v122 = _v112.region
01751         _v123 = _v122.cloud
01752         _v124 = _v123.header
01753         start = end
01754         end += 4
01755         (_v124.seq,) = _struct_I.unpack(str[start:end])
01756         _v125 = _v124.stamp
01757         _x = _v125
01758         start = end
01759         end += 8
01760         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01761         start = end
01762         end += 4
01763         (length,) = _struct_I.unpack(str[start:end])
01764         start = end
01765         end += length
01766         if python3:
01767           _v124.frame_id = str[start:end].decode('utf-8')
01768         else:
01769           _v124.frame_id = str[start:end]
01770         _x = _v123
01771         start = end
01772         end += 8
01773         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01774         start = end
01775         end += 4
01776         (length,) = _struct_I.unpack(str[start:end])
01777         _v123.fields = []
01778         for i in range(0, length):
01779           val5 = sensor_msgs.msg.PointField()
01780           start = end
01781           end += 4
01782           (length,) = _struct_I.unpack(str[start:end])
01783           start = end
01784           end += length
01785           if python3:
01786             val5.name = str[start:end].decode('utf-8')
01787           else:
01788             val5.name = str[start:end]
01789           _x = val5
01790           start = end
01791           end += 9
01792           (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01793           _v123.fields.append(val5)
01794         _x = _v123
01795         start = end
01796         end += 9
01797         (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01798         _v123.is_bigendian = bool(_v123.is_bigendian)
01799         start = end
01800         end += 4
01801         (length,) = _struct_I.unpack(str[start:end])
01802         start = end
01803         end += length
01804         if python3:
01805           _v123.data = str[start:end].decode('utf-8')
01806         else:
01807           _v123.data = str[start:end]
01808         start = end
01809         end += 1
01810         (_v123.is_dense,) = _struct_B.unpack(str[start:end])
01811         _v123.is_dense = bool(_v123.is_dense)
01812         start = end
01813         end += 4
01814         (length,) = _struct_I.unpack(str[start:end])
01815         pattern = '<%si'%length
01816         start = end
01817         end += struct.calcsize(pattern)
01818         _v122.mask = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
01819         _v126 = _v122.image
01820         _v127 = _v126.header
01821         start = end
01822         end += 4
01823         (_v127.seq,) = _struct_I.unpack(str[start:end])
01824         _v128 = _v127.stamp
01825         _x = _v128
01826         start = end
01827         end += 8
01828         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01829         start = end
01830         end += 4
01831         (length,) = _struct_I.unpack(str[start:end])
01832         start = end
01833         end += length
01834         if python3:
01835           _v127.frame_id = str[start:end].decode('utf-8')
01836         else:
01837           _v127.frame_id = str[start:end]
01838         _x = _v126
01839         start = end
01840         end += 8
01841         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01842         start = end
01843         end += 4
01844         (length,) = _struct_I.unpack(str[start:end])
01845         start = end
01846         end += length
01847         if python3:
01848           _v126.encoding = str[start:end].decode('utf-8')
01849         else:
01850           _v126.encoding = str[start:end]
01851         _x = _v126
01852         start = end
01853         end += 5
01854         (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
01855         start = end
01856         end += 4
01857         (length,) = _struct_I.unpack(str[start:end])
01858         start = end
01859         end += length
01860         if python3:
01861           _v126.data = str[start:end].decode('utf-8')
01862         else:
01863           _v126.data = str[start:end]
01864         _v129 = _v122.disparity_image
01865         _v130 = _v129.header
01866         start = end
01867         end += 4
01868         (_v130.seq,) = _struct_I.unpack(str[start:end])
01869         _v131 = _v130.stamp
01870         _x = _v131
01871         start = end
01872         end += 8
01873         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01874         start = end
01875         end += 4
01876         (length,) = _struct_I.unpack(str[start:end])
01877         start = end
01878         end += length
01879         if python3:
01880           _v130.frame_id = str[start:end].decode('utf-8')
01881         else:
01882           _v130.frame_id = str[start:end]
01883         _x = _v129
01884         start = end
01885         end += 8
01886         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01887         start = end
01888         end += 4
01889         (length,) = _struct_I.unpack(str[start:end])
01890         start = end
01891         end += length
01892         if python3:
01893           _v129.encoding = str[start:end].decode('utf-8')
01894         else:
01895           _v129.encoding = str[start:end]
01896         _x = _v129
01897         start = end
01898         end += 5
01899         (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
01900         start = end
01901         end += 4
01902         (length,) = _struct_I.unpack(str[start:end])
01903         start = end
01904         end += length
01905         if python3:
01906           _v129.data = str[start:end].decode('utf-8')
01907         else:
01908           _v129.data = str[start:end]
01909         _v132 = _v122.cam_info
01910         _v133 = _v132.header
01911         start = end
01912         end += 4
01913         (_v133.seq,) = _struct_I.unpack(str[start:end])
01914         _v134 = _v133.stamp
01915         _x = _v134
01916         start = end
01917         end += 8
01918         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01919         start = end
01920         end += 4
01921         (length,) = _struct_I.unpack(str[start:end])
01922         start = end
01923         end += length
01924         if python3:
01925           _v133.frame_id = str[start:end].decode('utf-8')
01926         else:
01927           _v133.frame_id = str[start:end]
01928         _x = _v132
01929         start = end
01930         end += 8
01931         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01932         start = end
01933         end += 4
01934         (length,) = _struct_I.unpack(str[start:end])
01935         start = end
01936         end += length
01937         if python3:
01938           _v132.distortion_model = str[start:end].decode('utf-8')
01939         else:
01940           _v132.distortion_model = str[start:end]
01941         start = end
01942         end += 4
01943         (length,) = _struct_I.unpack(str[start:end])
01944         pattern = '<%sd'%length
01945         start = end
01946         end += struct.calcsize(pattern)
01947         _v132.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01948         start = end
01949         end += 72
01950         _v132.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9)
01951         start = end
01952         end += 72
01953         _v132.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9)
01954         start = end
01955         end += 96
01956         _v132.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12)
01957         _x = _v132
01958         start = end
01959         end += 8
01960         (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end])
01961         _v135 = _v132.roi
01962         _x = _v135
01963         start = end
01964         end += 17
01965         (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end])
01966         _v135.do_rectify = bool(_v135.do_rectify)
01967         _v136 = _v122.roi_box_pose
01968         _v137 = _v136.header
01969         start = end
01970         end += 4
01971         (_v137.seq,) = _struct_I.unpack(str[start:end])
01972         _v138 = _v137.stamp
01973         _x = _v138
01974         start = end
01975         end += 8
01976         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01977         start = end
01978         end += 4
01979         (length,) = _struct_I.unpack(str[start:end])
01980         start = end
01981         end += length
01982         if python3:
01983           _v137.frame_id = str[start:end].decode('utf-8')
01984         else:
01985           _v137.frame_id = str[start:end]
01986         _v139 = _v136.pose
01987         _v140 = _v139.position
01988         _x = _v140
01989         start = end
01990         end += 24
01991         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01992         _v141 = _v139.orientation
01993         _x = _v141
01994         start = end
01995         end += 32
01996         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01997         _v142 = _v122.roi_box_dims
01998         _x = _v142
01999         start = end
02000         end += 24
02001         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02002         start = end
02003         end += 4
02004         (length,) = _struct_I.unpack(str[start:end])
02005         start = end
02006         end += length
02007         if python3:
02008           _v112.collision_name = str[start:end].decode('utf-8')
02009         else:
02010           _v112.collision_name = str[start:end]
02011         _v143 = val1.pose
02012         _v144 = _v143.header
02013         start = end
02014         end += 4
02015         (_v144.seq,) = _struct_I.unpack(str[start:end])
02016         _v145 = _v144.stamp
02017         _x = _v145
02018         start = end
02019         end += 8
02020         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02021         start = end
02022         end += 4
02023         (length,) = _struct_I.unpack(str[start:end])
02024         start = end
02025         end += length
02026         if python3:
02027           _v144.frame_id = str[start:end].decode('utf-8')
02028         else:
02029           _v144.frame_id = str[start:end]
02030         _v146 = _v143.pose
02031         _v147 = _v146.position
02032         _x = _v147
02033         start = end
02034         end += 24
02035         (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02036         _v148 = _v146.orientation
02037         _x = _v148
02038         start = end
02039         end += 32
02040         (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02041         start = end
02042         end += 4
02043         (length,) = _struct_I.unpack(str[start:end])
02044         pattern = '<%sd'%length
02045         start = end
02046         end += struct.calcsize(pattern)
02047         val1.boundingbox = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
02048         self.objects.append(val1)
02049       return self
02050     except struct.error as e:
02051       raise genpy.DeserializationError(e) #most likely buffer underfill
02052 
02053 _struct_I = genpy.struct_I
02054 _struct_IBI = struct.Struct("<IBI")
02055 _struct_B = struct.Struct("<B")
02056 _struct_12d = struct.Struct("<12d")
02057 _struct_f = struct.Struct("<f")
02058 _struct_i = struct.Struct("<i")
02059 _struct_BI = struct.Struct("<BI")
02060 _struct_3f = struct.Struct("<3f")
02061 _struct_9d = struct.Struct("<9d")
02062 _struct_B2I = struct.Struct("<B2I")
02063 _struct_4d = struct.Struct("<4d")
02064 _struct_2I = struct.Struct("<2I")
02065 _struct_4IB = struct.Struct("<4IB")
02066 _struct_3d = struct.Struct("<3d")
02067 class PickPlace(object):
02068   _type          = 'pr2_pick_and_place_service/PickPlace'
02069   _md5sum = 'ed796eaf203a95fd847bb7dfd92ee619'
02070   _request_class  = PickPlaceRequest
02071   _response_class = PickPlaceResponse


pr2_pick_and_place_service
Author(s): Sarah Osentoski
autogenerated on Sun Jan 5 2014 11:28:36