44 std::array<double, 4>
data{};
64 auto iter = std::find_if(m_ionosphericCorrections.begin(), m_ionosphericCorrections.end(), [satSys, alphaBeta](
const Corrections& c) {
65 return c.satSys == satSys && c.alphaBeta == alphaBeta;
67 if (iter != m_ionosphericCorrections.end())
79 auto iter = std::find_if(m_ionosphericCorrections.begin(), m_ionosphericCorrections.end(), [satSys, alphaBeta](
const Corrections& c) {
80 return c.satSys == satSys && c.alphaBeta == alphaBeta;
82 return iter != m_ionosphericCorrections.end();
86 [[nodiscard]]
const std::vector<Corrections>&
data()
const
88 return m_ionosphericCorrections;
97 auto iter = std::find_if(m_ionosphericCorrections.begin(), m_ionosphericCorrections.end(), [satSys, alphaBeta](
const Corrections& c) {
98 return c.satSys == satSys && c.alphaBeta == alphaBeta;
100 if (iter == m_ionosphericCorrections.end())
102 m_ionosphericCorrections.push_back({ satSys, alphaBeta, values });
113 m_ionosphericCorrections.clear();
118 std::vector<Corrections> m_ionosphericCorrections;
@ SatSys_None
No Satellite system.
Definition SatelliteSystem.hpp:31
Ionospheric Corrections.
Definition IonosphericCorrections.hpp:30
IonosphericCorrections(const std::vector< const GnssNavInfo * > &gnssNavInfos)
Constructor which collects the ionospheric parameters from the Navigation infos.
bool contains(SatelliteSystem satSys, AlphaBeta alphaBeta) const
Checks whether the data is in the internal storage.
Definition IonosphericCorrections.hpp:77
AlphaBeta
Alpha or beta values.
Definition IonosphericCorrections.hpp:34
@ Beta
Coefficients of a cubic equation representing the period of the model.
Definition IonosphericCorrections.hpp:36
@ Alpha
Coefficients of a cubic equation representing the amplitude of the vertical delay.
Definition IonosphericCorrections.hpp:35
const std::vector< Corrections > & data() const
Returns the internal data storage.
Definition IonosphericCorrections.hpp:86
const std::array< double, 4 > * get(SatelliteSystem satSys, AlphaBeta alphaBeta) const
Get the Ionospheric Correction values.
Definition IonosphericCorrections.hpp:62
IonosphericCorrections()=default
Default constructor.
void clear()
Empties the data.
Definition IonosphericCorrections.hpp:111
void insert(SatelliteSystem satSys, AlphaBeta alphaBeta, const std::array< double, 4 > &values)
Inserts new data into the m_ionosphericCorrections variable.
Definition IonosphericCorrections.hpp:95
IonosphericCorrections(std::vector< Corrections > corrections)
Constructor from raw corrections.
Ionospheric Corrections Data Storage.
Definition IonosphericCorrections.hpp:41
std::array< double, 4 > data
Data storage (3 values for GAL, otherwise 4) [s, s/semi-circle, s/semi-circle^2, s/semi-circle^3].
Definition IonosphericCorrections.hpp:44
AlphaBeta alphaBeta
Alpha or beta value.
Definition IonosphericCorrections.hpp:43
SatelliteSystem satSys
Satellite System (e.g. GPS, GAL, GLO, ...)
Definition IonosphericCorrections.hpp:42
Satellite System type.
Definition SatelliteSystem.hpp:43