3#include <QtCore/QByteArray>
4#include <QtCore/QObject>
7#include <QtCore/QString>
10#include "MAVLinkEnums.h"
30 static QString
getName() {
return QStringLiteral(
"MAVLink protocol"); }
62 void _vehicleCountChanged();
77 void _saveTelemetryLog(
const QString& tempLogfile);
78 bool _checkTelemetrySavePath();
80 QFile* _tempLogFile =
nullptr;
82 bool _logSuspendError =
false;
83 bool _logSuspendReplay =
false;
84 bool _vehicleWasArmed =
false;
95 bool _initialized =
false;
97 static constexpr const char* _tempLogFileTemplate =
"FlightDataXXXXXX";
98 static constexpr const char* _logFileExtension =
"mavlink";
100 static constexpr uint8_t kMaxCompId = MAV_COMPONENT_ENUM_END - 1;
std::shared_ptr< LinkInterface > SharedLinkInterfacePtr
#define MAVLINK_COMM_NUM_BUFFERS
struct __mavlink_message mavlink_message_t
The link interface defines the interface for all links used to communicate with the ground station ap...
MAVLink micro air vehicle protocol reference implementation.
void receiveBytes(LinkInterface *link, const QByteArray &data)
void checkForLostLogFiles()
static int getComponentId()
void mavlinkMessageStatus(int sysid, uint64_t totalSent, uint64_t totalReceived, uint64_t totalLoss, float lossPercent)
void messageReceived(LinkInterface *link, const mavlink_message_t &message)
void vehicleHeartbeatInfo(LinkInterface *link, int vehicleId, int componentId, int vehicleFirmwareType, int vehicleType)
void resetSequenceTracking(LinkInterface *link)
Reset sequence tracking so signing transitions don't inflate loss counters.
void logSentBytes(const LinkInterface *link, const QByteArray &data)
static MAVLinkProtocol * instance()
void resetMetadataForLink(LinkInterface *link)
void suspendLogForReplay(bool suspend)
static void deleteTempLogFiles()