text: # This Python file uses the following encoding: utf-8
  """autogenerated by genpy from plutodrone/PlutoMsgAP.msg. Do not edit."""
  import codecs
  import sys
  python3 = True if sys.hexversion > 0x03000000 else False
  import genpy
  import struct
  
  
  class PlutoMsgAP(genpy.Message):
    _md5sum = "9d14e97c50a8a33e16533e3af6806fc5"
    _type = "plutodrone/PlutoMsgAP"
    _has_header = False  # flag to mark the presence of a Header object
    _full_text = """int64 rcRoll
  int64 rcPitch
  int64 rcYaw
  int64 rcThrottle
  int64 plutoIndex
  int8 commandType
  """
    __slots__ = ['rcRoll','rcPitch','rcYaw','rcThrottle','plutoIndex','commandType']
    _slot_types = ['int64','int64','int64','int64','int64','int8']
  
    def __init__(self, *args, **kwds):
      """
      Constructor. Any message fields that are implicitly/explicitly
      set to None will be assigned a default value. The recommend
      use is keyword arguments as this is more robust to future message
      changes.  You cannot mix in-order arguments and keyword arguments.
  
      The available fields are:
         rcRoll,rcPitch,rcYaw,rcThrottle,plutoIndex,commandType
  
      :param args: complete set of field values, in .msg order
      :param kwds: use keyword arguments corresponding to message field names
      to set specific fields.
      """
      if args or kwds:
        super(PlutoMsgAP, self).__init__(*args, **kwds)
        # message fields cannot be None, assign default values for those that are
        if self.rcRoll is None:
          self.rcRoll = 0
        if self.rcPitch is None:
          self.rcPitch = 0
        if self.rcYaw is None:
          self.rcYaw = 0
        if self.rcThrottle is None:
          self.rcThrottle = 0
        if self.plutoIndex is None:
          self.plutoIndex = 0
        if self.commandType is None:
          self.commandType = 0
      else:
        self.rcRoll = 0
        self.rcPitch = 0
        self.rcYaw = 0
        self.rcThrottle = 0
        self.plutoIndex = 0
        self.commandType = 0
  
    def _get_types(self):
      """
      internal API method
      """
      return self._slot_types
  
    def serialize(self, buff):
      """
      serialize message into buffer
      :param buff: buffer, ``StringIO``
      """
      try:
        _x = self
        buff.write(_get_struct_5qb().pack(_x.rcRoll, _x.rcPitch, _x.rcYaw, _x.rcThrottle, _x.plutoIndex, _x.commandType))
      except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(locals().get('_x', self)))))
      except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(locals().get('_x', self)))))
  
    def deserialize(self, str):
      """
      unpack serialized message in str into this message instance
      :param str: byte array of serialized message, ``str``
      """
      codecs.lookup_error("rosmsg").msg_type = self._type
      try:
        end = 0
        _x = self
        start = end
        end += 41
        (_x.rcRoll, _x.rcPitch, _x.rcYaw, _x.rcThrottle, _x.plutoIndex, _x.commandType,) = _get_struct_5qb().unpack(str[start:end])
        return self
      except struct.error as e:
        raise genpy.DeserializationError(e)  # most likely buffer underfill
  
  
    def serialize_numpy(self, buff, numpy):
      """
      serialize message with numpy array types into buffer
      :param buff: buffer, ``StringIO``
      :param numpy: numpy python module
      """
      try:
        _x = self
        buff.write(_get_struct_5qb().pack(_x.rcRoll, _x.rcPitch, _x.rcYaw, _x.rcThrottle, _x.plutoIndex, _x.commandType))
      except struct.error as se: self._check_types(struct.error("%s: '%s' when writing '%s'" % (type(se), str(se), str(locals().get('_x', self)))))
      except TypeError as te: self._check_types(ValueError("%s: '%s' when writing '%s'" % (type(te), str(te), str(locals().get('_x', self)))))
  
    def deserialize_numpy(self, str, numpy):
      """
      unpack serialized message in str into this message instance using numpy for array types
      :param str: byte array of serialized message, ``str``
      :param numpy: numpy python module
      """
      codecs.lookup_error("rosmsg").msg_type = self._type
      try:
        end = 0
        _x = self
        start = end
        end += 41
        (_x.rcRoll, _x.rcPitch, _x.rcYaw, _x.rcThrottle, _x.plutoIndex, _x.commandType,) = _get_struct_5qb().unpack(str[start:end])
        return self
      except struct.error as e:
        raise genpy.DeserializationError(e)  # most likely buffer underfill
  
  _struct_I = genpy.struct_I
  def _get_struct_I():
      global _struct_I
      return _struct_I
  _struct_5qb = None
  def _get_struct_5qb():
      global _struct_5qb
      if _struct_5qb is None:
          _struct_5qb = struct.Struct("<5qb")
      return _struct_5qb
  