00001 """autogenerated by genpy from srs_object_database_msgs/GetDataRequest.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 GetDataRequest(genpy.Message):
00009 _md5sum = "e322fea33bcf470d266fe9ce0878bcf2"
00010 _type = "srs_object_database_msgs/GetDataRequest"
00011 _has_header = False
00012 _full_text = """
00013
00014
00015
00016
00017
00018 int32[] model_ids
00019 string description
00020
00021
00022
00023 bool mesh
00024 bool pcl
00025 bool surf
00026 bool image
00027 bool grasp
00028 bool urdf
00029
00030
00031
00032 """
00033 __slots__ = ['model_ids','description','mesh','pcl','surf','image','grasp','urdf']
00034 _slot_types = ['int32[]','string','bool','bool','bool','bool','bool','bool']
00035
00036 def __init__(self, *args, **kwds):
00037 """
00038 Constructor. Any message fields that are implicitly/explicitly
00039 set to None will be assigned a default value. The recommend
00040 use is keyword arguments as this is more robust to future message
00041 changes. You cannot mix in-order arguments and keyword arguments.
00042
00043 The available fields are:
00044 model_ids,description,mesh,pcl,surf,image,grasp,urdf
00045
00046 :param args: complete set of field values, in .msg order
00047 :param kwds: use keyword arguments corresponding to message field names
00048 to set specific fields.
00049 """
00050 if args or kwds:
00051 super(GetDataRequest, self).__init__(*args, **kwds)
00052
00053 if self.model_ids is None:
00054 self.model_ids = []
00055 if self.description is None:
00056 self.description = ''
00057 if self.mesh is None:
00058 self.mesh = False
00059 if self.pcl is None:
00060 self.pcl = False
00061 if self.surf is None:
00062 self.surf = False
00063 if self.image is None:
00064 self.image = False
00065 if self.grasp is None:
00066 self.grasp = False
00067 if self.urdf is None:
00068 self.urdf = False
00069 else:
00070 self.model_ids = []
00071 self.description = ''
00072 self.mesh = False
00073 self.pcl = False
00074 self.surf = False
00075 self.image = False
00076 self.grasp = False
00077 self.urdf = False
00078
00079 def _get_types(self):
00080 """
00081 internal API method
00082 """
00083 return self._slot_types
00084
00085 def serialize(self, buff):
00086 """
00087 serialize message into buffer
00088 :param buff: buffer, ``StringIO``
00089 """
00090 try:
00091 length = len(self.model_ids)
00092 buff.write(_struct_I.pack(length))
00093 pattern = '<%si'%length
00094 buff.write(struct.pack(pattern, *self.model_ids))
00095 _x = self.description
00096 length = len(_x)
00097 if python3 or type(_x) == unicode:
00098 _x = _x.encode('utf-8')
00099 length = len(_x)
00100 buff.write(struct.pack('<I%ss'%length, length, _x))
00101 _x = self
00102 buff.write(_struct_6B.pack(_x.mesh, _x.pcl, _x.surf, _x.image, _x.grasp, _x.urdf))
00103 except struct.error as se: self._check_types(se)
00104 except TypeError as te: self._check_types(te)
00105
00106 def deserialize(self, str):
00107 """
00108 unpack serialized message in str into this message instance
00109 :param str: byte array of serialized message, ``str``
00110 """
00111 try:
00112 end = 0
00113 start = end
00114 end += 4
00115 (length,) = _struct_I.unpack(str[start:end])
00116 pattern = '<%si'%length
00117 start = end
00118 end += struct.calcsize(pattern)
00119 self.model_ids = struct.unpack(pattern, str[start:end])
00120 start = end
00121 end += 4
00122 (length,) = _struct_I.unpack(str[start:end])
00123 start = end
00124 end += length
00125 if python3:
00126 self.description = str[start:end].decode('utf-8')
00127 else:
00128 self.description = str[start:end]
00129 _x = self
00130 start = end
00131 end += 6
00132 (_x.mesh, _x.pcl, _x.surf, _x.image, _x.grasp, _x.urdf,) = _struct_6B.unpack(str[start:end])
00133 self.mesh = bool(self.mesh)
00134 self.pcl = bool(self.pcl)
00135 self.surf = bool(self.surf)
00136 self.image = bool(self.image)
00137 self.grasp = bool(self.grasp)
00138 self.urdf = bool(self.urdf)
00139 return self
00140 except struct.error as e:
00141 raise genpy.DeserializationError(e)
00142
00143
00144 def serialize_numpy(self, buff, numpy):
00145 """
00146 serialize message with numpy array types into buffer
00147 :param buff: buffer, ``StringIO``
00148 :param numpy: numpy python module
00149 """
00150 try:
00151 length = len(self.model_ids)
00152 buff.write(_struct_I.pack(length))
00153 pattern = '<%si'%length
00154 buff.write(self.model_ids.tostring())
00155 _x = self.description
00156 length = len(_x)
00157 if python3 or type(_x) == unicode:
00158 _x = _x.encode('utf-8')
00159 length = len(_x)
00160 buff.write(struct.pack('<I%ss'%length, length, _x))
00161 _x = self
00162 buff.write(_struct_6B.pack(_x.mesh, _x.pcl, _x.surf, _x.image, _x.grasp, _x.urdf))
00163 except struct.error as se: self._check_types(se)
00164 except TypeError as te: self._check_types(te)
00165
00166 def deserialize_numpy(self, str, numpy):
00167 """
00168 unpack serialized message in str into this message instance using numpy for array types
00169 :param str: byte array of serialized message, ``str``
00170 :param numpy: numpy python module
00171 """
00172 try:
00173 end = 0
00174 start = end
00175 end += 4
00176 (length,) = _struct_I.unpack(str[start:end])
00177 pattern = '<%si'%length
00178 start = end
00179 end += struct.calcsize(pattern)
00180 self.model_ids = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
00181 start = end
00182 end += 4
00183 (length,) = _struct_I.unpack(str[start:end])
00184 start = end
00185 end += length
00186 if python3:
00187 self.description = str[start:end].decode('utf-8')
00188 else:
00189 self.description = str[start:end]
00190 _x = self
00191 start = end
00192 end += 6
00193 (_x.mesh, _x.pcl, _x.surf, _x.image, _x.grasp, _x.urdf,) = _struct_6B.unpack(str[start:end])
00194 self.mesh = bool(self.mesh)
00195 self.pcl = bool(self.pcl)
00196 self.surf = bool(self.surf)
00197 self.image = bool(self.image)
00198 self.grasp = bool(self.grasp)
00199 self.urdf = bool(self.urdf)
00200 return self
00201 except struct.error as e:
00202 raise genpy.DeserializationError(e)
00203
00204 _struct_I = genpy.struct_I
00205 _struct_6B = struct.Struct("<6B")
00206 """autogenerated by genpy from srs_object_database_msgs/GetDataResponse.msg. Do not edit."""
00207 import sys
00208 python3 = True if sys.hexversion > 0x03000000 else False
00209 import genpy
00210 import struct
00211
00212 import arm_navigation_msgs.msg
00213 import visualization_msgs.msg
00214 import geometry_msgs.msg
00215 import sensor_msgs.msg
00216 import srs_object_database_msgs.msg
00217 import genpy
00218 import std_msgs.msg
00219
00220 class GetDataResponse(genpy.Message):
00221 _md5sum = "8c029ab6bbdfbdc8ed9c7e395d73a54f"
00222 _type = "srs_object_database_msgs/GetDataResponse"
00223 _has_header = False
00224 _full_text = """
00225
00226 string return_response
00227
00228 srs_object_database_msgs/img[] img
00229 srs_object_database_msgs/mesh[] mesh
00230 srs_object_database_msgs/pcl[] pcl
00231 srs_object_database_msgs/surf[] surf
00232 srs_object_database_msgs/grasp[] grasp
00233 srs_object_database_msgs/urdf[] urdf
00234
00235
00236 ================================================================================
00237 MSG: srs_object_database_msgs/img
00238 int32 objectId
00239 string description
00240 sensor_msgs/Image image
00241 ================================================================================
00242 MSG: sensor_msgs/Image
00243 # This message contains an uncompressed image
00244 # (0, 0) is at top-left corner of image
00245 #
00246
00247 Header header # Header timestamp should be acquisition time of image
00248 # Header frame_id should be optical frame of camera
00249 # origin of frame should be optical center of cameara
00250 # +x should point to the right in the image
00251 # +y should point down in the image
00252 # +z should point into to plane of the image
00253 # If the frame_id here and the frame_id of the CameraInfo
00254 # message associated with the image conflict
00255 # the behavior is undefined
00256
00257 uint32 height # image height, that is, number of rows
00258 uint32 width # image width, that is, number of columns
00259
00260 # The legal values for encoding are in file src/image_encodings.cpp
00261 # If you want to standardize a new string format, join
00262 # ros-users@lists.sourceforge.net and send an email proposing a new encoding.
00263
00264 string encoding # Encoding of pixels -- channel meaning, ordering, size
00265 # taken from the list of strings in src/image_encodings.cpp
00266
00267 uint8 is_bigendian # is this data bigendian?
00268 uint32 step # Full row length in bytes
00269 uint8[] data # actual matrix data, size is (step * rows)
00270
00271 ================================================================================
00272 MSG: std_msgs/Header
00273 # Standard metadata for higher-level stamped data types.
00274 # This is generally used to communicate timestamped data
00275 # in a particular coordinate frame.
00276 #
00277 # sequence ID: consecutively increasing ID
00278 uint32 seq
00279 #Two-integer timestamp that is expressed as:
00280 # * stamp.secs: seconds (stamp_secs) since epoch
00281 # * stamp.nsecs: nanoseconds since stamp_secs
00282 # time-handling sugar is provided by the client library
00283 time stamp
00284 #Frame this data is associated with
00285 # 0: no frame
00286 # 1: global frame
00287 string frame_id
00288
00289 ================================================================================
00290 MSG: srs_object_database_msgs/mesh
00291 int32 objectId
00292 arm_navigation_msgs/Shape mesh
00293 string type
00294 uint8[] data
00295 ================================================================================
00296 MSG: arm_navigation_msgs/Shape
00297 byte SPHERE=0
00298 byte BOX=1
00299 byte CYLINDER=2
00300 byte MESH=3
00301
00302 byte type
00303
00304
00305 #### define sphere, box, cylinder ####
00306 # the origin of each shape is considered at the shape's center
00307
00308 # for sphere
00309 # radius := dimensions[0]
00310
00311 # for cylinder
00312 # radius := dimensions[0]
00313 # length := dimensions[1]
00314 # the length is along the Z axis
00315
00316 # for box
00317 # size_x := dimensions[0]
00318 # size_y := dimensions[1]
00319 # size_z := dimensions[2]
00320 float64[] dimensions
00321
00322
00323 #### define mesh ####
00324
00325 # list of triangles; triangle k is defined by tre vertices located
00326 # at indices triangles[3k], triangles[3k+1], triangles[3k+2]
00327 int32[] triangles
00328 geometry_msgs/Point[] vertices
00329
00330 ================================================================================
00331 MSG: geometry_msgs/Point
00332 # This contains the position of a point in free space
00333 float64 x
00334 float64 y
00335 float64 z
00336
00337 ================================================================================
00338 MSG: srs_object_database_msgs/pcl
00339 int32 objectId
00340 sensor_msgs/PointCloud2 pcl
00341
00342 ================================================================================
00343 MSG: sensor_msgs/PointCloud2
00344 # This message holds a collection of N-dimensional points, which may
00345 # contain additional information such as normals, intensity, etc. The
00346 # point data is stored as a binary blob, its layout described by the
00347 # contents of the "fields" array.
00348
00349 # The point cloud data may be organized 2d (image-like) or 1d
00350 # (unordered). Point clouds organized as 2d images may be produced by
00351 # camera depth sensors such as stereo or time-of-flight.
00352
00353 # Time of sensor data acquisition, and the coordinate frame ID (for 3d
00354 # points).
00355 Header header
00356
00357 # 2D structure of the point cloud. If the cloud is unordered, height is
00358 # 1 and width is the length of the point cloud.
00359 uint32 height
00360 uint32 width
00361
00362 # Describes the channels and their layout in the binary data blob.
00363 PointField[] fields
00364
00365 bool is_bigendian # Is this data bigendian?
00366 uint32 point_step # Length of a point in bytes
00367 uint32 row_step # Length of a row in bytes
00368 uint8[] data # Actual point data, size is (row_step*height)
00369
00370 bool is_dense # True if there are no invalid points
00371
00372 ================================================================================
00373 MSG: sensor_msgs/PointField
00374 # This message holds the description of one point entry in the
00375 # PointCloud2 message format.
00376 uint8 INT8 = 1
00377 uint8 UINT8 = 2
00378 uint8 INT16 = 3
00379 uint8 UINT16 = 4
00380 uint8 INT32 = 5
00381 uint8 UINT32 = 6
00382 uint8 FLOAT32 = 7
00383 uint8 FLOAT64 = 8
00384
00385 string name # Name of field
00386 uint32 offset # Offset from start of point struct
00387 uint8 datatype # Datatype enumeration, see above
00388 uint32 count # How many elements in the field
00389
00390 ================================================================================
00391 MSG: srs_object_database_msgs/surf
00392 int32 objectId
00393 sensor_msgs/PointCloud2 surf
00394 sensor_msgs/PointCloud2 bounding_box
00395 geometry_msgs/Pose coord_frame
00396
00397 ================================================================================
00398 MSG: geometry_msgs/Pose
00399 # A representation of pose in free space, composed of postion and orientation.
00400 Point position
00401 Quaternion orientation
00402
00403 ================================================================================
00404 MSG: geometry_msgs/Quaternion
00405 # This represents an orientation in free space in quaternion form.
00406
00407 float64 x
00408 float64 y
00409 float64 z
00410 float64 w
00411
00412 ================================================================================
00413 MSG: srs_object_database_msgs/grasp
00414 int32 objectId
00415 string Objecttype
00416 string pose
00417 string fileDescription
00418 uint8[] bs
00419 int32 size
00420
00421 ================================================================================
00422 MSG: srs_object_database_msgs/urdf
00423 int32 objectId
00424 visualization_msgs/Marker[] markers
00425 ================================================================================
00426 MSG: visualization_msgs/Marker
00427 # See http://www.ros.org/wiki/rviz/DisplayTypes/Marker and http://www.ros.org/wiki/rviz/Tutorials/Markers%3A%20Basic%20Shapes for more information on using this message with rviz
00428
00429 uint8 ARROW=0
00430 uint8 CUBE=1
00431 uint8 SPHERE=2
00432 uint8 CYLINDER=3
00433 uint8 LINE_STRIP=4
00434 uint8 LINE_LIST=5
00435 uint8 CUBE_LIST=6
00436 uint8 SPHERE_LIST=7
00437 uint8 POINTS=8
00438 uint8 TEXT_VIEW_FACING=9
00439 uint8 MESH_RESOURCE=10
00440 uint8 TRIANGLE_LIST=11
00441
00442 uint8 ADD=0
00443 uint8 MODIFY=0
00444 uint8 DELETE=2
00445
00446 Header header # header for time/frame information
00447 string ns # Namespace to place this object in... used in conjunction with id to create a unique name for the object
00448 int32 id # object ID useful in conjunction with the namespace for manipulating and deleting the object later
00449 int32 type # Type of object
00450 int32 action # 0 add/modify an object, 1 (deprecated), 2 deletes an object
00451 geometry_msgs/Pose pose # Pose of the object
00452 geometry_msgs/Vector3 scale # Scale of the object 1,1,1 means default (usually 1 meter square)
00453 std_msgs/ColorRGBA color # Color [0.0-1.0]
00454 duration lifetime # How long the object should last before being automatically deleted. 0 means forever
00455 bool frame_locked # If this marker should be frame-locked, i.e. retransformed into its frame every timestep
00456
00457 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)
00458 geometry_msgs/Point[] points
00459 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)
00460 #number of colors must either be 0 or equal to the number of points
00461 #NOTE: alpha is not yet used
00462 std_msgs/ColorRGBA[] colors
00463
00464 # NOTE: only used for text markers
00465 string text
00466
00467 # NOTE: only used for MESH_RESOURCE markers
00468 string mesh_resource
00469 bool mesh_use_embedded_materials
00470
00471 ================================================================================
00472 MSG: geometry_msgs/Vector3
00473 # This represents a vector in free space.
00474
00475 float64 x
00476 float64 y
00477 float64 z
00478 ================================================================================
00479 MSG: std_msgs/ColorRGBA
00480 float32 r
00481 float32 g
00482 float32 b
00483 float32 a
00484
00485 """
00486 __slots__ = ['return_response','img','mesh','pcl','surf','grasp','urdf']
00487 _slot_types = ['string','srs_object_database_msgs/img[]','srs_object_database_msgs/mesh[]','srs_object_database_msgs/pcl[]','srs_object_database_msgs/surf[]','srs_object_database_msgs/grasp[]','srs_object_database_msgs/urdf[]']
00488
00489 def __init__(self, *args, **kwds):
00490 """
00491 Constructor. Any message fields that are implicitly/explicitly
00492 set to None will be assigned a default value. The recommend
00493 use is keyword arguments as this is more robust to future message
00494 changes. You cannot mix in-order arguments and keyword arguments.
00495
00496 The available fields are:
00497 return_response,img,mesh,pcl,surf,grasp,urdf
00498
00499 :param args: complete set of field values, in .msg order
00500 :param kwds: use keyword arguments corresponding to message field names
00501 to set specific fields.
00502 """
00503 if args or kwds:
00504 super(GetDataResponse, self).__init__(*args, **kwds)
00505
00506 if self.return_response is None:
00507 self.return_response = ''
00508 if self.img is None:
00509 self.img = []
00510 if self.mesh is None:
00511 self.mesh = []
00512 if self.pcl is None:
00513 self.pcl = []
00514 if self.surf is None:
00515 self.surf = []
00516 if self.grasp is None:
00517 self.grasp = []
00518 if self.urdf is None:
00519 self.urdf = []
00520 else:
00521 self.return_response = ''
00522 self.img = []
00523 self.mesh = []
00524 self.pcl = []
00525 self.surf = []
00526 self.grasp = []
00527 self.urdf = []
00528
00529 def _get_types(self):
00530 """
00531 internal API method
00532 """
00533 return self._slot_types
00534
00535 def serialize(self, buff):
00536 """
00537 serialize message into buffer
00538 :param buff: buffer, ``StringIO``
00539 """
00540 try:
00541 _x = self.return_response
00542 length = len(_x)
00543 if python3 or type(_x) == unicode:
00544 _x = _x.encode('utf-8')
00545 length = len(_x)
00546 buff.write(struct.pack('<I%ss'%length, length, _x))
00547 length = len(self.img)
00548 buff.write(_struct_I.pack(length))
00549 for val1 in self.img:
00550 buff.write(_struct_i.pack(val1.objectId))
00551 _x = val1.description
00552 length = len(_x)
00553 if python3 or type(_x) == unicode:
00554 _x = _x.encode('utf-8')
00555 length = len(_x)
00556 buff.write(struct.pack('<I%ss'%length, length, _x))
00557 _v1 = val1.image
00558 _v2 = _v1.header
00559 buff.write(_struct_I.pack(_v2.seq))
00560 _v3 = _v2.stamp
00561 _x = _v3
00562 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00563 _x = _v2.frame_id
00564 length = len(_x)
00565 if python3 or type(_x) == unicode:
00566 _x = _x.encode('utf-8')
00567 length = len(_x)
00568 buff.write(struct.pack('<I%ss'%length, length, _x))
00569 _x = _v1
00570 buff.write(_struct_2I.pack(_x.height, _x.width))
00571 _x = _v1.encoding
00572 length = len(_x)
00573 if python3 or type(_x) == unicode:
00574 _x = _x.encode('utf-8')
00575 length = len(_x)
00576 buff.write(struct.pack('<I%ss'%length, length, _x))
00577 _x = _v1
00578 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
00579 _x = _v1.data
00580 length = len(_x)
00581
00582 if type(_x) in [list, tuple]:
00583 buff.write(struct.pack('<I%sB'%length, length, *_x))
00584 else:
00585 buff.write(struct.pack('<I%ss'%length, length, _x))
00586 length = len(self.mesh)
00587 buff.write(_struct_I.pack(length))
00588 for val1 in self.mesh:
00589 buff.write(_struct_i.pack(val1.objectId))
00590 _v4 = val1.mesh
00591 buff.write(_struct_b.pack(_v4.type))
00592 length = len(_v4.dimensions)
00593 buff.write(_struct_I.pack(length))
00594 pattern = '<%sd'%length
00595 buff.write(struct.pack(pattern, *_v4.dimensions))
00596 length = len(_v4.triangles)
00597 buff.write(_struct_I.pack(length))
00598 pattern = '<%si'%length
00599 buff.write(struct.pack(pattern, *_v4.triangles))
00600 length = len(_v4.vertices)
00601 buff.write(_struct_I.pack(length))
00602 for val3 in _v4.vertices:
00603 _x = val3
00604 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00605 _x = val1.type
00606 length = len(_x)
00607 if python3 or type(_x) == unicode:
00608 _x = _x.encode('utf-8')
00609 length = len(_x)
00610 buff.write(struct.pack('<I%ss'%length, length, _x))
00611 _x = val1.data
00612 length = len(_x)
00613
00614 if type(_x) in [list, tuple]:
00615 buff.write(struct.pack('<I%sB'%length, length, *_x))
00616 else:
00617 buff.write(struct.pack('<I%ss'%length, length, _x))
00618 length = len(self.pcl)
00619 buff.write(_struct_I.pack(length))
00620 for val1 in self.pcl:
00621 buff.write(_struct_i.pack(val1.objectId))
00622 _v5 = val1.pcl
00623 _v6 = _v5.header
00624 buff.write(_struct_I.pack(_v6.seq))
00625 _v7 = _v6.stamp
00626 _x = _v7
00627 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00628 _x = _v6.frame_id
00629 length = len(_x)
00630 if python3 or type(_x) == unicode:
00631 _x = _x.encode('utf-8')
00632 length = len(_x)
00633 buff.write(struct.pack('<I%ss'%length, length, _x))
00634 _x = _v5
00635 buff.write(_struct_2I.pack(_x.height, _x.width))
00636 length = len(_v5.fields)
00637 buff.write(_struct_I.pack(length))
00638 for val3 in _v5.fields:
00639 _x = val3.name
00640 length = len(_x)
00641 if python3 or type(_x) == unicode:
00642 _x = _x.encode('utf-8')
00643 length = len(_x)
00644 buff.write(struct.pack('<I%ss'%length, length, _x))
00645 _x = val3
00646 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00647 _x = _v5
00648 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00649 _x = _v5.data
00650 length = len(_x)
00651
00652 if type(_x) in [list, tuple]:
00653 buff.write(struct.pack('<I%sB'%length, length, *_x))
00654 else:
00655 buff.write(struct.pack('<I%ss'%length, length, _x))
00656 buff.write(_struct_B.pack(_v5.is_dense))
00657 length = len(self.surf)
00658 buff.write(_struct_I.pack(length))
00659 for val1 in self.surf:
00660 buff.write(_struct_i.pack(val1.objectId))
00661 _v8 = val1.surf
00662 _v9 = _v8.header
00663 buff.write(_struct_I.pack(_v9.seq))
00664 _v10 = _v9.stamp
00665 _x = _v10
00666 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00667 _x = _v9.frame_id
00668 length = len(_x)
00669 if python3 or type(_x) == unicode:
00670 _x = _x.encode('utf-8')
00671 length = len(_x)
00672 buff.write(struct.pack('<I%ss'%length, length, _x))
00673 _x = _v8
00674 buff.write(_struct_2I.pack(_x.height, _x.width))
00675 length = len(_v8.fields)
00676 buff.write(_struct_I.pack(length))
00677 for val3 in _v8.fields:
00678 _x = val3.name
00679 length = len(_x)
00680 if python3 or type(_x) == unicode:
00681 _x = _x.encode('utf-8')
00682 length = len(_x)
00683 buff.write(struct.pack('<I%ss'%length, length, _x))
00684 _x = val3
00685 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00686 _x = _v8
00687 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00688 _x = _v8.data
00689 length = len(_x)
00690
00691 if type(_x) in [list, tuple]:
00692 buff.write(struct.pack('<I%sB'%length, length, *_x))
00693 else:
00694 buff.write(struct.pack('<I%ss'%length, length, _x))
00695 buff.write(_struct_B.pack(_v8.is_dense))
00696 _v11 = val1.bounding_box
00697 _v12 = _v11.header
00698 buff.write(_struct_I.pack(_v12.seq))
00699 _v13 = _v12.stamp
00700 _x = _v13
00701 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00702 _x = _v12.frame_id
00703 length = len(_x)
00704 if python3 or type(_x) == unicode:
00705 _x = _x.encode('utf-8')
00706 length = len(_x)
00707 buff.write(struct.pack('<I%ss'%length, length, _x))
00708 _x = _v11
00709 buff.write(_struct_2I.pack(_x.height, _x.width))
00710 length = len(_v11.fields)
00711 buff.write(_struct_I.pack(length))
00712 for val3 in _v11.fields:
00713 _x = val3.name
00714 length = len(_x)
00715 if python3 or type(_x) == unicode:
00716 _x = _x.encode('utf-8')
00717 length = len(_x)
00718 buff.write(struct.pack('<I%ss'%length, length, _x))
00719 _x = val3
00720 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00721 _x = _v11
00722 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00723 _x = _v11.data
00724 length = len(_x)
00725
00726 if type(_x) in [list, tuple]:
00727 buff.write(struct.pack('<I%sB'%length, length, *_x))
00728 else:
00729 buff.write(struct.pack('<I%ss'%length, length, _x))
00730 buff.write(_struct_B.pack(_v11.is_dense))
00731 _v14 = val1.coord_frame
00732 _v15 = _v14.position
00733 _x = _v15
00734 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00735 _v16 = _v14.orientation
00736 _x = _v16
00737 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00738 length = len(self.grasp)
00739 buff.write(_struct_I.pack(length))
00740 for val1 in self.grasp:
00741 buff.write(_struct_i.pack(val1.objectId))
00742 _x = val1.Objecttype
00743 length = len(_x)
00744 if python3 or type(_x) == unicode:
00745 _x = _x.encode('utf-8')
00746 length = len(_x)
00747 buff.write(struct.pack('<I%ss'%length, length, _x))
00748 _x = val1.pose
00749 length = len(_x)
00750 if python3 or type(_x) == unicode:
00751 _x = _x.encode('utf-8')
00752 length = len(_x)
00753 buff.write(struct.pack('<I%ss'%length, length, _x))
00754 _x = val1.fileDescription
00755 length = len(_x)
00756 if python3 or type(_x) == unicode:
00757 _x = _x.encode('utf-8')
00758 length = len(_x)
00759 buff.write(struct.pack('<I%ss'%length, length, _x))
00760 _x = val1.bs
00761 length = len(_x)
00762
00763 if type(_x) in [list, tuple]:
00764 buff.write(struct.pack('<I%sB'%length, length, *_x))
00765 else:
00766 buff.write(struct.pack('<I%ss'%length, length, _x))
00767 buff.write(_struct_i.pack(val1.size))
00768 length = len(self.urdf)
00769 buff.write(_struct_I.pack(length))
00770 for val1 in self.urdf:
00771 buff.write(_struct_i.pack(val1.objectId))
00772 length = len(val1.markers)
00773 buff.write(_struct_I.pack(length))
00774 for val2 in val1.markers:
00775 _v17 = val2.header
00776 buff.write(_struct_I.pack(_v17.seq))
00777 _v18 = _v17.stamp
00778 _x = _v18
00779 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00780 _x = _v17.frame_id
00781 length = len(_x)
00782 if python3 or type(_x) == unicode:
00783 _x = _x.encode('utf-8')
00784 length = len(_x)
00785 buff.write(struct.pack('<I%ss'%length, length, _x))
00786 _x = val2.ns
00787 length = len(_x)
00788 if python3 or type(_x) == unicode:
00789 _x = _x.encode('utf-8')
00790 length = len(_x)
00791 buff.write(struct.pack('<I%ss'%length, length, _x))
00792 _x = val2
00793 buff.write(_struct_3i.pack(_x.id, _x.type, _x.action))
00794 _v19 = val2.pose
00795 _v20 = _v19.position
00796 _x = _v20
00797 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00798 _v21 = _v19.orientation
00799 _x = _v21
00800 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00801 _v22 = val2.scale
00802 _x = _v22
00803 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00804 _v23 = val2.color
00805 _x = _v23
00806 buff.write(_struct_4f.pack(_x.r, _x.g, _x.b, _x.a))
00807 _v24 = val2.lifetime
00808 _x = _v24
00809 buff.write(_struct_2i.pack(_x.secs, _x.nsecs))
00810 buff.write(_struct_B.pack(val2.frame_locked))
00811 length = len(val2.points)
00812 buff.write(_struct_I.pack(length))
00813 for val3 in val2.points:
00814 _x = val3
00815 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00816 length = len(val2.colors)
00817 buff.write(_struct_I.pack(length))
00818 for val3 in val2.colors:
00819 _x = val3
00820 buff.write(_struct_4f.pack(_x.r, _x.g, _x.b, _x.a))
00821 _x = val2.text
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 _x = val2.mesh_resource
00828 length = len(_x)
00829 if python3 or type(_x) == unicode:
00830 _x = _x.encode('utf-8')
00831 length = len(_x)
00832 buff.write(struct.pack('<I%ss'%length, length, _x))
00833 buff.write(_struct_B.pack(val2.mesh_use_embedded_materials))
00834 except struct.error as se: self._check_types(se)
00835 except TypeError as te: self._check_types(te)
00836
00837 def deserialize(self, str):
00838 """
00839 unpack serialized message in str into this message instance
00840 :param str: byte array of serialized message, ``str``
00841 """
00842 try:
00843 if self.img is None:
00844 self.img = None
00845 if self.mesh is None:
00846 self.mesh = None
00847 if self.pcl is None:
00848 self.pcl = None
00849 if self.surf is None:
00850 self.surf = None
00851 if self.grasp is None:
00852 self.grasp = None
00853 if self.urdf is None:
00854 self.urdf = None
00855 end = 0
00856 start = end
00857 end += 4
00858 (length,) = _struct_I.unpack(str[start:end])
00859 start = end
00860 end += length
00861 if python3:
00862 self.return_response = str[start:end].decode('utf-8')
00863 else:
00864 self.return_response = str[start:end]
00865 start = end
00866 end += 4
00867 (length,) = _struct_I.unpack(str[start:end])
00868 self.img = []
00869 for i in range(0, length):
00870 val1 = srs_object_database_msgs.msg.img()
00871 start = end
00872 end += 4
00873 (val1.objectId,) = _struct_i.unpack(str[start:end])
00874 start = end
00875 end += 4
00876 (length,) = _struct_I.unpack(str[start:end])
00877 start = end
00878 end += length
00879 if python3:
00880 val1.description = str[start:end].decode('utf-8')
00881 else:
00882 val1.description = str[start:end]
00883 _v25 = val1.image
00884 _v26 = _v25.header
00885 start = end
00886 end += 4
00887 (_v26.seq,) = _struct_I.unpack(str[start:end])
00888 _v27 = _v26.stamp
00889 _x = _v27
00890 start = end
00891 end += 8
00892 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00893 start = end
00894 end += 4
00895 (length,) = _struct_I.unpack(str[start:end])
00896 start = end
00897 end += length
00898 if python3:
00899 _v26.frame_id = str[start:end].decode('utf-8')
00900 else:
00901 _v26.frame_id = str[start:end]
00902 _x = _v25
00903 start = end
00904 end += 8
00905 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00906 start = end
00907 end += 4
00908 (length,) = _struct_I.unpack(str[start:end])
00909 start = end
00910 end += length
00911 if python3:
00912 _v25.encoding = str[start:end].decode('utf-8')
00913 else:
00914 _v25.encoding = str[start:end]
00915 _x = _v25
00916 start = end
00917 end += 5
00918 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
00919 start = end
00920 end += 4
00921 (length,) = _struct_I.unpack(str[start:end])
00922 start = end
00923 end += length
00924 if python3:
00925 _v25.data = str[start:end].decode('utf-8')
00926 else:
00927 _v25.data = str[start:end]
00928 self.img.append(val1)
00929 start = end
00930 end += 4
00931 (length,) = _struct_I.unpack(str[start:end])
00932 self.mesh = []
00933 for i in range(0, length):
00934 val1 = srs_object_database_msgs.msg.mesh()
00935 start = end
00936 end += 4
00937 (val1.objectId,) = _struct_i.unpack(str[start:end])
00938 _v28 = val1.mesh
00939 start = end
00940 end += 1
00941 (_v28.type,) = _struct_b.unpack(str[start:end])
00942 start = end
00943 end += 4
00944 (length,) = _struct_I.unpack(str[start:end])
00945 pattern = '<%sd'%length
00946 start = end
00947 end += struct.calcsize(pattern)
00948 _v28.dimensions = struct.unpack(pattern, str[start:end])
00949 start = end
00950 end += 4
00951 (length,) = _struct_I.unpack(str[start:end])
00952 pattern = '<%si'%length
00953 start = end
00954 end += struct.calcsize(pattern)
00955 _v28.triangles = struct.unpack(pattern, str[start:end])
00956 start = end
00957 end += 4
00958 (length,) = _struct_I.unpack(str[start:end])
00959 _v28.vertices = []
00960 for i in range(0, length):
00961 val3 = geometry_msgs.msg.Point()
00962 _x = val3
00963 start = end
00964 end += 24
00965 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00966 _v28.vertices.append(val3)
00967 start = end
00968 end += 4
00969 (length,) = _struct_I.unpack(str[start:end])
00970 start = end
00971 end += length
00972 if python3:
00973 val1.type = str[start:end].decode('utf-8')
00974 else:
00975 val1.type = str[start:end]
00976 start = end
00977 end += 4
00978 (length,) = _struct_I.unpack(str[start:end])
00979 start = end
00980 end += length
00981 if python3:
00982 val1.data = str[start:end].decode('utf-8')
00983 else:
00984 val1.data = str[start:end]
00985 self.mesh.append(val1)
00986 start = end
00987 end += 4
00988 (length,) = _struct_I.unpack(str[start:end])
00989 self.pcl = []
00990 for i in range(0, length):
00991 val1 = srs_object_database_msgs.msg.pcl()
00992 start = end
00993 end += 4
00994 (val1.objectId,) = _struct_i.unpack(str[start:end])
00995 _v29 = val1.pcl
00996 _v30 = _v29.header
00997 start = end
00998 end += 4
00999 (_v30.seq,) = _struct_I.unpack(str[start:end])
01000 _v31 = _v30.stamp
01001 _x = _v31
01002 start = end
01003 end += 8
01004 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01005 start = end
01006 end += 4
01007 (length,) = _struct_I.unpack(str[start:end])
01008 start = end
01009 end += length
01010 if python3:
01011 _v30.frame_id = str[start:end].decode('utf-8')
01012 else:
01013 _v30.frame_id = str[start:end]
01014 _x = _v29
01015 start = end
01016 end += 8
01017 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01018 start = end
01019 end += 4
01020 (length,) = _struct_I.unpack(str[start:end])
01021 _v29.fields = []
01022 for i in range(0, length):
01023 val3 = sensor_msgs.msg.PointField()
01024 start = end
01025 end += 4
01026 (length,) = _struct_I.unpack(str[start:end])
01027 start = end
01028 end += length
01029 if python3:
01030 val3.name = str[start:end].decode('utf-8')
01031 else:
01032 val3.name = str[start:end]
01033 _x = val3
01034 start = end
01035 end += 9
01036 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01037 _v29.fields.append(val3)
01038 _x = _v29
01039 start = end
01040 end += 9
01041 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01042 _v29.is_bigendian = bool(_v29.is_bigendian)
01043 start = end
01044 end += 4
01045 (length,) = _struct_I.unpack(str[start:end])
01046 start = end
01047 end += length
01048 if python3:
01049 _v29.data = str[start:end].decode('utf-8')
01050 else:
01051 _v29.data = str[start:end]
01052 start = end
01053 end += 1
01054 (_v29.is_dense,) = _struct_B.unpack(str[start:end])
01055 _v29.is_dense = bool(_v29.is_dense)
01056 self.pcl.append(val1)
01057 start = end
01058 end += 4
01059 (length,) = _struct_I.unpack(str[start:end])
01060 self.surf = []
01061 for i in range(0, length):
01062 val1 = srs_object_database_msgs.msg.surf()
01063 start = end
01064 end += 4
01065 (val1.objectId,) = _struct_i.unpack(str[start:end])
01066 _v32 = val1.surf
01067 _v33 = _v32.header
01068 start = end
01069 end += 4
01070 (_v33.seq,) = _struct_I.unpack(str[start:end])
01071 _v34 = _v33.stamp
01072 _x = _v34
01073 start = end
01074 end += 8
01075 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01076 start = end
01077 end += 4
01078 (length,) = _struct_I.unpack(str[start:end])
01079 start = end
01080 end += length
01081 if python3:
01082 _v33.frame_id = str[start:end].decode('utf-8')
01083 else:
01084 _v33.frame_id = str[start:end]
01085 _x = _v32
01086 start = end
01087 end += 8
01088 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01089 start = end
01090 end += 4
01091 (length,) = _struct_I.unpack(str[start:end])
01092 _v32.fields = []
01093 for i in range(0, length):
01094 val3 = sensor_msgs.msg.PointField()
01095 start = end
01096 end += 4
01097 (length,) = _struct_I.unpack(str[start:end])
01098 start = end
01099 end += length
01100 if python3:
01101 val3.name = str[start:end].decode('utf-8')
01102 else:
01103 val3.name = str[start:end]
01104 _x = val3
01105 start = end
01106 end += 9
01107 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01108 _v32.fields.append(val3)
01109 _x = _v32
01110 start = end
01111 end += 9
01112 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01113 _v32.is_bigendian = bool(_v32.is_bigendian)
01114 start = end
01115 end += 4
01116 (length,) = _struct_I.unpack(str[start:end])
01117 start = end
01118 end += length
01119 if python3:
01120 _v32.data = str[start:end].decode('utf-8')
01121 else:
01122 _v32.data = str[start:end]
01123 start = end
01124 end += 1
01125 (_v32.is_dense,) = _struct_B.unpack(str[start:end])
01126 _v32.is_dense = bool(_v32.is_dense)
01127 _v35 = val1.bounding_box
01128 _v36 = _v35.header
01129 start = end
01130 end += 4
01131 (_v36.seq,) = _struct_I.unpack(str[start:end])
01132 _v37 = _v36.stamp
01133 _x = _v37
01134 start = end
01135 end += 8
01136 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01137 start = end
01138 end += 4
01139 (length,) = _struct_I.unpack(str[start:end])
01140 start = end
01141 end += length
01142 if python3:
01143 _v36.frame_id = str[start:end].decode('utf-8')
01144 else:
01145 _v36.frame_id = str[start:end]
01146 _x = _v35
01147 start = end
01148 end += 8
01149 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01150 start = end
01151 end += 4
01152 (length,) = _struct_I.unpack(str[start:end])
01153 _v35.fields = []
01154 for i in range(0, length):
01155 val3 = sensor_msgs.msg.PointField()
01156 start = end
01157 end += 4
01158 (length,) = _struct_I.unpack(str[start:end])
01159 start = end
01160 end += length
01161 if python3:
01162 val3.name = str[start:end].decode('utf-8')
01163 else:
01164 val3.name = str[start:end]
01165 _x = val3
01166 start = end
01167 end += 9
01168 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01169 _v35.fields.append(val3)
01170 _x = _v35
01171 start = end
01172 end += 9
01173 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01174 _v35.is_bigendian = bool(_v35.is_bigendian)
01175 start = end
01176 end += 4
01177 (length,) = _struct_I.unpack(str[start:end])
01178 start = end
01179 end += length
01180 if python3:
01181 _v35.data = str[start:end].decode('utf-8')
01182 else:
01183 _v35.data = str[start:end]
01184 start = end
01185 end += 1
01186 (_v35.is_dense,) = _struct_B.unpack(str[start:end])
01187 _v35.is_dense = bool(_v35.is_dense)
01188 _v38 = val1.coord_frame
01189 _v39 = _v38.position
01190 _x = _v39
01191 start = end
01192 end += 24
01193 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01194 _v40 = _v38.orientation
01195 _x = _v40
01196 start = end
01197 end += 32
01198 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01199 self.surf.append(val1)
01200 start = end
01201 end += 4
01202 (length,) = _struct_I.unpack(str[start:end])
01203 self.grasp = []
01204 for i in range(0, length):
01205 val1 = srs_object_database_msgs.msg.grasp()
01206 start = end
01207 end += 4
01208 (val1.objectId,) = _struct_i.unpack(str[start:end])
01209 start = end
01210 end += 4
01211 (length,) = _struct_I.unpack(str[start:end])
01212 start = end
01213 end += length
01214 if python3:
01215 val1.Objecttype = str[start:end].decode('utf-8')
01216 else:
01217 val1.Objecttype = str[start:end]
01218 start = end
01219 end += 4
01220 (length,) = _struct_I.unpack(str[start:end])
01221 start = end
01222 end += length
01223 if python3:
01224 val1.pose = str[start:end].decode('utf-8')
01225 else:
01226 val1.pose = str[start:end]
01227 start = end
01228 end += 4
01229 (length,) = _struct_I.unpack(str[start:end])
01230 start = end
01231 end += length
01232 if python3:
01233 val1.fileDescription = str[start:end].decode('utf-8')
01234 else:
01235 val1.fileDescription = str[start:end]
01236 start = end
01237 end += 4
01238 (length,) = _struct_I.unpack(str[start:end])
01239 start = end
01240 end += length
01241 if python3:
01242 val1.bs = str[start:end].decode('utf-8')
01243 else:
01244 val1.bs = str[start:end]
01245 start = end
01246 end += 4
01247 (val1.size,) = _struct_i.unpack(str[start:end])
01248 self.grasp.append(val1)
01249 start = end
01250 end += 4
01251 (length,) = _struct_I.unpack(str[start:end])
01252 self.urdf = []
01253 for i in range(0, length):
01254 val1 = srs_object_database_msgs.msg.urdf()
01255 start = end
01256 end += 4
01257 (val1.objectId,) = _struct_i.unpack(str[start:end])
01258 start = end
01259 end += 4
01260 (length,) = _struct_I.unpack(str[start:end])
01261 val1.markers = []
01262 for i in range(0, length):
01263 val2 = visualization_msgs.msg.Marker()
01264 _v41 = val2.header
01265 start = end
01266 end += 4
01267 (_v41.seq,) = _struct_I.unpack(str[start:end])
01268 _v42 = _v41.stamp
01269 _x = _v42
01270 start = end
01271 end += 8
01272 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01273 start = end
01274 end += 4
01275 (length,) = _struct_I.unpack(str[start:end])
01276 start = end
01277 end += length
01278 if python3:
01279 _v41.frame_id = str[start:end].decode('utf-8')
01280 else:
01281 _v41.frame_id = str[start:end]
01282 start = end
01283 end += 4
01284 (length,) = _struct_I.unpack(str[start:end])
01285 start = end
01286 end += length
01287 if python3:
01288 val2.ns = str[start:end].decode('utf-8')
01289 else:
01290 val2.ns = str[start:end]
01291 _x = val2
01292 start = end
01293 end += 12
01294 (_x.id, _x.type, _x.action,) = _struct_3i.unpack(str[start:end])
01295 _v43 = val2.pose
01296 _v44 = _v43.position
01297 _x = _v44
01298 start = end
01299 end += 24
01300 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01301 _v45 = _v43.orientation
01302 _x = _v45
01303 start = end
01304 end += 32
01305 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
01306 _v46 = val2.scale
01307 _x = _v46
01308 start = end
01309 end += 24
01310 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01311 _v47 = val2.color
01312 _x = _v47
01313 start = end
01314 end += 16
01315 (_x.r, _x.g, _x.b, _x.a,) = _struct_4f.unpack(str[start:end])
01316 _v48 = val2.lifetime
01317 _x = _v48
01318 start = end
01319 end += 8
01320 (_x.secs, _x.nsecs,) = _struct_2i.unpack(str[start:end])
01321 start = end
01322 end += 1
01323 (val2.frame_locked,) = _struct_B.unpack(str[start:end])
01324 val2.frame_locked = bool(val2.frame_locked)
01325 start = end
01326 end += 4
01327 (length,) = _struct_I.unpack(str[start:end])
01328 val2.points = []
01329 for i in range(0, length):
01330 val3 = geometry_msgs.msg.Point()
01331 _x = val3
01332 start = end
01333 end += 24
01334 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01335 val2.points.append(val3)
01336 start = end
01337 end += 4
01338 (length,) = _struct_I.unpack(str[start:end])
01339 val2.colors = []
01340 for i in range(0, length):
01341 val3 = std_msgs.msg.ColorRGBA()
01342 _x = val3
01343 start = end
01344 end += 16
01345 (_x.r, _x.g, _x.b, _x.a,) = _struct_4f.unpack(str[start:end])
01346 val2.colors.append(val3)
01347 start = end
01348 end += 4
01349 (length,) = _struct_I.unpack(str[start:end])
01350 start = end
01351 end += length
01352 if python3:
01353 val2.text = str[start:end].decode('utf-8')
01354 else:
01355 val2.text = str[start:end]
01356 start = end
01357 end += 4
01358 (length,) = _struct_I.unpack(str[start:end])
01359 start = end
01360 end += length
01361 if python3:
01362 val2.mesh_resource = str[start:end].decode('utf-8')
01363 else:
01364 val2.mesh_resource = str[start:end]
01365 start = end
01366 end += 1
01367 (val2.mesh_use_embedded_materials,) = _struct_B.unpack(str[start:end])
01368 val2.mesh_use_embedded_materials = bool(val2.mesh_use_embedded_materials)
01369 val1.markers.append(val2)
01370 self.urdf.append(val1)
01371 return self
01372 except struct.error as e:
01373 raise genpy.DeserializationError(e)
01374
01375
01376 def serialize_numpy(self, buff, numpy):
01377 """
01378 serialize message with numpy array types into buffer
01379 :param buff: buffer, ``StringIO``
01380 :param numpy: numpy python module
01381 """
01382 try:
01383 _x = self.return_response
01384 length = len(_x)
01385 if python3 or type(_x) == unicode:
01386 _x = _x.encode('utf-8')
01387 length = len(_x)
01388 buff.write(struct.pack('<I%ss'%length, length, _x))
01389 length = len(self.img)
01390 buff.write(_struct_I.pack(length))
01391 for val1 in self.img:
01392 buff.write(_struct_i.pack(val1.objectId))
01393 _x = val1.description
01394 length = len(_x)
01395 if python3 or type(_x) == unicode:
01396 _x = _x.encode('utf-8')
01397 length = len(_x)
01398 buff.write(struct.pack('<I%ss'%length, length, _x))
01399 _v49 = val1.image
01400 _v50 = _v49.header
01401 buff.write(_struct_I.pack(_v50.seq))
01402 _v51 = _v50.stamp
01403 _x = _v51
01404 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01405 _x = _v50.frame_id
01406 length = len(_x)
01407 if python3 or type(_x) == unicode:
01408 _x = _x.encode('utf-8')
01409 length = len(_x)
01410 buff.write(struct.pack('<I%ss'%length, length, _x))
01411 _x = _v49
01412 buff.write(_struct_2I.pack(_x.height, _x.width))
01413 _x = _v49.encoding
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 _x = _v49
01420 buff.write(_struct_BI.pack(_x.is_bigendian, _x.step))
01421 _x = _v49.data
01422 length = len(_x)
01423
01424 if type(_x) in [list, tuple]:
01425 buff.write(struct.pack('<I%sB'%length, length, *_x))
01426 else:
01427 buff.write(struct.pack('<I%ss'%length, length, _x))
01428 length = len(self.mesh)
01429 buff.write(_struct_I.pack(length))
01430 for val1 in self.mesh:
01431 buff.write(_struct_i.pack(val1.objectId))
01432 _v52 = val1.mesh
01433 buff.write(_struct_b.pack(_v52.type))
01434 length = len(_v52.dimensions)
01435 buff.write(_struct_I.pack(length))
01436 pattern = '<%sd'%length
01437 buff.write(_v52.dimensions.tostring())
01438 length = len(_v52.triangles)
01439 buff.write(_struct_I.pack(length))
01440 pattern = '<%si'%length
01441 buff.write(_v52.triangles.tostring())
01442 length = len(_v52.vertices)
01443 buff.write(_struct_I.pack(length))
01444 for val3 in _v52.vertices:
01445 _x = val3
01446 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01447 _x = val1.type
01448 length = len(_x)
01449 if python3 or type(_x) == unicode:
01450 _x = _x.encode('utf-8')
01451 length = len(_x)
01452 buff.write(struct.pack('<I%ss'%length, length, _x))
01453 _x = val1.data
01454 length = len(_x)
01455
01456 if type(_x) in [list, tuple]:
01457 buff.write(struct.pack('<I%sB'%length, length, *_x))
01458 else:
01459 buff.write(struct.pack('<I%ss'%length, length, _x))
01460 length = len(self.pcl)
01461 buff.write(_struct_I.pack(length))
01462 for val1 in self.pcl:
01463 buff.write(_struct_i.pack(val1.objectId))
01464 _v53 = val1.pcl
01465 _v54 = _v53.header
01466 buff.write(_struct_I.pack(_v54.seq))
01467 _v55 = _v54.stamp
01468 _x = _v55
01469 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01470 _x = _v54.frame_id
01471 length = len(_x)
01472 if python3 or type(_x) == unicode:
01473 _x = _x.encode('utf-8')
01474 length = len(_x)
01475 buff.write(struct.pack('<I%ss'%length, length, _x))
01476 _x = _v53
01477 buff.write(_struct_2I.pack(_x.height, _x.width))
01478 length = len(_v53.fields)
01479 buff.write(_struct_I.pack(length))
01480 for val3 in _v53.fields:
01481 _x = val3.name
01482 length = len(_x)
01483 if python3 or type(_x) == unicode:
01484 _x = _x.encode('utf-8')
01485 length = len(_x)
01486 buff.write(struct.pack('<I%ss'%length, length, _x))
01487 _x = val3
01488 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
01489 _x = _v53
01490 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
01491 _x = _v53.data
01492 length = len(_x)
01493
01494 if type(_x) in [list, tuple]:
01495 buff.write(struct.pack('<I%sB'%length, length, *_x))
01496 else:
01497 buff.write(struct.pack('<I%ss'%length, length, _x))
01498 buff.write(_struct_B.pack(_v53.is_dense))
01499 length = len(self.surf)
01500 buff.write(_struct_I.pack(length))
01501 for val1 in self.surf:
01502 buff.write(_struct_i.pack(val1.objectId))
01503 _v56 = val1.surf
01504 _v57 = _v56.header
01505 buff.write(_struct_I.pack(_v57.seq))
01506 _v58 = _v57.stamp
01507 _x = _v58
01508 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01509 _x = _v57.frame_id
01510 length = len(_x)
01511 if python3 or type(_x) == unicode:
01512 _x = _x.encode('utf-8')
01513 length = len(_x)
01514 buff.write(struct.pack('<I%ss'%length, length, _x))
01515 _x = _v56
01516 buff.write(_struct_2I.pack(_x.height, _x.width))
01517 length = len(_v56.fields)
01518 buff.write(_struct_I.pack(length))
01519 for val3 in _v56.fields:
01520 _x = val3.name
01521 length = len(_x)
01522 if python3 or type(_x) == unicode:
01523 _x = _x.encode('utf-8')
01524 length = len(_x)
01525 buff.write(struct.pack('<I%ss'%length, length, _x))
01526 _x = val3
01527 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
01528 _x = _v56
01529 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
01530 _x = _v56.data
01531 length = len(_x)
01532
01533 if type(_x) in [list, tuple]:
01534 buff.write(struct.pack('<I%sB'%length, length, *_x))
01535 else:
01536 buff.write(struct.pack('<I%ss'%length, length, _x))
01537 buff.write(_struct_B.pack(_v56.is_dense))
01538 _v59 = val1.bounding_box
01539 _v60 = _v59.header
01540 buff.write(_struct_I.pack(_v60.seq))
01541 _v61 = _v60.stamp
01542 _x = _v61
01543 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01544 _x = _v60.frame_id
01545 length = len(_x)
01546 if python3 or type(_x) == unicode:
01547 _x = _x.encode('utf-8')
01548 length = len(_x)
01549 buff.write(struct.pack('<I%ss'%length, length, _x))
01550 _x = _v59
01551 buff.write(_struct_2I.pack(_x.height, _x.width))
01552 length = len(_v59.fields)
01553 buff.write(_struct_I.pack(length))
01554 for val3 in _v59.fields:
01555 _x = val3.name
01556 length = len(_x)
01557 if python3 or type(_x) == unicode:
01558 _x = _x.encode('utf-8')
01559 length = len(_x)
01560 buff.write(struct.pack('<I%ss'%length, length, _x))
01561 _x = val3
01562 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
01563 _x = _v59
01564 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
01565 _x = _v59.data
01566 length = len(_x)
01567
01568 if type(_x) in [list, tuple]:
01569 buff.write(struct.pack('<I%sB'%length, length, *_x))
01570 else:
01571 buff.write(struct.pack('<I%ss'%length, length, _x))
01572 buff.write(_struct_B.pack(_v59.is_dense))
01573 _v62 = val1.coord_frame
01574 _v63 = _v62.position
01575 _x = _v63
01576 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01577 _v64 = _v62.orientation
01578 _x = _v64
01579 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01580 length = len(self.grasp)
01581 buff.write(_struct_I.pack(length))
01582 for val1 in self.grasp:
01583 buff.write(_struct_i.pack(val1.objectId))
01584 _x = val1.Objecttype
01585 length = len(_x)
01586 if python3 or type(_x) == unicode:
01587 _x = _x.encode('utf-8')
01588 length = len(_x)
01589 buff.write(struct.pack('<I%ss'%length, length, _x))
01590 _x = val1.pose
01591 length = len(_x)
01592 if python3 or type(_x) == unicode:
01593 _x = _x.encode('utf-8')
01594 length = len(_x)
01595 buff.write(struct.pack('<I%ss'%length, length, _x))
01596 _x = val1.fileDescription
01597 length = len(_x)
01598 if python3 or type(_x) == unicode:
01599 _x = _x.encode('utf-8')
01600 length = len(_x)
01601 buff.write(struct.pack('<I%ss'%length, length, _x))
01602 _x = val1.bs
01603 length = len(_x)
01604
01605 if type(_x) in [list, tuple]:
01606 buff.write(struct.pack('<I%sB'%length, length, *_x))
01607 else:
01608 buff.write(struct.pack('<I%ss'%length, length, _x))
01609 buff.write(_struct_i.pack(val1.size))
01610 length = len(self.urdf)
01611 buff.write(_struct_I.pack(length))
01612 for val1 in self.urdf:
01613 buff.write(_struct_i.pack(val1.objectId))
01614 length = len(val1.markers)
01615 buff.write(_struct_I.pack(length))
01616 for val2 in val1.markers:
01617 _v65 = val2.header
01618 buff.write(_struct_I.pack(_v65.seq))
01619 _v66 = _v65.stamp
01620 _x = _v66
01621 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
01622 _x = _v65.frame_id
01623 length = len(_x)
01624 if python3 or type(_x) == unicode:
01625 _x = _x.encode('utf-8')
01626 length = len(_x)
01627 buff.write(struct.pack('<I%ss'%length, length, _x))
01628 _x = val2.ns
01629 length = len(_x)
01630 if python3 or type(_x) == unicode:
01631 _x = _x.encode('utf-8')
01632 length = len(_x)
01633 buff.write(struct.pack('<I%ss'%length, length, _x))
01634 _x = val2
01635 buff.write(_struct_3i.pack(_x.id, _x.type, _x.action))
01636 _v67 = val2.pose
01637 _v68 = _v67.position
01638 _x = _v68
01639 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01640 _v69 = _v67.orientation
01641 _x = _v69
01642 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
01643 _v70 = val2.scale
01644 _x = _v70
01645 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01646 _v71 = val2.color
01647 _x = _v71
01648 buff.write(_struct_4f.pack(_x.r, _x.g, _x.b, _x.a))
01649 _v72 = val2.lifetime
01650 _x = _v72
01651 buff.write(_struct_2i.pack(_x.secs, _x.nsecs))
01652 buff.write(_struct_B.pack(val2.frame_locked))
01653 length = len(val2.points)
01654 buff.write(_struct_I.pack(length))
01655 for val3 in val2.points:
01656 _x = val3
01657 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
01658 length = len(val2.colors)
01659 buff.write(_struct_I.pack(length))
01660 for val3 in val2.colors:
01661 _x = val3
01662 buff.write(_struct_4f.pack(_x.r, _x.g, _x.b, _x.a))
01663 _x = val2.text
01664 length = len(_x)
01665 if python3 or type(_x) == unicode:
01666 _x = _x.encode('utf-8')
01667 length = len(_x)
01668 buff.write(struct.pack('<I%ss'%length, length, _x))
01669 _x = val2.mesh_resource
01670 length = len(_x)
01671 if python3 or type(_x) == unicode:
01672 _x = _x.encode('utf-8')
01673 length = len(_x)
01674 buff.write(struct.pack('<I%ss'%length, length, _x))
01675 buff.write(_struct_B.pack(val2.mesh_use_embedded_materials))
01676 except struct.error as se: self._check_types(se)
01677 except TypeError as te: self._check_types(te)
01678
01679 def deserialize_numpy(self, str, numpy):
01680 """
01681 unpack serialized message in str into this message instance using numpy for array types
01682 :param str: byte array of serialized message, ``str``
01683 :param numpy: numpy python module
01684 """
01685 try:
01686 if self.img is None:
01687 self.img = None
01688 if self.mesh is None:
01689 self.mesh = None
01690 if self.pcl is None:
01691 self.pcl = None
01692 if self.surf is None:
01693 self.surf = None
01694 if self.grasp is None:
01695 self.grasp = None
01696 if self.urdf is None:
01697 self.urdf = None
01698 end = 0
01699 start = end
01700 end += 4
01701 (length,) = _struct_I.unpack(str[start:end])
01702 start = end
01703 end += length
01704 if python3:
01705 self.return_response = str[start:end].decode('utf-8')
01706 else:
01707 self.return_response = str[start:end]
01708 start = end
01709 end += 4
01710 (length,) = _struct_I.unpack(str[start:end])
01711 self.img = []
01712 for i in range(0, length):
01713 val1 = srs_object_database_msgs.msg.img()
01714 start = end
01715 end += 4
01716 (val1.objectId,) = _struct_i.unpack(str[start:end])
01717 start = end
01718 end += 4
01719 (length,) = _struct_I.unpack(str[start:end])
01720 start = end
01721 end += length
01722 if python3:
01723 val1.description = str[start:end].decode('utf-8')
01724 else:
01725 val1.description = str[start:end]
01726 _v73 = val1.image
01727 _v74 = _v73.header
01728 start = end
01729 end += 4
01730 (_v74.seq,) = _struct_I.unpack(str[start:end])
01731 _v75 = _v74.stamp
01732 _x = _v75
01733 start = end
01734 end += 8
01735 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01736 start = end
01737 end += 4
01738 (length,) = _struct_I.unpack(str[start:end])
01739 start = end
01740 end += length
01741 if python3:
01742 _v74.frame_id = str[start:end].decode('utf-8')
01743 else:
01744 _v74.frame_id = str[start:end]
01745 _x = _v73
01746 start = end
01747 end += 8
01748 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01749 start = end
01750 end += 4
01751 (length,) = _struct_I.unpack(str[start:end])
01752 start = end
01753 end += length
01754 if python3:
01755 _v73.encoding = str[start:end].decode('utf-8')
01756 else:
01757 _v73.encoding = str[start:end]
01758 _x = _v73
01759 start = end
01760 end += 5
01761 (_x.is_bigendian, _x.step,) = _struct_BI.unpack(str[start:end])
01762 start = end
01763 end += 4
01764 (length,) = _struct_I.unpack(str[start:end])
01765 start = end
01766 end += length
01767 if python3:
01768 _v73.data = str[start:end].decode('utf-8')
01769 else:
01770 _v73.data = str[start:end]
01771 self.img.append(val1)
01772 start = end
01773 end += 4
01774 (length,) = _struct_I.unpack(str[start:end])
01775 self.mesh = []
01776 for i in range(0, length):
01777 val1 = srs_object_database_msgs.msg.mesh()
01778 start = end
01779 end += 4
01780 (val1.objectId,) = _struct_i.unpack(str[start:end])
01781 _v76 = val1.mesh
01782 start = end
01783 end += 1
01784 (_v76.type,) = _struct_b.unpack(str[start:end])
01785 start = end
01786 end += 4
01787 (length,) = _struct_I.unpack(str[start:end])
01788 pattern = '<%sd'%length
01789 start = end
01790 end += struct.calcsize(pattern)
01791 _v76.dimensions = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
01792 start = end
01793 end += 4
01794 (length,) = _struct_I.unpack(str[start:end])
01795 pattern = '<%si'%length
01796 start = end
01797 end += struct.calcsize(pattern)
01798 _v76.triangles = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
01799 start = end
01800 end += 4
01801 (length,) = _struct_I.unpack(str[start:end])
01802 _v76.vertices = []
01803 for i in range(0, length):
01804 val3 = geometry_msgs.msg.Point()
01805 _x = val3
01806 start = end
01807 end += 24
01808 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
01809 _v76.vertices.append(val3)
01810 start = end
01811 end += 4
01812 (length,) = _struct_I.unpack(str[start:end])
01813 start = end
01814 end += length
01815 if python3:
01816 val1.type = str[start:end].decode('utf-8')
01817 else:
01818 val1.type = str[start:end]
01819 start = end
01820 end += 4
01821 (length,) = _struct_I.unpack(str[start:end])
01822 start = end
01823 end += length
01824 if python3:
01825 val1.data = str[start:end].decode('utf-8')
01826 else:
01827 val1.data = str[start:end]
01828 self.mesh.append(val1)
01829 start = end
01830 end += 4
01831 (length,) = _struct_I.unpack(str[start:end])
01832 self.pcl = []
01833 for i in range(0, length):
01834 val1 = srs_object_database_msgs.msg.pcl()
01835 start = end
01836 end += 4
01837 (val1.objectId,) = _struct_i.unpack(str[start:end])
01838 _v77 = val1.pcl
01839 _v78 = _v77.header
01840 start = end
01841 end += 4
01842 (_v78.seq,) = _struct_I.unpack(str[start:end])
01843 _v79 = _v78.stamp
01844 _x = _v79
01845 start = end
01846 end += 8
01847 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01848 start = end
01849 end += 4
01850 (length,) = _struct_I.unpack(str[start:end])
01851 start = end
01852 end += length
01853 if python3:
01854 _v78.frame_id = str[start:end].decode('utf-8')
01855 else:
01856 _v78.frame_id = str[start:end]
01857 _x = _v77
01858 start = end
01859 end += 8
01860 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01861 start = end
01862 end += 4
01863 (length,) = _struct_I.unpack(str[start:end])
01864 _v77.fields = []
01865 for i in range(0, length):
01866 val3 = sensor_msgs.msg.PointField()
01867 start = end
01868 end += 4
01869 (length,) = _struct_I.unpack(str[start:end])
01870 start = end
01871 end += length
01872 if python3:
01873 val3.name = str[start:end].decode('utf-8')
01874 else:
01875 val3.name = str[start:end]
01876 _x = val3
01877 start = end
01878 end += 9
01879 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01880 _v77.fields.append(val3)
01881 _x = _v77
01882 start = end
01883 end += 9
01884 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01885 _v77.is_bigendian = bool(_v77.is_bigendian)
01886 start = end
01887 end += 4
01888 (length,) = _struct_I.unpack(str[start:end])
01889 start = end
01890 end += length
01891 if python3:
01892 _v77.data = str[start:end].decode('utf-8')
01893 else:
01894 _v77.data = str[start:end]
01895 start = end
01896 end += 1
01897 (_v77.is_dense,) = _struct_B.unpack(str[start:end])
01898 _v77.is_dense = bool(_v77.is_dense)
01899 self.pcl.append(val1)
01900 start = end
01901 end += 4
01902 (length,) = _struct_I.unpack(str[start:end])
01903 self.surf = []
01904 for i in range(0, length):
01905 val1 = srs_object_database_msgs.msg.surf()
01906 start = end
01907 end += 4
01908 (val1.objectId,) = _struct_i.unpack(str[start:end])
01909 _v80 = val1.surf
01910 _v81 = _v80.header
01911 start = end
01912 end += 4
01913 (_v81.seq,) = _struct_I.unpack(str[start:end])
01914 _v82 = _v81.stamp
01915 _x = _v82
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 _v81.frame_id = str[start:end].decode('utf-8')
01926 else:
01927 _v81.frame_id = str[start:end]
01928 _x = _v80
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 _v80.fields = []
01936 for i in range(0, length):
01937 val3 = sensor_msgs.msg.PointField()
01938 start = end
01939 end += 4
01940 (length,) = _struct_I.unpack(str[start:end])
01941 start = end
01942 end += length
01943 if python3:
01944 val3.name = str[start:end].decode('utf-8')
01945 else:
01946 val3.name = str[start:end]
01947 _x = val3
01948 start = end
01949 end += 9
01950 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
01951 _v80.fields.append(val3)
01952 _x = _v80
01953 start = end
01954 end += 9
01955 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
01956 _v80.is_bigendian = bool(_v80.is_bigendian)
01957 start = end
01958 end += 4
01959 (length,) = _struct_I.unpack(str[start:end])
01960 start = end
01961 end += length
01962 if python3:
01963 _v80.data = str[start:end].decode('utf-8')
01964 else:
01965 _v80.data = str[start:end]
01966 start = end
01967 end += 1
01968 (_v80.is_dense,) = _struct_B.unpack(str[start:end])
01969 _v80.is_dense = bool(_v80.is_dense)
01970 _v83 = val1.bounding_box
01971 _v84 = _v83.header
01972 start = end
01973 end += 4
01974 (_v84.seq,) = _struct_I.unpack(str[start:end])
01975 _v85 = _v84.stamp
01976 _x = _v85
01977 start = end
01978 end += 8
01979 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
01980 start = end
01981 end += 4
01982 (length,) = _struct_I.unpack(str[start:end])
01983 start = end
01984 end += length
01985 if python3:
01986 _v84.frame_id = str[start:end].decode('utf-8')
01987 else:
01988 _v84.frame_id = str[start:end]
01989 _x = _v83
01990 start = end
01991 end += 8
01992 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
01993 start = end
01994 end += 4
01995 (length,) = _struct_I.unpack(str[start:end])
01996 _v83.fields = []
01997 for i in range(0, length):
01998 val3 = sensor_msgs.msg.PointField()
01999 start = end
02000 end += 4
02001 (length,) = _struct_I.unpack(str[start:end])
02002 start = end
02003 end += length
02004 if python3:
02005 val3.name = str[start:end].decode('utf-8')
02006 else:
02007 val3.name = str[start:end]
02008 _x = val3
02009 start = end
02010 end += 9
02011 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
02012 _v83.fields.append(val3)
02013 _x = _v83
02014 start = end
02015 end += 9
02016 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
02017 _v83.is_bigendian = bool(_v83.is_bigendian)
02018 start = end
02019 end += 4
02020 (length,) = _struct_I.unpack(str[start:end])
02021 start = end
02022 end += length
02023 if python3:
02024 _v83.data = str[start:end].decode('utf-8')
02025 else:
02026 _v83.data = str[start:end]
02027 start = end
02028 end += 1
02029 (_v83.is_dense,) = _struct_B.unpack(str[start:end])
02030 _v83.is_dense = bool(_v83.is_dense)
02031 _v86 = val1.coord_frame
02032 _v87 = _v86.position
02033 _x = _v87
02034 start = end
02035 end += 24
02036 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02037 _v88 = _v86.orientation
02038 _x = _v88
02039 start = end
02040 end += 32
02041 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02042 self.surf.append(val1)
02043 start = end
02044 end += 4
02045 (length,) = _struct_I.unpack(str[start:end])
02046 self.grasp = []
02047 for i in range(0, length):
02048 val1 = srs_object_database_msgs.msg.grasp()
02049 start = end
02050 end += 4
02051 (val1.objectId,) = _struct_i.unpack(str[start:end])
02052 start = end
02053 end += 4
02054 (length,) = _struct_I.unpack(str[start:end])
02055 start = end
02056 end += length
02057 if python3:
02058 val1.Objecttype = str[start:end].decode('utf-8')
02059 else:
02060 val1.Objecttype = str[start:end]
02061 start = end
02062 end += 4
02063 (length,) = _struct_I.unpack(str[start:end])
02064 start = end
02065 end += length
02066 if python3:
02067 val1.pose = str[start:end].decode('utf-8')
02068 else:
02069 val1.pose = str[start:end]
02070 start = end
02071 end += 4
02072 (length,) = _struct_I.unpack(str[start:end])
02073 start = end
02074 end += length
02075 if python3:
02076 val1.fileDescription = str[start:end].decode('utf-8')
02077 else:
02078 val1.fileDescription = str[start:end]
02079 start = end
02080 end += 4
02081 (length,) = _struct_I.unpack(str[start:end])
02082 start = end
02083 end += length
02084 if python3:
02085 val1.bs = str[start:end].decode('utf-8')
02086 else:
02087 val1.bs = str[start:end]
02088 start = end
02089 end += 4
02090 (val1.size,) = _struct_i.unpack(str[start:end])
02091 self.grasp.append(val1)
02092 start = end
02093 end += 4
02094 (length,) = _struct_I.unpack(str[start:end])
02095 self.urdf = []
02096 for i in range(0, length):
02097 val1 = srs_object_database_msgs.msg.urdf()
02098 start = end
02099 end += 4
02100 (val1.objectId,) = _struct_i.unpack(str[start:end])
02101 start = end
02102 end += 4
02103 (length,) = _struct_I.unpack(str[start:end])
02104 val1.markers = []
02105 for i in range(0, length):
02106 val2 = visualization_msgs.msg.Marker()
02107 _v89 = val2.header
02108 start = end
02109 end += 4
02110 (_v89.seq,) = _struct_I.unpack(str[start:end])
02111 _v90 = _v89.stamp
02112 _x = _v90
02113 start = end
02114 end += 8
02115 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
02116 start = end
02117 end += 4
02118 (length,) = _struct_I.unpack(str[start:end])
02119 start = end
02120 end += length
02121 if python3:
02122 _v89.frame_id = str[start:end].decode('utf-8')
02123 else:
02124 _v89.frame_id = str[start:end]
02125 start = end
02126 end += 4
02127 (length,) = _struct_I.unpack(str[start:end])
02128 start = end
02129 end += length
02130 if python3:
02131 val2.ns = str[start:end].decode('utf-8')
02132 else:
02133 val2.ns = str[start:end]
02134 _x = val2
02135 start = end
02136 end += 12
02137 (_x.id, _x.type, _x.action,) = _struct_3i.unpack(str[start:end])
02138 _v91 = val2.pose
02139 _v92 = _v91.position
02140 _x = _v92
02141 start = end
02142 end += 24
02143 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02144 _v93 = _v91.orientation
02145 _x = _v93
02146 start = end
02147 end += 32
02148 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
02149 _v94 = val2.scale
02150 _x = _v94
02151 start = end
02152 end += 24
02153 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02154 _v95 = val2.color
02155 _x = _v95
02156 start = end
02157 end += 16
02158 (_x.r, _x.g, _x.b, _x.a,) = _struct_4f.unpack(str[start:end])
02159 _v96 = val2.lifetime
02160 _x = _v96
02161 start = end
02162 end += 8
02163 (_x.secs, _x.nsecs,) = _struct_2i.unpack(str[start:end])
02164 start = end
02165 end += 1
02166 (val2.frame_locked,) = _struct_B.unpack(str[start:end])
02167 val2.frame_locked = bool(val2.frame_locked)
02168 start = end
02169 end += 4
02170 (length,) = _struct_I.unpack(str[start:end])
02171 val2.points = []
02172 for i in range(0, length):
02173 val3 = geometry_msgs.msg.Point()
02174 _x = val3
02175 start = end
02176 end += 24
02177 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
02178 val2.points.append(val3)
02179 start = end
02180 end += 4
02181 (length,) = _struct_I.unpack(str[start:end])
02182 val2.colors = []
02183 for i in range(0, length):
02184 val3 = std_msgs.msg.ColorRGBA()
02185 _x = val3
02186 start = end
02187 end += 16
02188 (_x.r, _x.g, _x.b, _x.a,) = _struct_4f.unpack(str[start:end])
02189 val2.colors.append(val3)
02190 start = end
02191 end += 4
02192 (length,) = _struct_I.unpack(str[start:end])
02193 start = end
02194 end += length
02195 if python3:
02196 val2.text = str[start:end].decode('utf-8')
02197 else:
02198 val2.text = str[start:end]
02199 start = end
02200 end += 4
02201 (length,) = _struct_I.unpack(str[start:end])
02202 start = end
02203 end += length
02204 if python3:
02205 val2.mesh_resource = str[start:end].decode('utf-8')
02206 else:
02207 val2.mesh_resource = str[start:end]
02208 start = end
02209 end += 1
02210 (val2.mesh_use_embedded_materials,) = _struct_B.unpack(str[start:end])
02211 val2.mesh_use_embedded_materials = bool(val2.mesh_use_embedded_materials)
02212 val1.markers.append(val2)
02213 self.urdf.append(val1)
02214 return self
02215 except struct.error as e:
02216 raise genpy.DeserializationError(e)
02217
02218 _struct_I = genpy.struct_I
02219 _struct_IBI = struct.Struct("<IBI")
02220 _struct_b = struct.Struct("<b")
02221 _struct_i = struct.Struct("<i")
02222 _struct_BI = struct.Struct("<BI")
02223 _struct_2i = struct.Struct("<2i")
02224 _struct_3i = struct.Struct("<3i")
02225 _struct_B = struct.Struct("<B")
02226 _struct_B2I = struct.Struct("<B2I")
02227 _struct_4f = struct.Struct("<4f")
02228 _struct_4d = struct.Struct("<4d")
02229 _struct_2I = struct.Struct("<2I")
02230 _struct_3d = struct.Struct("<3d")
02231 class GetData(object):
02232 _type = 'srs_object_database_msgs/GetData'
02233 _md5sum = '0fb0cdcd6e164bc63c7643c4232719fe'
02234 _request_class = GetDataRequest
02235 _response_class = GetDataResponse