00001 """autogenerated by genpy from rve_msgs/Matrix4.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 Matrix4(genpy.Message):
00009 _md5sum = "a50ec1c8c2829b160e4e35c9b42372f7"
00010 _type = "rve_msgs/Matrix4"
00011 _has_header = False
00012 _full_text = """# pack in row-major order: m[row*4 + col] = value
00013 float32[16] m
00014
00015 """
00016 __slots__ = ['m']
00017 _slot_types = ['float32[16]']
00018
00019 def __init__(self, *args, **kwds):
00020 """
00021 Constructor. Any message fields that are implicitly/explicitly
00022 set to None will be assigned a default value. The recommend
00023 use is keyword arguments as this is more robust to future message
00024 changes. You cannot mix in-order arguments and keyword arguments.
00025
00026 The available fields are:
00027 m
00028
00029 :param args: complete set of field values, in .msg order
00030 :param kwds: use keyword arguments corresponding to message field names
00031 to set specific fields.
00032 """
00033 if args or kwds:
00034 super(Matrix4, self).__init__(*args, **kwds)
00035
00036 if self.m is None:
00037 self.m = [0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.]
00038 else:
00039 self.m = [0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.]
00040
00041 def _get_types(self):
00042 """
00043 internal API method
00044 """
00045 return self._slot_types
00046
00047 def serialize(self, buff):
00048 """
00049 serialize message into buffer
00050 :param buff: buffer, ``StringIO``
00051 """
00052 try:
00053 buff.write(_struct_16f.pack(*self.m))
00054 except struct.error as se: self._check_types(se)
00055 except TypeError as te: self._check_types(te)
00056
00057 def deserialize(self, str):
00058 """
00059 unpack serialized message in str into this message instance
00060 :param str: byte array of serialized message, ``str``
00061 """
00062 try:
00063 end = 0
00064 start = end
00065 end += 64
00066 self.m = _struct_16f.unpack(str[start:end])
00067 return self
00068 except struct.error as e:
00069 raise genpy.DeserializationError(e)
00070
00071
00072 def serialize_numpy(self, buff, numpy):
00073 """
00074 serialize message with numpy array types into buffer
00075 :param buff: buffer, ``StringIO``
00076 :param numpy: numpy python module
00077 """
00078 try:
00079 buff.write(self.m.tostring())
00080 except struct.error as se: self._check_types(se)
00081 except TypeError as te: self._check_types(te)
00082
00083 def deserialize_numpy(self, str, numpy):
00084 """
00085 unpack serialized message in str into this message instance using numpy for array types
00086 :param str: byte array of serialized message, ``str``
00087 :param numpy: numpy python module
00088 """
00089 try:
00090 end = 0
00091 start = end
00092 end += 64
00093 self.m = numpy.frombuffer(str[start:end], dtype=numpy.float32, count=16)
00094 return self
00095 except struct.error as e:
00096 raise genpy.DeserializationError(e)
00097
00098 _struct_I = genpy.struct_I
00099 _struct_16f = struct.Struct("<16f")