00001 """autogenerated by genpy from coverage_3d_tools/CleaningPathSrvRequest.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 CleaningPathSrvRequest(genpy.Message):
00009 _md5sum = "d41d8cd98f00b204e9800998ecf8427e"
00010 _type = "coverage_3d_tools/CleaningPathSrvRequest"
00011 _has_header = False
00012 _full_text = """
00013 """
00014 __slots__ = []
00015 _slot_types = []
00016
00017 def __init__(self, *args, **kwds):
00018 """
00019 Constructor. Any message fields that are implicitly/explicitly
00020 set to None will be assigned a default value. The recommend
00021 use is keyword arguments as this is more robust to future message
00022 changes. You cannot mix in-order arguments and keyword arguments.
00023
00024 The available fields are:
00025
00026
00027 :param args: complete set of field values, in .msg order
00028 :param kwds: use keyword arguments corresponding to message field names
00029 to set specific fields.
00030 """
00031 if args or kwds:
00032 super(CleaningPathSrvRequest, self).__init__(*args, **kwds)
00033
00034 def _get_types(self):
00035 """
00036 internal API method
00037 """
00038 return self._slot_types
00039
00040 def serialize(self, buff):
00041 """
00042 serialize message into buffer
00043 :param buff: buffer, ``StringIO``
00044 """
00045 try:
00046 pass
00047 except struct.error as se: self._check_types(se)
00048 except TypeError as te: self._check_types(te)
00049
00050 def deserialize(self, str):
00051 """
00052 unpack serialized message in str into this message instance
00053 :param str: byte array of serialized message, ``str``
00054 """
00055 try:
00056 end = 0
00057 return self
00058 except struct.error as e:
00059 raise genpy.DeserializationError(e)
00060
00061
00062 def serialize_numpy(self, buff, numpy):
00063 """
00064 serialize message with numpy array types into buffer
00065 :param buff: buffer, ``StringIO``
00066 :param numpy: numpy python module
00067 """
00068 try:
00069 pass
00070 except struct.error as se: self._check_types(se)
00071 except TypeError as te: self._check_types(te)
00072
00073 def deserialize_numpy(self, str, numpy):
00074 """
00075 unpack serialized message in str into this message instance using numpy for array types
00076 :param str: byte array of serialized message, ``str``
00077 :param numpy: numpy python module
00078 """
00079 try:
00080 end = 0
00081 return self
00082 except struct.error as e:
00083 raise genpy.DeserializationError(e)
00084
00085 _struct_I = genpy.struct_I
00086 """autogenerated by genpy from coverage_3d_tools/CleaningPathSrvResponse.msg. Do not edit."""
00087 import sys
00088 python3 = True if sys.hexversion > 0x03000000 else False
00089 import genpy
00090 import struct
00091
00092 import coverage_3d_tools.msg
00093 import geometry_msgs.msg
00094 import std_msgs.msg
00095
00096 class CleaningPathSrvResponse(genpy.Message):
00097 _md5sum = "76f238a8f00cdd5bbbb10f68af78a35a"
00098 _type = "coverage_3d_tools/CleaningPathSrvResponse"
00099 _has_header = False
00100 _full_text = """geometry_msgs/PoseArray coverage_path
00101 coverage_3d_tools/CleanPathReachability[] robot_path
00102
00103
00104 ================================================================================
00105 MSG: geometry_msgs/PoseArray
00106 # An array of poses with a header for global reference.
00107
00108 Header header
00109
00110 Pose[] poses
00111
00112 ================================================================================
00113 MSG: std_msgs/Header
00114 # Standard metadata for higher-level stamped data types.
00115 # This is generally used to communicate timestamped data
00116 # in a particular coordinate frame.
00117 #
00118 # sequence ID: consecutively increasing ID
00119 uint32 seq
00120 #Two-integer timestamp that is expressed as:
00121 # * stamp.secs: seconds (stamp_secs) since epoch
00122 # * stamp.nsecs: nanoseconds since stamp_secs
00123 # time-handling sugar is provided by the client library
00124 time stamp
00125 #Frame this data is associated with
00126 # 0: no frame
00127 # 1: global frame
00128 string frame_id
00129
00130 ================================================================================
00131 MSG: geometry_msgs/Pose
00132 # A representation of pose in free space, composed of postion and orientation.
00133 Point position
00134 Quaternion orientation
00135
00136 ================================================================================
00137 MSG: geometry_msgs/Point
00138 # This contains the position of a point in free space
00139 float64 x
00140 float64 y
00141 float64 z
00142
00143 ================================================================================
00144 MSG: geometry_msgs/Quaternion
00145 # This represents an orientation in free space in quaternion form.
00146
00147 float64 x
00148 float64 y
00149 float64 z
00150 float64 w
00151
00152 ================================================================================
00153 MSG: coverage_3d_tools/CleanPathReachability
00154 geometry_msgs/PoseStamped pose
00155 uint32[] reachability
00156 ================================================================================
00157 MSG: geometry_msgs/PoseStamped
00158 # A Pose with reference coordinate frame and timestamp
00159 Header header
00160 Pose pose
00161
00162 """
00163 __slots__ = ['coverage_path','robot_path']
00164 _slot_types = ['geometry_msgs/PoseArray','coverage_3d_tools/CleanPathReachability[]']
00165
00166 def __init__(self, *args, **kwds):
00167 """
00168 Constructor. Any message fields that are implicitly/explicitly
00169 set to None will be assigned a default value. The recommend
00170 use is keyword arguments as this is more robust to future message
00171 changes. You cannot mix in-order arguments and keyword arguments.
00172
00173 The available fields are:
00174 coverage_path,robot_path
00175
00176 :param args: complete set of field values, in .msg order
00177 :param kwds: use keyword arguments corresponding to message field names
00178 to set specific fields.
00179 """
00180 if args or kwds:
00181 super(CleaningPathSrvResponse, self).__init__(*args, **kwds)
00182
00183 if self.coverage_path is None:
00184 self.coverage_path = geometry_msgs.msg.PoseArray()
00185 if self.robot_path is None:
00186 self.robot_path = []
00187 else:
00188 self.coverage_path = geometry_msgs.msg.PoseArray()
00189 self.robot_path = []
00190
00191 def _get_types(self):
00192 """
00193 internal API method
00194 """
00195 return self._slot_types
00196
00197 def serialize(self, buff):
00198 """
00199 serialize message into buffer
00200 :param buff: buffer, ``StringIO``
00201 """
00202 try:
00203 _x = self
00204 buff.write(_struct_3I.pack(_x.coverage_path.header.seq, _x.coverage_path.header.stamp.secs, _x.coverage_path.header.stamp.nsecs))
00205 _x = self.coverage_path.header.frame_id
00206 length = len(_x)
00207 if python3 or type(_x) == unicode:
00208 _x = _x.encode('utf-8')
00209 length = len(_x)
00210 buff.write(struct.pack('<I%ss'%length, length, _x))
00211 length = len(self.coverage_path.poses)
00212 buff.write(_struct_I.pack(length))
00213 for val1 in self.coverage_path.poses:
00214 _v1 = val1.position
00215 _x = _v1
00216 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00217 _v2 = val1.orientation
00218 _x = _v2
00219 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00220 length = len(self.robot_path)
00221 buff.write(_struct_I.pack(length))
00222 for val1 in self.robot_path:
00223 _v3 = val1.pose
00224 _v4 = _v3.header
00225 buff.write(_struct_I.pack(_v4.seq))
00226 _v5 = _v4.stamp
00227 _x = _v5
00228 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00229 _x = _v4.frame_id
00230 length = len(_x)
00231 if python3 or type(_x) == unicode:
00232 _x = _x.encode('utf-8')
00233 length = len(_x)
00234 buff.write(struct.pack('<I%ss'%length, length, _x))
00235 _v6 = _v3.pose
00236 _v7 = _v6.position
00237 _x = _v7
00238 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00239 _v8 = _v6.orientation
00240 _x = _v8
00241 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00242 length = len(val1.reachability)
00243 buff.write(_struct_I.pack(length))
00244 pattern = '<%sI'%length
00245 buff.write(struct.pack(pattern, *val1.reachability))
00246 except struct.error as se: self._check_types(se)
00247 except TypeError as te: self._check_types(te)
00248
00249 def deserialize(self, str):
00250 """
00251 unpack serialized message in str into this message instance
00252 :param str: byte array of serialized message, ``str``
00253 """
00254 try:
00255 if self.coverage_path is None:
00256 self.coverage_path = geometry_msgs.msg.PoseArray()
00257 if self.robot_path is None:
00258 self.robot_path = None
00259 end = 0
00260 _x = self
00261 start = end
00262 end += 12
00263 (_x.coverage_path.header.seq, _x.coverage_path.header.stamp.secs, _x.coverage_path.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00264 start = end
00265 end += 4
00266 (length,) = _struct_I.unpack(str[start:end])
00267 start = end
00268 end += length
00269 if python3:
00270 self.coverage_path.header.frame_id = str[start:end].decode('utf-8')
00271 else:
00272 self.coverage_path.header.frame_id = str[start:end]
00273 start = end
00274 end += 4
00275 (length,) = _struct_I.unpack(str[start:end])
00276 self.coverage_path.poses = []
00277 for i in range(0, length):
00278 val1 = geometry_msgs.msg.Pose()
00279 _v9 = val1.position
00280 _x = _v9
00281 start = end
00282 end += 24
00283 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00284 _v10 = val1.orientation
00285 _x = _v10
00286 start = end
00287 end += 32
00288 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00289 self.coverage_path.poses.append(val1)
00290 start = end
00291 end += 4
00292 (length,) = _struct_I.unpack(str[start:end])
00293 self.robot_path = []
00294 for i in range(0, length):
00295 val1 = coverage_3d_tools.msg.CleanPathReachability()
00296 _v11 = val1.pose
00297 _v12 = _v11.header
00298 start = end
00299 end += 4
00300 (_v12.seq,) = _struct_I.unpack(str[start:end])
00301 _v13 = _v12.stamp
00302 _x = _v13
00303 start = end
00304 end += 8
00305 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00306 start = end
00307 end += 4
00308 (length,) = _struct_I.unpack(str[start:end])
00309 start = end
00310 end += length
00311 if python3:
00312 _v12.frame_id = str[start:end].decode('utf-8')
00313 else:
00314 _v12.frame_id = str[start:end]
00315 _v14 = _v11.pose
00316 _v15 = _v14.position
00317 _x = _v15
00318 start = end
00319 end += 24
00320 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00321 _v16 = _v14.orientation
00322 _x = _v16
00323 start = end
00324 end += 32
00325 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00326 start = end
00327 end += 4
00328 (length,) = _struct_I.unpack(str[start:end])
00329 pattern = '<%sI'%length
00330 start = end
00331 end += struct.calcsize(pattern)
00332 val1.reachability = struct.unpack(pattern, str[start:end])
00333 self.robot_path.append(val1)
00334 return self
00335 except struct.error as e:
00336 raise genpy.DeserializationError(e)
00337
00338
00339 def serialize_numpy(self, buff, numpy):
00340 """
00341 serialize message with numpy array types into buffer
00342 :param buff: buffer, ``StringIO``
00343 :param numpy: numpy python module
00344 """
00345 try:
00346 _x = self
00347 buff.write(_struct_3I.pack(_x.coverage_path.header.seq, _x.coverage_path.header.stamp.secs, _x.coverage_path.header.stamp.nsecs))
00348 _x = self.coverage_path.header.frame_id
00349 length = len(_x)
00350 if python3 or type(_x) == unicode:
00351 _x = _x.encode('utf-8')
00352 length = len(_x)
00353 buff.write(struct.pack('<I%ss'%length, length, _x))
00354 length = len(self.coverage_path.poses)
00355 buff.write(_struct_I.pack(length))
00356 for val1 in self.coverage_path.poses:
00357 _v17 = val1.position
00358 _x = _v17
00359 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00360 _v18 = val1.orientation
00361 _x = _v18
00362 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00363 length = len(self.robot_path)
00364 buff.write(_struct_I.pack(length))
00365 for val1 in self.robot_path:
00366 _v19 = val1.pose
00367 _v20 = _v19.header
00368 buff.write(_struct_I.pack(_v20.seq))
00369 _v21 = _v20.stamp
00370 _x = _v21
00371 buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00372 _x = _v20.frame_id
00373 length = len(_x)
00374 if python3 or type(_x) == unicode:
00375 _x = _x.encode('utf-8')
00376 length = len(_x)
00377 buff.write(struct.pack('<I%ss'%length, length, _x))
00378 _v22 = _v19.pose
00379 _v23 = _v22.position
00380 _x = _v23
00381 buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00382 _v24 = _v22.orientation
00383 _x = _v24
00384 buff.write(_struct_4d.pack(_x.x, _x.y, _x.z, _x.w))
00385 length = len(val1.reachability)
00386 buff.write(_struct_I.pack(length))
00387 pattern = '<%sI'%length
00388 buff.write(val1.reachability.tostring())
00389 except struct.error as se: self._check_types(se)
00390 except TypeError as te: self._check_types(te)
00391
00392 def deserialize_numpy(self, str, numpy):
00393 """
00394 unpack serialized message in str into this message instance using numpy for array types
00395 :param str: byte array of serialized message, ``str``
00396 :param numpy: numpy python module
00397 """
00398 try:
00399 if self.coverage_path is None:
00400 self.coverage_path = geometry_msgs.msg.PoseArray()
00401 if self.robot_path is None:
00402 self.robot_path = None
00403 end = 0
00404 _x = self
00405 start = end
00406 end += 12
00407 (_x.coverage_path.header.seq, _x.coverage_path.header.stamp.secs, _x.coverage_path.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00408 start = end
00409 end += 4
00410 (length,) = _struct_I.unpack(str[start:end])
00411 start = end
00412 end += length
00413 if python3:
00414 self.coverage_path.header.frame_id = str[start:end].decode('utf-8')
00415 else:
00416 self.coverage_path.header.frame_id = str[start:end]
00417 start = end
00418 end += 4
00419 (length,) = _struct_I.unpack(str[start:end])
00420 self.coverage_path.poses = []
00421 for i in range(0, length):
00422 val1 = geometry_msgs.msg.Pose()
00423 _v25 = val1.position
00424 _x = _v25
00425 start = end
00426 end += 24
00427 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00428 _v26 = val1.orientation
00429 _x = _v26
00430 start = end
00431 end += 32
00432 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00433 self.coverage_path.poses.append(val1)
00434 start = end
00435 end += 4
00436 (length,) = _struct_I.unpack(str[start:end])
00437 self.robot_path = []
00438 for i in range(0, length):
00439 val1 = coverage_3d_tools.msg.CleanPathReachability()
00440 _v27 = val1.pose
00441 _v28 = _v27.header
00442 start = end
00443 end += 4
00444 (_v28.seq,) = _struct_I.unpack(str[start:end])
00445 _v29 = _v28.stamp
00446 _x = _v29
00447 start = end
00448 end += 8
00449 (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00450 start = end
00451 end += 4
00452 (length,) = _struct_I.unpack(str[start:end])
00453 start = end
00454 end += length
00455 if python3:
00456 _v28.frame_id = str[start:end].decode('utf-8')
00457 else:
00458 _v28.frame_id = str[start:end]
00459 _v30 = _v27.pose
00460 _v31 = _v30.position
00461 _x = _v31
00462 start = end
00463 end += 24
00464 (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00465 _v32 = _v30.orientation
00466 _x = _v32
00467 start = end
00468 end += 32
00469 (_x.x, _x.y, _x.z, _x.w,) = _struct_4d.unpack(str[start:end])
00470 start = end
00471 end += 4
00472 (length,) = _struct_I.unpack(str[start:end])
00473 pattern = '<%sI'%length
00474 start = end
00475 end += struct.calcsize(pattern)
00476 val1.reachability = numpy.frombuffer(str[start:end], dtype=numpy.uint32, count=length)
00477 self.robot_path.append(val1)
00478 return self
00479 except struct.error as e:
00480 raise genpy.DeserializationError(e)
00481
00482 _struct_I = genpy.struct_I
00483 _struct_3I = struct.Struct("<3I")
00484 _struct_4d = struct.Struct("<4d")
00485 _struct_2I = struct.Struct("<2I")
00486 _struct_3d = struct.Struct("<3d")
00487 class CleaningPathSrv(object):
00488 _type = 'coverage_3d_tools/CleaningPathSrv'
00489 _md5sum = '76f238a8f00cdd5bbbb10f68af78a35a'
00490 _request_class = CleaningPathSrvRequest
00491 _response_class = CleaningPathSrvResponse