QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
VehicleGPSFactGroup.h
Go to the documentation of this file.
1#pragma once
2
3#include "FactGroup.h"
4
6{
7 Q_OBJECT
8 Q_PROPERTY(Fact *lat READ lat CONSTANT)
9 Q_PROPERTY(Fact *lon READ lon CONSTANT)
10 Q_PROPERTY(Fact *mgrs READ mgrs CONSTANT)
11 Q_PROPERTY(Fact *hdop READ hdop CONSTANT)
12 Q_PROPERTY(Fact *vdop READ vdop CONSTANT)
13 Q_PROPERTY(Fact *courseOverGround READ courseOverGround CONSTANT)
14 Q_PROPERTY(Fact *yaw READ yaw CONSTANT)
15 Q_PROPERTY(Fact *count READ count CONSTANT)
16 Q_PROPERTY(Fact *lock READ lock CONSTANT)
17 Q_PROPERTY(Fact* systemErrors READ systemErrors CONSTANT)
18 Q_PROPERTY(Fact* spoofingState READ spoofingState CONSTANT)
19 Q_PROPERTY(Fact* jammingState READ jammingState CONSTANT)
20 Q_PROPERTY(Fact* authenticationState READ authenticationState CONSTANT)
21 Q_PROPERTY(Fact* correctionsQuality READ correctionsQuality CONSTANT)
22 Q_PROPERTY(Fact* systemQuality READ systemQuality CONSTANT)
23 Q_PROPERTY(Fact* gnssSignalQuality READ gnssSignalQuality CONSTANT)
24 Q_PROPERTY(Fact* postProcessingQuality READ postProcessingQuality CONSTANT)
25
26public:
27 explicit VehicleGPSFactGroup(QObject *parent = nullptr);
28
29 Fact *lat() { return &_latFact; }
30 Fact *lon() { return &_lonFact; }
31 Fact *mgrs() { return &_mgrsFact; }
32 Fact *hdop() { return &_hdopFact; }
33 Fact *vdop() { return &_vdopFact; }
34 Fact *courseOverGround() { return &_courseOverGroundFact; }
35 Fact *yaw() { return &_yawFact; }
36 Fact *count() { return &_countFact; }
37 Fact *lock() { return &_lockFact; }
38 Fact *systemErrors() { return &_systemErrorsFact; }
39 Fact *spoofingState() { return &_spoofingStateFact; }
40 Fact *jammingState() { return &_jammingStateFact; }
41 Fact *authenticationState() { return &_authenticationStateFact; }
42 Fact *correctionsQuality() { return &_correctionsQualityFact; }
43 Fact *systemQuality() { return &_systemQualityFact; }
44 Fact *gnssSignalQuality() { return &_gnssSignalQualityFact; }
45 Fact *postProcessingQuality() { return &_postProcessingQualityFact; }
46
47 // Overrides from FactGroup
48 void handleMessage(Vehicle *vehicle, const mavlink_message_t &message) override;
49
50signals:
52
53protected:
54 void _handleGpsRawInt(const mavlink_message_t &message);
55 void _handleHighLatency(const mavlink_message_t &message);
56 void _handleHighLatency2(const mavlink_message_t &message);
57 void _handleGnssIntegrity(const mavlink_message_t& message);
58
59 Fact _latFact = Fact(0, QStringLiteral("lat"), FactMetaData::valueTypeDouble);
60 Fact _lonFact = Fact(0, QStringLiteral("lon"), FactMetaData::valueTypeDouble);
61 Fact _mgrsFact = Fact(0, QStringLiteral("mgrs"), FactMetaData::valueTypeString);
62 Fact _hdopFact = Fact(0, QStringLiteral("hdop"), FactMetaData::valueTypeDouble);
63 Fact _vdopFact = Fact(0, QStringLiteral("vdop"), FactMetaData::valueTypeDouble);
64 Fact _courseOverGroundFact = Fact(0, QStringLiteral("courseOverGround"), FactMetaData::valueTypeDouble);
65 Fact _yawFact = Fact(0, QStringLiteral("yaw"), FactMetaData::valueTypeDouble);
66 Fact _countFact = Fact(0, QStringLiteral("count"), FactMetaData::valueTypeInt32);
67 Fact _lockFact = Fact(0, QStringLiteral("lock"), FactMetaData::valueTypeInt32);
68 Fact _systemErrorsFact = Fact(0, QStringLiteral("systemErrors"), FactMetaData::valueTypeUint32);
69 Fact _spoofingStateFact = Fact(0, QStringLiteral("spoofingState"), FactMetaData::valueTypeUint8);
70 Fact _jammingStateFact = Fact(0, QStringLiteral("jammingState"), FactMetaData::valueTypeUint8);
71 Fact _authenticationStateFact = Fact(0, QStringLiteral("authenticationState"), FactMetaData::valueTypeUint8);
72 Fact _correctionsQualityFact = Fact(0, QStringLiteral("correctionsQuality"), FactMetaData::valueTypeUint8);
73 Fact _systemQualityFact = Fact(0, QStringLiteral("systemQuality"), FactMetaData::valueTypeUint8);
74 Fact _gnssSignalQualityFact = Fact(0, QStringLiteral("gnssSignalQuality"), FactMetaData::valueTypeUint8);
75 Fact _postProcessingQualityFact = Fact(0, QStringLiteral("postProcessingQuality"), FactMetaData::valueTypeUint8);
76
77 uint8_t _gnssIntegrityId {};
78};
struct __mavlink_message mavlink_message_t
Used to group Facts together into an object hierarachy.
Definition FactGroup.h:19
A Fact is used to hold a single value within the system.
Definition Fact.h:19
void _handleHighLatency2(const mavlink_message_t &message)
void _handleHighLatency(const mavlink_message_t &message)
void _handleGpsRawInt(const mavlink_message_t &message)
void _handleGnssIntegrity(const mavlink_message_t &message)
void gnssIntegrityReceived()