GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
beidou_dnav_almanac.h
Go to the documentation of this file.
1/*!
2 * \file beidou_dnav_almanac.h
3 * \brief Interface of a Beidou DNAV Almanac storage
4 * \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com
5 *
6 * -----------------------------------------------------------------------------
7 *
8 * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
9 * This file is part of GNSS-SDR.
10 *
11 * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
12 * SPDX-License-Identifier: GPL-3.0-or-later
13 *
14 * -----------------------------------------------------------------------------
15 */
16
17
18#ifndef GNSS_SDR_BEIDOU_DNAV_ALMANAC_H
19#define GNSS_SDR_BEIDOU_DNAV_ALMANAC_H
20
21#include "gnss_almanac.h"
22#include <boost/serialization/nvp.hpp>
23
24/** \addtogroup Core
25 * \{ */
26/** \addtogroup System_Parameters
27 * \{ */
28
29
30/*!
31 * \brief This class is a storage for the BeiDou D1 almanac
32 */
34{
35public:
36 /*!
37 * Default constructor
38 */
40 {
41 this->System = 'C';
42 };
43
44 int SV_health{}; //!< SV Health
45
46 template <class Archive>
47
48 void serialize(Archive& ar, const unsigned int version)
49 {
50 if (version)
51 {
52 };
53 ar& BOOST_SERIALIZATION_NVP(PRN);
54 ar& BOOST_SERIALIZATION_NVP(delta_i);
55 ar& BOOST_SERIALIZATION_NVP(toa);
56 ar& BOOST_SERIALIZATION_NVP(WNa);
57 ar& BOOST_SERIALIZATION_NVP(M_0);
58 ar& BOOST_SERIALIZATION_NVP(ecc);
59 ar& BOOST_SERIALIZATION_NVP(sqrtA);
60 ar& BOOST_SERIALIZATION_NVP(OMEGA_0);
61 ar& BOOST_SERIALIZATION_NVP(omega);
62 ar& BOOST_SERIALIZATION_NVP(OMEGAdot);
63 ar& BOOST_SERIALIZATION_NVP(af0);
64 ar& BOOST_SERIALIZATION_NVP(af1);
65 ar& BOOST_SERIALIZATION_NVP(SV_health);
66 }
67};
68
69
70/** \} */
71/** \} */
72#endif // GNSS_SDR_BEIDOU_DNAV_ALMANAC_H
uint32_t PRN
SV PRN NUMBER.
double OMEGAdot
Rate of Right Ascension [semi-circles/s].
double OMEGA_0
Longitude of Ascending Node of Orbit Plane at Weekly Epoch [semi-circles].
double M_0
Mean Anomaly at Reference Time [semi-circles].
double sqrtA
Square Root of the Semi-Major Axis [sqrt(m)].
char System
Character ID of the GNSS system. 'G': GPS. 'E': Galileo. 'C': BeiDou.
double af0
Coefficient 0 of code phase offset model [s].
int32_t WNa
Almanac week number.
Gnss_Almanac()=default
double omega
Argument of Perigee [semi-cicles].
int32_t toa
Almanac data reference time of week [s].
double af1
Coefficient 1 of code phase offset model [s/s].
double ecc
Eccentricity [dimensionless].
double delta_i
Inclination Angle at Reference Time (relative to i_0 = 0.30 semi-circles).
Base class for GNSS almanac storage.