00001 """autogenerated by genpy from srs_object_database_msgs/GetSurfRequest.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 GetSurfRequest(genpy.Message):
00009 _md5sum = "80afe6caba30c992d2e7ff6ff0e0d51e"
00010 _type = "srs_object_database_msgs/GetSurfRequest"
00011 _has_header = False
00012 _full_text = """
00013
00014
00015
00016 int32[] model_ids
00017
00018
00019 """
00020 __slots__ = ['model_ids']
00021 _slot_types = ['int32[]']
00022
00023 def __init__(self, *args, **kwds):
00024 """
00025 Constructor. Any message fields that are implicitly/explicitly
00026 set to None will be assigned a default value. The recommend
00027 use is keyword arguments as this is more robust to future message
00028 changes. You cannot mix in-order arguments and keyword arguments.
00029
00030 The available fields are:
00031 model_ids
00032
00033 :param args: complete set of field values, in .msg order
00034 :param kwds: use keyword arguments corresponding to message field names
00035 to set specific fields.
00036 """
00037 if args or kwds:
00038 super(GetSurfRequest, self).__init__(*args, **kwds)
00039
00040 if self.model_ids is None:
00041 self.model_ids = []
00042 else:
00043 self.model_ids = []
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 length = len(self.model_ids)
00058 buff.write(_struct_I.pack(length))
00059 pattern = '<%si'%length
00060 buff.write(struct.pack(pattern, *self.model_ids))
00061 except struct.error as se: self._check_types(se)
00062 except TypeError as te: self._check_types(te)
00063
00064 def deserialize(self, str):
00065 """
00066 unpack serialized message in str into this message instance
00067 :param str: byte array of serialized message, ``str``
00068 """
00069 try:
00070 end = 0
00071 start = end
00072 end += 4
00073 (length,) = _struct_I.unpack(str[start:end])
00074 pattern = '<%si'%length
00075 start = end
00076 end += struct.calcsize(pattern)
00077 self.model_ids = struct.unpack(pattern, str[start:end])
00078 return self
00079 except struct.error as e:
00080 raise genpy.DeserializationError(e)
00081
00082
00083 def serialize_numpy(self, buff, numpy):
00084 """
00085 serialize message with numpy array types into buffer
00086 :param buff: buffer, ``StringIO``
00087 :param numpy: numpy python module
00088 """
00089 try:
00090 length = len(self.model_ids)
00091 buff.write(_struct_I.pack(length))
00092 pattern = '<%si'%length
00093 buff.write(self.model_ids.tostring())
00094 except struct.error as se: self._check_types(se)
00095 except TypeError as te: self._check_types(te)
00096
00097 def deserialize_numpy(self, str, numpy):
00098 """
00099 unpack serialized message in str into this message instance using numpy for array types
00100 :param str: byte array of serialized message, ``str``
00101 :param numpy: numpy python module
00102 """
00103 try:
00104 end = 0
00105 start = end
00106 end += 4
00107 (length,) = _struct_I.unpack(str[start:end])
00108 pattern = '<%si'%length
00109 start = end
00110 end += struct.calcsize(pattern)
00111 self.model_ids = numpy.frombuffer(str[start:end], dtype=numpy.int32, count=length)
00112 return self
00113 except struct.error as e:
00114 raise genpy.DeserializationError(e)
00115
00116 _struct_I = genpy.struct_I
00117 """autogenerated by genpy from srs_object_database_msgs/GetSurfResponse.msg. Do not edit."""
00118 import sys
00119 python3 = True if sys.hexversion > 0x03000000 else False
00120 import genpy
00121 import struct
00122
00123 import geometry_msgs.msg
00124 import srs_object_database_msgs.msg
00125 import std_msgs.msg
00126 import sensor_msgs.msg
00127
00128 class GetSurfResponse(genpy.Message):
00129 _md5sum = "f488db1c5c99c7e7e3059cfcb562df9f"
00130 _type = "srs_object_database_msgs/GetSurfResponse"
00131 _has_header = False
00132 _full_text = """
00133
00134 string return_response
00135
00136 srs_object_database_msgs/surf[] msg
00137
00138
00139 ================================================================================
00140 MSG: srs_object_database_msgs/surf
00141 int32 objectId
00142 sensor_msgs/PointCloud2 surf
00143 sensor_msgs/PointCloud2 bounding_box
00144 geometry_msgs/Pose coord_frame
00145
00146 ================================================================================
00147 MSG: sensor_msgs/PointCloud2
00148 # This message holds a collection of N-dimensional points, which may
00149 # contain additional information such as normals, intensity, etc. The
00150 # point data is stored as a binary blob, its layout described by the
00151 # contents of the "fields" array.
00152
00153 # The point cloud data may be organized 2d (image-like) or 1d
00154 # (unordered). Point clouds organized as 2d images may be produced by
00155 # camera depth sensors such as stereo or time-of-flight.
00156
00157 # Time of sensor data acquisition, and the coordinate frame ID (for 3d
00158 # points).
00159 Header header
00160
00161 # 2D structure of the point cloud. If the cloud is unordered, height is
00162 # 1 and width is the length of the point cloud.
00163 uint32 height
00164 uint32 width
00165
00166 # Describes the channels and their layout in the binary data blob.
00167 PointField[] fields
00168
00169 bool is_bigendian # Is this data bigendian?
00170 uint32 point_step # Length of a point in bytes
00171 uint32 row_step # Length of a row in bytes
00172 uint8[] data # Actual point data, size is (row_step*height)
00173
00174 bool is_dense # True if there are no invalid points
00175
00176 ================================================================================
00177 MSG: std_msgs/Header
00178 # Standard metadata for higher-level stamped data types.
00179 # This is generally used to communicate timestamped data
00180 # in a particular coordinate frame.
00181 #
00182 # sequence ID: consecutively increasing ID
00183 uint32 seq
00184 #Two-integer timestamp that is expressed as:
00185 # * stamp.secs: seconds (stamp_secs) since epoch
00186 # * stamp.nsecs: nanoseconds since stamp_secs
00187 # time-handling sugar is provided by the client library
00188 time stamp
00189 #Frame this data is associated with
00190 # 0: no frame
00191 # 1: global frame
00192 string frame_id
00193
00194 ================================================================================
00195 MSG: sensor_msgs/PointField
00196 # This message holds the description of one point entry in the
00197 # PointCloud2 message format.
00198 uint8 INT8 = 1
00199 uint8 UINT8 = 2
00200 uint8 INT16 = 3
00201 uint8 UINT16 = 4
00202 uint8 INT32 = 5
00203 uint8 UINT32 = 6
00204 uint8 FLOAT32 = 7
00205 uint8 FLOAT64 = 8
00206
00207 string name # Name of field
00208 uint32 offset # Offset from start of point struct
00209 uint8 datatype # Datatype enumeration, see above
00210 uint32 count # How many elements in the field
00211
00212 ================================================================================
00213 MSG: geometry_msgs/Pose
00214 # A representation of pose in free space, composed of postion and orientation.
00215 Point position
00216 Quaternion orientation
00217
00218 ================================================================================
00219 MSG: geometry_msgs/Point
00220 # This contains the position of a point in free space
00221 float64 x
00222 float64 y
00223 float64 z
00224
00225 ================================================================================
00226 MSG: geometry_msgs/Quaternion
00227 # This represents an orientation in free space in quaternion form.
00228
00229 float64 x
00230 float64 y
00231 float64 z
00232 float64 w
00233
00234 """
00235 __slots__ = ['return_response','msg']
00236 _slot_types = ['string','srs_object_database_msgs/surf[]']
00237
00238 def __init__(self, *args, **kwds):
00239 """
00240 Constructor. Any message fields that are implicitly/explicitly
00241 set to None will be assigned a default value. The recommend
00242 use is keyword arguments as this is more robust to future message
00243 changes. You cannot mix in-order arguments and keyword arguments.
00244
00245 The available fields are:
00246 return_response,msg
00247
00248 :param args: complete set of field values, in .msg order
00249 :param kwds: use keyword arguments corresponding to message field names
00250 to set specific fields.
00251 """
00252 if args or kwds:
00253 super(GetSurfResponse, self).__init__(*args, **kwds)
00254
00255 if self.return_response is None:
00256 self.return_response = ''
00257 if self.msg is None:
00258 self.msg = []
00259 else:
00260 self.return_response = ''
00261 self.msg = []
00262
00263 def _get_types(self):
00264 """
00265 internal API method
00266 """
00267 return self._slot_types
00268
00269 def serialize(self, buff):
00270 """
00271 serialize message into buffer
00272 :param buff: buffer, ``StringIO``
00273 """
00274 try:
00275 _x = self.return_response
00276 length = len(_x)
00277 if python3 or type(_x) == unicode:
00278 _x = _x.encode('utf-8')
00279 length = len(_x)
00280 buff.write(struct.pack('<I%ss'%length, length, _x))
00281 length = len(self.msg)
00282 buff.write(_struct_I.pack(length))
00283 for val1 in self.msg:
00284 buff.write(_struct_i.pack(val1.objectId))
00285 _v1 = val1.surf
00286 _v2 = _v1.header
00287 buff.write(_struct_I.pack(_v2.seq))
00288 _v3 = _v2.stamp
00289 _x = _v3
00290 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00291 _x = _v2.frame_id
00292 length = len(_x)
00293 if python3 or type(_x) == unicode:
00294 _x = _x.encode('utf-8')
00295 length = len(_x)
00296 buff.write(struct.pack('<I%ss'%length, length, _x))
00297 _x = _v1
00298 buff.write(_struct_2I.pack(_x.height, _x.width))
00299 length = len(_v1.fields)
00300 buff.write(_struct_I.pack(length))
00301 for val3 in _v1.fields:
00302 _x = val3.name
00303 length = len(_x)
00304 if python3 or type(_x) == unicode:
00305 _x = _x.encode('utf-8')
00306 length = len(_x)
00307 buff.write(struct.pack('<I%ss'%length, length, _x))
00308 _x = val3
00309 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00310 _x = _v1
00311 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00312 _x = _v1.data
00313 length = len(_x)
00314
00315 if type(_x) in [list, tuple]:
00316 buff.write(struct.pack('<I%sB'%length, length, *_x))
00317 else:
00318 buff.write(struct.pack('<I%ss'%length, length, _x))
00319 buff.write(_struct_B.pack(_v1.is_dense))
00320 _v4 = val1.bounding_box
00321 _v5 = _v4.header
00322 buff.write(_struct_I.pack(_v5.seq))
00323 _v6 = _v5.stamp
00324 _x = _v6
00325 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00326 _x = _v5.frame_id
00327 length = len(_x)
00328 if python3 or type(_x) == unicode:
00329 _x = _x.encode('utf-8')
00330 length = len(_x)
00331 buff.write(struct.pack('<I%ss'%length, length, _x))
00332 _x = _v4
00333 buff.write(_struct_2I.pack(_x.height, _x.width))
00334 length = len(_v4.fields)
00335 buff.write(_struct_I.pack(length))
00336 for val3 in _v4.fields:
00337 _x = val3.name
00338 length = len(_x)
00339 if python3 or type(_x) == unicode:
00340 _x = _x.encode('utf-8')
00341 length = len(_x)
00342 buff.write(struct.pack('<I%ss'%length, length, _x))
00343 _x = val3
00344 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00345 _x = _v4
00346 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00347 _x = _v4.data
00348 length = len(_x)
00349
00350 if type(_x) in [list, tuple]:
00351 buff.write(struct.pack('<I%sB'%length, length, *_x))
00352 else:
00353 buff.write(struct.pack('<I%ss'%length, length, _x))
00354 buff.write(_struct_B.pack(_v4.is_dense))
00355 _v7 = val1.coord_frame
00356 _v8 = _v7.position
00357 _x = _v8
00358 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00359 _v9 = _v7.orientation
00360 _x = _v9
00361 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00362 except struct.error as se: self._check_types(se)
00363 except TypeError as te: self._check_types(te)
00364
00365 def deserialize(self, str):
00366 """
00367 unpack serialized message in str into this message instance
00368 :param str: byte array of serialized message, ``str``
00369 """
00370 try:
00371 if self.msg is None:
00372 self.msg = None
00373 end = 0
00374 start = end
00375 end += 4
00376 (length,) = _struct_I.unpack(str[start:end])
00377 start = end
00378 end += length
00379 if python3:
00380 self.return_response = str[start:end].decode('utf-8')
00381 else:
00382 self.return_response = str[start:end]
00383 start = end
00384 end += 4
00385 (length,) = _struct_I.unpack(str[start:end])
00386 self.msg = []
00387 for i in range(0, length):
00388 val1 = srs_object_database_msgs.msg.surf()
00389 start = end
00390 end += 4
00391 (val1.objectId,) = _struct_i.unpack(str[start:end])
00392 _v10 = val1.surf
00393 _v11 = _v10.header
00394 start = end
00395 end += 4
00396 (_v11.seq,) = _struct_I.unpack(str[start:end])
00397 _v12 = _v11.stamp
00398 _x = _v12
00399 start = end
00400 end += 8
00401 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00402 start = end
00403 end += 4
00404 (length,) = _struct_I.unpack(str[start:end])
00405 start = end
00406 end += length
00407 if python3:
00408 _v11.frame_id = str[start:end].decode('utf-8')
00409 else:
00410 _v11.frame_id = str[start:end]
00411 _x = _v10
00412 start = end
00413 end += 8
00414 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00415 start = end
00416 end += 4
00417 (length,) = _struct_I.unpack(str[start:end])
00418 _v10.fields = []
00419 for i in range(0, length):
00420 val3 = sensor_msgs.msg.PointField()
00421 start = end
00422 end += 4
00423 (length,) = _struct_I.unpack(str[start:end])
00424 start = end
00425 end += length
00426 if python3:
00427 val3.name = str[start:end].decode('utf-8')
00428 else:
00429 val3.name = str[start:end]
00430 _x = val3
00431 start = end
00432 end += 9
00433 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00434 _v10.fields.append(val3)
00435 _x = _v10
00436 start = end
00437 end += 9
00438 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
00439 _v10.is_bigendian = bool(_v10.is_bigendian)
00440 start = end
00441 end += 4
00442 (length,) = _struct_I.unpack(str[start:end])
00443 start = end
00444 end += length
00445 _v10.data = str[start:end]
00446 start = end
00447 end += 1
00448 (_v10.is_dense,) = _struct_B.unpack(str[start:end])
00449 _v10.is_dense = bool(_v10.is_dense)
00450 _v13 = val1.bounding_box
00451 _v14 = _v13.header
00452 start = end
00453 end += 4
00454 (_v14.seq,) = _struct_I.unpack(str[start:end])
00455 _v15 = _v14.stamp
00456 _x = _v15
00457 start = end
00458 end += 8
00459 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00460 start = end
00461 end += 4
00462 (length,) = _struct_I.unpack(str[start:end])
00463 start = end
00464 end += length
00465 if python3:
00466 _v14.frame_id = str[start:end].decode('utf-8')
00467 else:
00468 _v14.frame_id = str[start:end]
00469 _x = _v13
00470 start = end
00471 end += 8
00472 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00473 start = end
00474 end += 4
00475 (length,) = _struct_I.unpack(str[start:end])
00476 _v13.fields = []
00477 for i in range(0, length):
00478 val3 = sensor_msgs.msg.PointField()
00479 start = end
00480 end += 4
00481 (length,) = _struct_I.unpack(str[start:end])
00482 start = end
00483 end += length
00484 if python3:
00485 val3.name = str[start:end].decode('utf-8')
00486 else:
00487 val3.name = str[start:end]
00488 _x = val3
00489 start = end
00490 end += 9
00491 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00492 _v13.fields.append(val3)
00493 _x = _v13
00494 start = end
00495 end += 9
00496 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
00497 _v13.is_bigendian = bool(_v13.is_bigendian)
00498 start = end
00499 end += 4
00500 (length,) = _struct_I.unpack(str[start:end])
00501 start = end
00502 end += length
00503 _v13.data = str[start:end]
00504 start = end
00505 end += 1
00506 (_v13.is_dense,) = _struct_B.unpack(str[start:end])
00507 _v13.is_dense = bool(_v13.is_dense)
00508 _v16 = val1.coord_frame
00509 _v17 = _v16.position
00510 _x = _v17
00511 start = end
00512 end += 24
00513 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00514 _v18 = _v16.orientation
00515 _x = _v18
00516 start = end
00517 end += 32
00518 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00519 self.msg.append(val1)
00520 return self
00521 except struct.error as e:
00522 raise genpy.DeserializationError(e)
00523
00524
00525 def serialize_numpy(self, buff, numpy):
00526 """
00527 serialize message with numpy array types into buffer
00528 :param buff: buffer, ``StringIO``
00529 :param numpy: numpy python module
00530 """
00531 try:
00532 _x = self.return_response
00533 length = len(_x)
00534 if python3 or type(_x) == unicode:
00535 _x = _x.encode('utf-8')
00536 length = len(_x)
00537 buff.write(struct.pack('<I%ss'%length, length, _x))
00538 length = len(self.msg)
00539 buff.write(_struct_I.pack(length))
00540 for val1 in self.msg:
00541 buff.write(_struct_i.pack(val1.objectId))
00542 _v19 = val1.surf
00543 _v20 = _v19.header
00544 buff.write(_struct_I.pack(_v20.seq))
00545 _v21 = _v20.stamp
00546 _x = _v21
00547 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00548 _x = _v20.frame_id
00549 length = len(_x)
00550 if python3 or type(_x) == unicode:
00551 _x = _x.encode('utf-8')
00552 length = len(_x)
00553 buff.write(struct.pack('<I%ss'%length, length, _x))
00554 _x = _v19
00555 buff.write(_struct_2I.pack(_x.height, _x.width))
00556 length = len(_v19.fields)
00557 buff.write(_struct_I.pack(length))
00558 for val3 in _v19.fields:
00559 _x = val3.name
00560 length = len(_x)
00561 if python3 or type(_x) == unicode:
00562 _x = _x.encode('utf-8')
00563 length = len(_x)
00564 buff.write(struct.pack('<I%ss'%length, length, _x))
00565 _x = val3
00566 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00567 _x = _v19
00568 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00569 _x = _v19.data
00570 length = len(_x)
00571
00572 if type(_x) in [list, tuple]:
00573 buff.write(struct.pack('<I%sB'%length, length, *_x))
00574 else:
00575 buff.write(struct.pack('<I%ss'%length, length, _x))
00576 buff.write(_struct_B.pack(_v19.is_dense))
00577 _v22 = val1.bounding_box
00578 _v23 = _v22.header
00579 buff.write(_struct_I.pack(_v23.seq))
00580 _v24 = _v23.stamp
00581 _x = _v24
00582 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00583 _x = _v23.frame_id
00584 length = len(_x)
00585 if python3 or type(_x) == unicode:
00586 _x = _x.encode('utf-8')
00587 length = len(_x)
00588 buff.write(struct.pack('<I%ss'%length, length, _x))
00589 _x = _v22
00590 buff.write(_struct_2I.pack(_x.height, _x.width))
00591 length = len(_v22.fields)
00592 buff.write(_struct_I.pack(length))
00593 for val3 in _v22.fields:
00594 _x = val3.name
00595 length = len(_x)
00596 if python3 or type(_x) == unicode:
00597 _x = _x.encode('utf-8')
00598 length = len(_x)
00599 buff.write(struct.pack('<I%ss'%length, length, _x))
00600 _x = val3
00601 buff.write(_struct_IBI.pack(_x.offset, _x.datatype, _x.count))
00602 _x = _v22
00603 buff.write(_struct_B2I.pack(_x.is_bigendian, _x.point_step, _x.row_step))
00604 _x = _v22.data
00605 length = len(_x)
00606
00607 if type(_x) in [list, tuple]:
00608 buff.write(struct.pack('<I%sB'%length, length, *_x))
00609 else:
00610 buff.write(struct.pack('<I%ss'%length, length, _x))
00611 buff.write(_struct_B.pack(_v22.is_dense))
00612 _v25 = val1.coord_frame
00613 _v26 = _v25.position
00614 _x = _v26
00615 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00616 _v27 = _v25.orientation
00617 _x = _v27
00618 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00619 except struct.error as se: self._check_types(se)
00620 except TypeError as te: self._check_types(te)
00621
00622 def deserialize_numpy(self, str, numpy):
00623 """
00624 unpack serialized message in str into this message instance using numpy for array types
00625 :param str: byte array of serialized message, ``str``
00626 :param numpy: numpy python module
00627 """
00628 try:
00629 if self.msg is None:
00630 self.msg = None
00631 end = 0
00632 start = end
00633 end += 4
00634 (length,) = _struct_I.unpack(str[start:end])
00635 start = end
00636 end += length
00637 if python3:
00638 self.return_response = str[start:end].decode('utf-8')
00639 else:
00640 self.return_response = str[start:end]
00641 start = end
00642 end += 4
00643 (length,) = _struct_I.unpack(str[start:end])
00644 self.msg = []
00645 for i in range(0, length):
00646 val1 = srs_object_database_msgs.msg.surf()
00647 start = end
00648 end += 4
00649 (val1.objectId,) = _struct_i.unpack(str[start:end])
00650 _v28 = val1.surf
00651 _v29 = _v28.header
00652 start = end
00653 end += 4
00654 (_v29.seq,) = _struct_I.unpack(str[start:end])
00655 _v30 = _v29.stamp
00656 _x = _v30
00657 start = end
00658 end += 8
00659 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00660 start = end
00661 end += 4
00662 (length,) = _struct_I.unpack(str[start:end])
00663 start = end
00664 end += length
00665 if python3:
00666 _v29.frame_id = str[start:end].decode('utf-8')
00667 else:
00668 _v29.frame_id = str[start:end]
00669 _x = _v28
00670 start = end
00671 end += 8
00672 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00673 start = end
00674 end += 4
00675 (length,) = _struct_I.unpack(str[start:end])
00676 _v28.fields = []
00677 for i in range(0, length):
00678 val3 = sensor_msgs.msg.PointField()
00679 start = end
00680 end += 4
00681 (length,) = _struct_I.unpack(str[start:end])
00682 start = end
00683 end += length
00684 if python3:
00685 val3.name = str[start:end].decode('utf-8')
00686 else:
00687 val3.name = str[start:end]
00688 _x = val3
00689 start = end
00690 end += 9
00691 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00692 _v28.fields.append(val3)
00693 _x = _v28
00694 start = end
00695 end += 9
00696 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
00697 _v28.is_bigendian = bool(_v28.is_bigendian)
00698 start = end
00699 end += 4
00700 (length,) = _struct_I.unpack(str[start:end])
00701 start = end
00702 end += length
00703 _v28.data = str[start:end]
00704 start = end
00705 end += 1
00706 (_v28.is_dense,) = _struct_B.unpack(str[start:end])
00707 _v28.is_dense = bool(_v28.is_dense)
00708 _v31 = val1.bounding_box
00709 _v32 = _v31.header
00710 start = end
00711 end += 4
00712 (_v32.seq,) = _struct_I.unpack(str[start:end])
00713 _v33 = _v32.stamp
00714 _x = _v33
00715 start = end
00716 end += 8
00717 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00718 start = end
00719 end += 4
00720 (length,) = _struct_I.unpack(str[start:end])
00721 start = end
00722 end += length
00723 if python3:
00724 _v32.frame_id = str[start:end].decode('utf-8')
00725 else:
00726 _v32.frame_id = str[start:end]
00727 _x = _v31
00728 start = end
00729 end += 8
00730 (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00731 start = end
00732 end += 4
00733 (length,) = _struct_I.unpack(str[start:end])
00734 _v31.fields = []
00735 for i in range(0, length):
00736 val3 = sensor_msgs.msg.PointField()
00737 start = end
00738 end += 4
00739 (length,) = _struct_I.unpack(str[start:end])
00740 start = end
00741 end += length
00742 if python3:
00743 val3.name = str[start:end].decode('utf-8')
00744 else:
00745 val3.name = str[start:end]
00746 _x = val3
00747 start = end
00748 end += 9
00749 (_x.offset, _x.datatype, _x.count,) = _struct_IBI.unpack(str[start:end])
00750 _v31.fields.append(val3)
00751 _x = _v31
00752 start = end
00753 end += 9
00754 (_x.is_bigendian, _x.point_step, _x.row_step,) = _struct_B2I.unpack(str[start:end])
00755 _v31.is_bigendian = bool(_v31.is_bigendian)
00756 start = end
00757 end += 4
00758 (length,) = _struct_I.unpack(str[start:end])
00759 start = end
00760 end += length
00761 _v31.data = str[start:end]
00762 start = end
00763 end += 1
00764 (_v31.is_dense,) = _struct_B.unpack(str[start:end])
00765 _v31.is_dense = bool(_v31.is_dense)
00766 _v34 = val1.coord_frame
00767 _v35 = _v34.position
00768 _x = _v35
00769 start = end
00770 end += 24
00771 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00772 _v36 = _v34.orientation
00773 _x = _v36
00774 start = end
00775 end += 32
00776 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00777 self.msg.append(val1)
00778 return self
00779 except struct.error as e:
00780 raise genpy.DeserializationError(e)
00781
00782 _struct_I = genpy.struct_I
00783 _struct_IBI = struct.Struct("<IBI")
00784 _struct_B = struct.Struct("<B")
00785 _struct_i = struct.Struct("<i")
00786 _struct_B2I = struct.Struct("<B2I")
00787 _struct_4d = struct.Struct("<4d")
00788 _struct_2I = struct.Struct("<2I")
00789 _struct_3d = struct.Struct("<3d")
00790 class GetSurf(object):
00791 _type = 'srs_object_database_msgs/GetSurf'
00792 _md5sum = '8a26dac6ca309ec59818b968ea146378'
00793 _request_class = GetSurfRequest
00794 _response_class = GetSurfResponse