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