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