OpenDroneIdMessagePack.parse constructor

OpenDroneIdMessagePack.parse(
  1. ByteData data_
)

Implementation

factory OpenDroneIdMessagePack.parse(ByteData data_) {
  if (data_.lengthInBytes < OpenDroneIdMessagePack.mavlinkEncodedLength) {
    var len =
        OpenDroneIdMessagePack.mavlinkEncodedLength - data_.lengthInBytes;
    var d = data_.buffer.asUint8List() + List<int>.filled(len, 0);
    data_ = Uint8List.fromList(d).buffer.asByteData();
  }
  var targetSystem = data_.getUint8(0);
  var targetComponent = data_.getUint8(1);
  var idOrMac = MavlinkMessage.asUint8List(data_, 2, 20);
  var singleMessageSize = data_.getUint8(22);
  var msgPackSize = data_.getUint8(23);
  var messages = MavlinkMessage.asUint8List(data_, 24, 225);

  return OpenDroneIdMessagePack(
      targetSystem: targetSystem,
      targetComponent: targetComponent,
      idOrMac: idOrMac,
      singleMessageSize: singleMessageSize,
      msgPackSize: msgPackSize,
      messages: messages);
}