00001 """autogenerated by genmsg_py from MapID.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005
00006 class MapID(roslib.message.Message):
00007 _md5sum = "19289d0a831d333d542743932b12dadc"
00008 _type = "art_msgs/MapID"
00009 _has_header = False
00010 _full_text = """# Road map identifier for segments, lanes and way-points.
00011 # $Id: MapID.msg 614 2010-09-24 15:08:46Z jack.oquin $
00012
00013 uint16 NULL_ID = 65535
00014
00015 uint16 seg # segment ID
00016 uint16 lane # lane ID
00017 uint16 pt # way-point ID
00018
00019 """
00020
00021 NULL_ID = 65535
00022
00023 __slots__ = ['seg','lane','pt']
00024 _slot_types = ['uint16','uint16','uint16']
00025
00026 def __init__(self, *args, **kwds):
00027 """
00028 Constructor. Any message fields that are implicitly/explicitly
00029 set to None will be assigned a default value. The recommend
00030 use is keyword arguments as this is more robust to future message
00031 changes. You cannot mix in-order arguments and keyword arguments.
00032
00033 The available fields are:
00034 seg,lane,pt
00035
00036 @param args: complete set of field values, in .msg order
00037 @param kwds: use keyword arguments corresponding to message field names
00038 to set specific fields.
00039 """
00040 if args or kwds:
00041 super(MapID, self).__init__(*args, **kwds)
00042
00043 if self.seg is None:
00044 self.seg = 0
00045 if self.lane is None:
00046 self.lane = 0
00047 if self.pt is None:
00048 self.pt = 0
00049 else:
00050 self.seg = 0
00051 self.lane = 0
00052 self.pt = 0
00053
00054 def _get_types(self):
00055 """
00056 internal API method
00057 """
00058 return self._slot_types
00059
00060 def serialize(self, buff):
00061 """
00062 serialize message into buffer
00063 @param buff: buffer
00064 @type buff: StringIO
00065 """
00066 try:
00067 _x = self
00068 buff.write(_struct_3H.pack(_x.seg, _x.lane, _x.pt))
00069 except struct.error, se: self._check_types(se)
00070 except TypeError, te: self._check_types(te)
00071
00072 def deserialize(self, str):
00073 """
00074 unpack serialized message in str into this message instance
00075 @param str: byte array of serialized message
00076 @type str: str
00077 """
00078 try:
00079 end = 0
00080 _x = self
00081 start = end
00082 end += 6
00083 (_x.seg, _x.lane, _x.pt,) = _struct_3H.unpack(str[start:end])
00084 return self
00085 except struct.error, e:
00086 raise roslib.message.DeserializationError(e)
00087
00088
00089 def serialize_numpy(self, buff, numpy):
00090 """
00091 serialize message with numpy array types into buffer
00092 @param buff: buffer
00093 @type buff: StringIO
00094 @param numpy: numpy python module
00095 @type numpy module
00096 """
00097 try:
00098 _x = self
00099 buff.write(_struct_3H.pack(_x.seg, _x.lane, _x.pt))
00100 except struct.error, se: self._check_types(se)
00101 except TypeError, te: self._check_types(te)
00102
00103 def deserialize_numpy(self, str, numpy):
00104 """
00105 unpack serialized message in str into this message instance using numpy for array types
00106 @param str: byte array of serialized message
00107 @type str: str
00108 @param numpy: numpy python module
00109 @type numpy: module
00110 """
00111 try:
00112 end = 0
00113 _x = self
00114 start = end
00115 end += 6
00116 (_x.seg, _x.lane, _x.pt,) = _struct_3H.unpack(str[start:end])
00117 return self
00118 except struct.error, e:
00119 raise roslib.message.DeserializationError(e)
00120
00121 _struct_I = roslib.message.struct_I
00122 _struct_3H = struct.Struct("<3H")