QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
RTCMMAVLinkPacket.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstdint>
4
5
#include <QtCore/QByteArray>
6
#include <QtCore/QByteArrayView>
7
#include <QtCore/QList>
8
9
struct
GPSRTCMPacket
10
{
11
uint8_t
flags
= 0;
12
QByteArray
data
;
13
};
14
16
class
RTCMMAVLinkPacket
17
{
18
public
:
19
static
constexpr
qsizetype
kFragmentLen
= 180;
20
static
constexpr
qsizetype
kMaxFragments
= 4;
21
static
constexpr
qsizetype
kMaxAssembledLen
=
kFragmentLen
*
kMaxFragments
;
22
23
struct
[[nodiscard]]
PackResult
24
{
25
QList<GPSRTCMPacket>
packets
;
26
uint8_t nextSequenceId = 0;
27
};
28
29
static
PackResult
pack
(QByteArrayView data, uint8_t sequenceId);
30
31
private
:
32
static
uint8_t _makeFlags(
bool
fragmented, uint8_t fragmentId, uint8_t sequenceId);
33
};
RTCMMAVLinkPacket
Pure GPS_RTCM_DATA fragmentation; no vehicle, link, or application dependencies.
Definition
RTCMMAVLinkPacket.h:17
RTCMMAVLinkPacket::kMaxAssembledLen
static constexpr qsizetype kMaxAssembledLen
Definition
RTCMMAVLinkPacket.h:21
RTCMMAVLinkPacket::pack
static PackResult pack(QByteArrayView data, uint8_t sequenceId)
Definition
RTCMMAVLinkPacket.cc:16
RTCMMAVLinkPacket::kMaxFragments
static constexpr qsizetype kMaxFragments
Definition
RTCMMAVLinkPacket.h:20
RTCMMAVLinkPacket::kFragmentLen
static constexpr qsizetype kFragmentLen
Definition
RTCMMAVLinkPacket.h:19
GPSRTCMPacket
Definition
RTCMMAVLinkPacket.h:10
GPSRTCMPacket::data
QByteArray data
Definition
RTCMMAVLinkPacket.h:12
GPSRTCMPacket::flags
uint8_t flags
Definition
RTCMMAVLinkPacket.h:11
RTCMMAVLinkPacket::PackResult
Definition
RTCMMAVLinkPacket.h:24
RTCMMAVLinkPacket::PackResult::packets
QList< GPSRTCMPacket > packets
Definition
RTCMMAVLinkPacket.h:25
src
GPS
Corrections
RTCMMAVLinkPacket.h
Generated by
1.9.8