_DistanceTiming.py
Go to the documentation of this file.
00001 """autogenerated by genpy from clearpath_base/DistanceTiming.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 
00009 class DistanceTiming(genpy.Message):
00010   _md5sum = "5cd97954696edc5d59dd80cb0218765a"
00011   _type = "clearpath_base/DistanceTiming"
00012   _has_header = True #flag to mark the presence of a Header object
00013   _full_text = """Header header
00014 float64[] distances
00015 ================================================================================
00016 MSG: std_msgs/Header
00017 # Standard metadata for higher-level stamped data types.
00018 # This is generally used to communicate timestamped data 
00019 # in a particular coordinate frame.
00020 # 
00021 # sequence ID: consecutively increasing ID 
00022 uint32 seq
00023 #Two-integer timestamp that is expressed as:
00024 # * stamp.secs: seconds (stamp_secs) since epoch
00025 # * stamp.nsecs: nanoseconds since stamp_secs
00026 # time-handling sugar is provided by the client library
00027 time stamp
00028 #Frame this data is associated with
00029 # 0: no frame
00030 # 1: global frame
00031 string frame_id
00032 
00033 """
00034   __slots__ = ['header','distances']
00035   _slot_types = ['std_msgs/Header','float64[]']
00036 
00037   def __init__(self, *args, **kwds):
00038     """
00039     Constructor. Any message fields that are implicitly/explicitly
00040     set to None will be assigned a default value. The recommend
00041     use is keyword arguments as this is more robust to future message
00042     changes.  You cannot mix in-order arguments and keyword arguments.
00043 
00044     The available fields are:
00045        header,distances
00046 
00047     :param args: complete set of field values, in .msg order
00048     :param kwds: use keyword arguments corresponding to message field names
00049     to set specific fields.
00050     """
00051     if args or kwds:
00052       super(DistanceTiming, self).__init__(*args, **kwds)
00053       #message fields cannot be None, assign default values for those that are
00054       if self.header is None:
00055         self.header = std_msgs.msg.Header()
00056       if self.distances is None:
00057         self.distances = []
00058     else:
00059       self.header = std_msgs.msg.Header()
00060       self.distances = []
00061 
00062   def _get_types(self):
00063     """
00064     internal API method
00065     """
00066     return self._slot_types
00067 
00068   def serialize(self, buff):
00069     """
00070     serialize message into buffer
00071     :param buff: buffer, ``StringIO``
00072     """
00073     try:
00074       _x = self
00075       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00076       _x = self.header.frame_id
00077       length = len(_x)
00078       if python3 or type(_x) == unicode:
00079         _x = _x.encode('utf-8')
00080         length = len(_x)
00081       buff.write(struct.pack('<I%ss'%length, length, _x))
00082       length = len(self.distances)
00083       buff.write(_struct_I.pack(length))
00084       pattern = '<%sd'%length
00085       buff.write(struct.pack(pattern, *self.distances))
00086     except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00087     except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00088 
00089   def deserialize(self, str):
00090     """
00091     unpack serialized message in str into this message instance
00092     :param str: byte array of serialized message, ``str``
00093     """
00094     try:
00095       if self.header is None:
00096         self.header = std_msgs.msg.Header()
00097       end = 0
00098       _x = self
00099       start = end
00100       end += 12
00101       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00102       start = end
00103       end += 4
00104       (length,) = _struct_I.unpack(str[start:end])
00105       start = end
00106       end += length
00107       if python3:
00108         self.header.frame_id = str[start:end].decode('utf-8')
00109       else:
00110         self.header.frame_id = str[start:end]
00111       start = end
00112       end += 4
00113       (length,) = _struct_I.unpack(str[start:end])
00114       pattern = '<%sd'%length
00115       start = end
00116       end += struct.calcsize(pattern)
00117       self.distances = struct.unpack(pattern, str[start:end])
00118       return self
00119     except struct.error as e:
00120       raise genpy.DeserializationError(e) #most likely buffer underfill
00121 
00122 
00123   def serialize_numpy(self, buff, numpy):
00124     """
00125     serialize message with numpy array types into buffer
00126     :param buff: buffer, ``StringIO``
00127     :param numpy: numpy python module
00128     """
00129     try:
00130       _x = self
00131       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00132       _x = self.header.frame_id
00133       length = len(_x)
00134       if python3 or type(_x) == unicode:
00135         _x = _x.encode('utf-8')
00136         length = len(_x)
00137       buff.write(struct.pack('<I%ss'%length, length, _x))
00138       length = len(self.distances)
00139       buff.write(_struct_I.pack(length))
00140       pattern = '<%sd'%length
00141       buff.write(self.distances.tostring())
00142     except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(_x))))
00143     except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(_x))))
00144 
00145   def deserialize_numpy(self, str, numpy):
00146     """
00147     unpack serialized message in str into this message instance using numpy for array types
00148     :param str: byte array of serialized message, ``str``
00149     :param numpy: numpy python module
00150     """
00151     try:
00152       if self.header is None:
00153         self.header = std_msgs.msg.Header()
00154       end = 0
00155       _x = self
00156       start = end
00157       end += 12
00158       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00159       start = end
00160       end += 4
00161       (length,) = _struct_I.unpack(str[start:end])
00162       start = end
00163       end += length
00164       if python3:
00165         self.header.frame_id = str[start:end].decode('utf-8')
00166       else:
00167         self.header.frame_id = str[start:end]
00168       start = end
00169       end += 4
00170       (length,) = _struct_I.unpack(str[start:end])
00171       pattern = '<%sd'%length
00172       start = end
00173       end += struct.calcsize(pattern)
00174       self.distances = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
00175       return self
00176     except struct.error as e:
00177       raise genpy.DeserializationError(e) #most likely buffer underfill
00178 
00179 _struct_I = genpy.struct_I
00180 _struct_3I = struct.Struct("<3I")


clearpath_base
Author(s): Mike Purvis
autogenerated on Sun Oct 5 2014 22:52:07