|
QGroundControl
Ground Control Station for MAVLink Drones
|
Receiver-independent data. Unknown metadata remains absent, never a manufactured zero. More...
#include <GPSObservation.h>
Public Types | |
| enum class | PositionUse { GroundStation , Motion , RemoteID , Gga } |
| using | FixQuality = GPSFixQuality |
Public Member Functions | |
| std::optional< GPSObservation > | projected (PositionUse use) const |
| The owner separately enforces freshness and session authorization. | |
| bool | hasNavigationSolution () const |
| bool | usable () const |
| QGeoCoordinate | coordinate () const |
| double | heading () const |
Static Public Member Functions | |
| static GPSObservation | fromNavigation (const GPSNavigationValues &navigation, quint64 receivedAtUs) |
| Converts a native receiver solution that arrived at receivedAtUs on the monotonic clock. | |
| static GPSObservation | fromSurveyedPosition (const GPSEllipsoidPosition &position, double accuracyMeters, quint64 receivedAtUs) |
| A known antenna position, such as a fixed or surveyed RTK base, which receivers report as a time-only fix. | |
| static double | accuracyFromDop (double dop) |
| Nominal accuracy in meters for receivers that report only DOP (DOP x 5.1 m UERE x 2). | |
Public Attributes | |
| QGeoPositionInfo | position |
| quint64 | monotonicTimestampUs = 0 |
| quint64 | sessionId = 0 |
| FixQuality | fixQuality = FixQuality::Unknown |
| std::optional< bool > | receiverFixValid = std::nullopt |
| GPSAltitudeDatum | altitudeDatum = GPSAltitudeDatum::Unknown |
| std::optional< int > | satellitesUsed |
| std::optional< double > | horizontalDop |
| std::optional< double > | altitudeEllipsoidMeters |
Receiver-independent data. Unknown metadata remains absent, never a manufactured zero.
Definition at line 20 of file GPSObservation.h.
Definition at line 22 of file GPSObservation.h.
|
strong |
| Enumerator | |
|---|---|
| GroundStation | |
| Motion | |
| RemoteID | |
| Gga | |
Definition at line 24 of file GPSObservation.h.
|
static |
Nominal accuracy in meters for receivers that report only DOP (DOP x 5.1 m UERE x 2).
Definition at line 83 of file GPSObservation.cc.
Referenced by fromNavigation().
| QGeoCoordinate GPSObservation::coordinate | ( | ) | const |
Definition at line 146 of file GPSObservation.cc.
References coordinate(), position, and usable().
Referenced by coordinate(), fromNavigation(), and projected().
|
static |
Converts a native receiver solution that arrived at receivedAtUs on the monotonic clock.
Definition at line 13 of file GPSObservation.cc.
References accuracyFromDop(), altitudeDatum, GPSNavigationValues::altitudeEllipsoidMeters, altitudeEllipsoidMeters, GPSNavigationValues::altitudeMslMeters, coordinate(), GPSNavigationValues::courseRadians, fixQuality, GPSNavigationValues::fixType, GPSNavigationValues::horizontalAccuracyMeters, GPSNavigationValues::horizontalDop, horizontalDop, GPSNavigationValues::latitudeDegrees, GPSNavigationValues::longitudeDegrees, MeanSeaLevel, monotonicTimestampUs, position, receiverFixValid, GPSNavigationValues::satellitesUsed, satellitesUsed, GPSNavigationValues::speedMetersPerSecond, GPSNavigationValues::utcTimeUs, GPSNavigationValues::verticalAccuracyMeters, and GPSNavigationValues::verticalDop.
Referenced by GPSReceiverSession::observation().
|
static |
A known antenna position, such as a fixed or surveyed RTK base, which receivers report as a time-only fix.
Definition at line 61 of file GPSObservation.cc.
References altitudeEllipsoidMeters, fixQuality, monotonicTimestampUs, position, and receiverFixValid.
Referenced by GPSReceiverSession::observation().
| bool GPSObservation::hasNavigationSolution | ( | ) | const |
Definition at line 134 of file GPSObservation.cc.
References fixQuality, position, and receiverFixValid.
Referenced by projected(), and usable().
| double GPSObservation::heading | ( | ) | const |
Definition at line 160 of file GPSObservation.cc.
References position, and usable().
Referenced by projected().
| std::optional< GPSObservation > GPSObservation::projected | ( | PositionUse | use | ) | const |
The owner separately enforces freshness and session authorization.
Definition at line 90 of file GPSObservation.cc.
References altitudeDatum, altitudeEllipsoidMeters, coordinate(), Ellipsoid, Gga, GroundStation, hasNavigationSolution(), heading(), Motion, position, RemoteID, Unknown, and usable().
Referenced by NTRIPVehicleGgaSource::gpsObservation().
| bool GPSObservation::usable | ( | ) | const |
Definition at line 139 of file GPSObservation.cc.
References hasNavigationSolution(), and position.
Referenced by coordinate(), heading(), and projected().
| GPSAltitudeDatum GPSObservation::altitudeDatum = GPSAltitudeDatum::Unknown |
Definition at line 39 of file GPSObservation.h.
Referenced by fromNavigation(), and projected().
| std::optional<double> GPSObservation::altitudeEllipsoidMeters |
Definition at line 42 of file GPSObservation.h.
Referenced by fromNavigation(), fromSurveyedPosition(), and projected().
| FixQuality GPSObservation::fixQuality = FixQuality::Unknown |
Definition at line 35 of file GPSObservation.h.
Referenced by fromNavigation(), fromSurveyedPosition(), NTRIPVehicleGgaSource::gpsObservation(), and hasNavigationSolution().
| std::optional<double> GPSObservation::horizontalDop |
Definition at line 41 of file GPSObservation.h.
Referenced by fromNavigation(), and NTRIPVehicleGgaSource::gpsObservation().
| quint64 GPSObservation::monotonicTimestampUs = 0 |
Definition at line 33 of file GPSObservation.h.
Referenced by fromNavigation(), fromSurveyedPosition(), and GPSSourceHealth::updateObservation().
| QGeoPositionInfo GPSObservation::position |
Definition at line 32 of file GPSObservation.h.
Referenced by coordinate(), fromNavigation(), fromSurveyedPosition(), hasNavigationSolution(), heading(), projected(), and usable().
| std::optional<bool> GPSObservation::receiverFixValid = std::nullopt |
Definition at line 37 of file GPSObservation.h.
Referenced by fromNavigation(), fromSurveyedPosition(), NTRIPVehicleGgaSource::gpsObservation(), and hasNavigationSolution().
| std::optional<int> GPSObservation::satellitesUsed |
Definition at line 40 of file GPSObservation.h.
Referenced by fromNavigation().
| quint64 GPSObservation::sessionId = 0 |
Definition at line 34 of file GPSObservation.h.
Referenced by GPSReceiverSession::observation().