QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
GPSSourceHealth Class Reference

Session health is independent of transport readiness and RTK survey-in validity. More...

#include <GPSSourceHealth.h>

+ Inheritance diagram for GPSSourceHealth:
+ Collaboration diagram for GPSSourceHealth:

Public Types

enum class  State { NoData = 0 , Usable = 1 , Invalid = 2 , Stale = 3 }
 

Signals

void positionChanged ()
 

Public Member Functions

 GPSSourceHealth (QObject *parent=nullptr, RuntimeScheduler *scheduler=nullptr)
 
 ~GPSSourceHealth () override
 
void setFreshnessTimeout (std::chrono::milliseconds timeout)
 
State state () const
 
quint64 observationRevision () const
 
std::optional< GPSObservation > acceptedObservation (GPSObservation::PositionUse use=GPSObservation::PositionUse::GroundStation, std::optional< std::chrono::milliseconds > maximumAge=std::nullopt) const
 
void updateObservation (const GPSObservation &observation)
 
void invalidatePosition ()
 
void reset ()
 

Static Public Attributes

static constexpr std::chrono::milliseconds FRESHNESS_TIMEOUT {5000}
 Default position age at which health becomes Stale and the position stops being usable.
 

Friends

class GPSSourceHealthTest
 
class PositionManagerTest
 

Detailed Description

Session health is independent of transport readiness and RTK survey-in validity.

Definition at line 12 of file GPSSourceHealth.h.

Member Enumeration Documentation

◆ State

enum class GPSSourceHealth::State
strong
Enumerator
NoData 
Usable 
Invalid 
Stale 

Definition at line 19 of file GPSSourceHealth.h.

Constructor & Destructor Documentation

◆ GPSSourceHealth()

GPSSourceHealth::GPSSourceHealth ( QObject *  parent = nullptr,
RuntimeScheduler *  scheduler = nullptr 
)
explicit

Definition at line 13 of file GPSSourceHealth.cc.

◆ ~GPSSourceHealth()

GPSSourceHealth::~GPSSourceHealth ( )
override

Definition at line 21 of file GPSSourceHealth.cc.

Member Function Documentation

◆ acceptedObservation()

std::optional< GPSObservation > GPSSourceHealth::acceptedObservation ( GPSObservation::PositionUse  use = GPSObservation::PositionUse::GroundStation,
std::optional< std::chrono::milliseconds >  maximumAge = std::nullopt 
) const

Definition at line 35 of file GPSSourceHealth.cc.

Referenced by GPSReceiver::acceptedPositionObservation().

◆ invalidatePosition()

void GPSSourceHealth::invalidatePosition ( )

Definition at line 95 of file GPSSourceHealth.cc.

References Invalid, positionChanged(), Stale, and state().

◆ observationRevision()

quint64 GPSSourceHealth::observationRevision ( ) const
inline

Definition at line 38 of file GPSSourceHealth.h.

◆ positionChanged

◆ reset()

void GPSSourceHealth::reset ( )

Definition at line 108 of file GPSSourceHealth.cc.

References ScheduledTask::cancel(), positionChanged(), and state().

◆ setFreshnessTimeout()

void GPSSourceHealth::setFreshnessTimeout ( std::chrono::milliseconds  timeout)

Definition at line 117 of file GPSSourceHealth.cc.

References NoData, positionChanged(), and state().

◆ state()

State GPSSourceHealth::state ( ) const
inline

◆ updateObservation()

void GPSSourceHealth::updateObservation ( const GPSObservation &  observation)

Friends And Related Symbol Documentation

◆ GPSSourceHealthTest

friend class GPSSourceHealthTest
friend

Definition at line 15 of file GPSSourceHealth.h.

◆ PositionManagerTest

friend class PositionManagerTest
friend

Definition at line 16 of file GPSSourceHealth.h.

Member Data Documentation

◆ FRESHNESS_TIMEOUT

constexpr std::chrono::milliseconds GPSSourceHealth::FRESHNESS_TIMEOUT {5000}
staticconstexpr

Default position age at which health becomes Stale and the position stops being usable.

Definition at line 32 of file GPSSourceHealth.h.


The documentation for this class was generated from the following files: