0.2.0
Loading...
Searching...
No Matches
NAV::ObservationFilter Class Reference

Observation Filter. More...

Public Member Functions

void excludeSignalTemporarily (const SatSigId &satSigId, size_t count)
 Temporarily excludes a signal.
 
const CodegetCodeFilter () const
 Get the Code Filter.
 
const FrequencygetFrequencyFilter () const
 Get the Frequency Filter.
 
SatelliteSystem getSystemFilter () const
 Get the Satellite System Filter.
 
const std::unordered_set< GnssObs::ObservationType > & getUsedObservationTypes () const
 Get the used observation types.
 
bool isObsTypeUsed (GnssObs::ObservationType obsType) const
 Checks if the Observation type is used by the GUI settings.
 
bool isSatelliteAllowed (const SatId &satId) const
 Checks if the satellite is allowed. Does not check elevation or SNR mask.
 
void markObsTypeAsNeeded (GnssObs::ObservationType obsType, bool needed=true)
 Set the observation type as needed (cannot be unchecked in the GUI) or unneeded.
 
 ObservationFilter (const ObservationFilter &other)=default
 Copy constructor.
 
 ObservationFilter (ObservationFilter &&other) noexcept=default
 Move constructor.
 
 ObservationFilter (size_t receiverCount, const std::unordered_set< GnssObs::ObservationType > &availableObsTypes={ GnssObs::Pseudorange, GnssObs::Carrier, GnssObs::Doppler }, std::unordered_set< GnssObs::ObservationType > neededObsTypes={})
 Constructor.
 
ObservationFilteroperator= (const ObservationFilter &other)
 Copy assignment operator.
 
ObservationFilteroperator= (ObservationFilter &&other) noexcept
 Move assignment operator.
 
void reset ()
 Reset the temporary settings.
 
template<typename ReceiverType >
Observations selectObservationsForCalculation (const std::array< Receiver< ReceiverType >, ReceiverType::ReceiverType_COUNT > &receivers, const std::vector< const GnssNavInfo * > &gnssNavInfos, const std::string &nameId, bool ignoreElevationMask=false)
 Returns a list of satellites and observations filtered by GUI settings & NAV data available & ...)
 
template<typename ReceiverType >
bool ShowGuiWidgets (const char *id, float itemWidth)
 Shows the GUI input to select the options.
 
void useObsType (GnssObs::ObservationType obsType)
 Set the observation type to use.
 
 ~ObservationFilter ()=default
 Destructor.
 

Detailed Description

Observation Filter.

Constructor & Destructor Documentation

◆ ObservationFilter()

NAV::ObservationFilter::ObservationFilter ( size_t receiverCount,
const std::unordered_set< GnssObs::ObservationType > & availableObsTypes = GnssObs::PseudorangeGnssObs::CarrierGnssObs::Doppler },
std::unordered_set< GnssObs::ObservationType > neededObsTypes = {} )
inlineexplicit

Constructor.

Parameters
[in]receiverCountNumber of receivers
[in]availableObsTypesAvailable observation types (e.g. SPP does not have Carrier)
[in]neededObsTypesNeeded observation types (cannot be unchecked)

Member Function Documentation

◆ excludeSignalTemporarily()

void NAV::ObservationFilter::excludeSignalTemporarily ( const SatSigId & satSigId,
size_t count )
inline

Temporarily excludes a signal.

Parameters
[in]satSigIdSatellite Signal Id
[in]countAmount of function calls to exclude

◆ isObsTypeUsed()

bool NAV::ObservationFilter::isObsTypeUsed ( GnssObs::ObservationType obsType) const
inline

Checks if the Observation type is used by the GUI settings.

Parameters
[in]obsTypeObservation Type

◆ isSatelliteAllowed()

bool NAV::ObservationFilter::isSatelliteAllowed ( const SatId & satId) const
inline

Checks if the satellite is allowed. Does not check elevation or SNR mask.

Parameters
[in]satIdSatellite Identifier

◆ markObsTypeAsNeeded()

void NAV::ObservationFilter::markObsTypeAsNeeded ( GnssObs::ObservationType obsType,
bool needed = true )
inline

Set the observation type as needed (cannot be unchecked in the GUI) or unneeded.

Parameters
obsTypeObservation Type
neededNeeded or unneeded

◆ selectObservationsForCalculation()

template<typename ReceiverType >
Observations NAV::ObservationFilter::selectObservationsForCalculation ( const std::array< Receiver< ReceiverType >, ReceiverType::ReceiverType_COUNT > & receivers,
const std::vector< const GnssNavInfo * > & gnssNavInfos,
const std::string & nameId,
bool ignoreElevationMask = false )
inline

Returns a list of satellites and observations filtered by GUI settings & NAV data available & ...)

Parameters
[in]receiversList of receivers
[in]gnssNavInfosCollection of navigation data providers
[in]nameIdName and Id of the node used for log messages only
[in]ignoreElevationMaskFlag wether the elevation mask should be ignored
Returns
0: List of satellite data; 1: List of observations

◆ ShowGuiWidgets()

template<typename ReceiverType >
bool NAV::ObservationFilter::ShowGuiWidgets ( const char * id,
float itemWidth )
inline

Shows the GUI input to select the options.

Parameters
[in]idUnique id for ImGui.
[in]itemWidthWidth of the widgets

◆ useObsType()

void NAV::ObservationFilter::useObsType ( GnssObs::ObservationType obsType)
inline

Set the observation type to use.

Parameters
obsTypeObservation Type

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