0.4.1
Loading...
Searching...
No Matches
IonosphericCorrections.cpp
Go to the documentation of this file.
1// This file is part of INSTINCT, the INS Toolkit for Integrated
2// Navigation Concepts and Training by the Institute of Navigation of
3// the University of Stuttgart, Germany.
4//
5// This Source Code Form is subject to the terms of the Mozilla Public
6// License, v. 2.0. If a copy of the MPL was not distributed with this
7// file, You can obtain one at https://mozilla.org/MPL/2.0/.
8
9/// @file IonosphericCorrections.cpp
10/// @brief Ionospheric corrections
11/// @author T. Topp (topp@ins.uni-stuttgart.de)
12/// @date 2023-07-23
13
16
17namespace NAV
18{
19
20IonosphericCorrections::IonosphericCorrections(const std::vector<const GnssNavInfo*>& gnssNavInfos)
21{
22 for (const auto* gnssNavInfo : gnssNavInfos)
23 {
24 for (const auto& correction : gnssNavInfo->ionosphericCorrections.data())
25 {
26 if (!this->contains(correction.satSys, correction.alphaBeta))
27 {
28 this->insert(correction.satSys, correction.alphaBeta, correction.data);
29 }
30 }
31 }
32}
33
34IonosphericCorrections::IonosphericCorrections(std::vector<Corrections> corrections)
35 : m_ionosphericCorrections(std::move(corrections)) {}
36
37} // namespace NAV
Navigation message information.
Ionospheric Correction data.
bool contains(SatelliteSystem satSys, AlphaBeta alphaBeta) const
Checks whether the data is in the internal storage.
std::vector< Corrections > m_ionosphericCorrections
Ionospheric correction values.
IonosphericCorrections()=default
Default constructor.
void insert(SatelliteSystem satSys, AlphaBeta alphaBeta, const std::array< double, 4 > &values)
Inserts new data into the m_ionosphericCorrections variable.
void move(std::vector< T > &v, size_t sourceIdx, size_t targetIdx)
Moves an element within a vector to a new position.
Definition Vector.hpp:27