mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2026-09-16 06:01:22 +00:00
Give more natural, consistent names to ephemeris / iono / utc parameters exposed outside the receiver via XML files
Create a base class for GPS, Galileo and BeiDou ephemeris, allowing to remove some duplicated code Use BOOST_SERIALIZATION_NVP macro, less error prone than boost::serialization::make_nvp Update .xsd files
This commit is contained in:
@@ -143,7 +143,7 @@ TEST_F(RinexPrinterTest, GalileoObsHeader)
|
||||
{
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
auto eph = Galileo_Ephemeris();
|
||||
eph.i_satellite_PRN = 1;
|
||||
eph.PRN = 1;
|
||||
pvt_solution->galileo_ephemeris_map[1] = eph;
|
||||
|
||||
std::map<int, Gnss_Synchro> gnss_observables_map;
|
||||
@@ -229,7 +229,7 @@ TEST_F(RinexPrinterTest, GlonassObsHeader)
|
||||
{
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
auto eph = Glonass_Gnav_Ephemeris();
|
||||
eph.i_satellite_PRN = 1;
|
||||
eph.PRN = 1;
|
||||
pvt_solution->glonass_gnav_ephemeris_map[1] = eph;
|
||||
|
||||
std::map<int, Gnss_Synchro> gnss_observables_map;
|
||||
@@ -285,8 +285,8 @@ TEST_F(RinexPrinterTest, MixedObsHeader)
|
||||
bool no_more_finds = false;
|
||||
auto eph_gal = Galileo_Ephemeris();
|
||||
auto eph_gps = Gps_Ephemeris();
|
||||
eph_gal.i_satellite_PRN = 1;
|
||||
eph_gps.i_satellite_PRN = 1;
|
||||
eph_gal.PRN = 1;
|
||||
eph_gps.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->galileo_ephemeris_map[1] = eph_gal;
|
||||
|
||||
@@ -355,8 +355,8 @@ TEST_F(RinexPrinterTest, MixedObsHeaderGpsGlo)
|
||||
bool no_more_finds = false;
|
||||
auto eph_glo = Glonass_Gnav_Ephemeris();
|
||||
auto eph_gps = Gps_Ephemeris();
|
||||
eph_glo.i_satellite_PRN = 1;
|
||||
eph_gps.i_satellite_PRN = 1;
|
||||
eph_glo.PRN = 1;
|
||||
eph_gps.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->glonass_gnav_ephemeris_map[1] = eph_glo;
|
||||
|
||||
@@ -423,7 +423,7 @@ TEST_F(RinexPrinterTest, GalileoObsLog)
|
||||
std::string line_str;
|
||||
bool no_more_finds = false;
|
||||
auto eph = Galileo_Ephemeris();
|
||||
eph.i_satellite_PRN = 1;
|
||||
eph.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->galileo_ephemeris_map[1] = eph;
|
||||
std::map<int, Gnss_Synchro> gnss_observables_map;
|
||||
@@ -503,7 +503,7 @@ TEST_F(RinexPrinterTest, GlonassObsLog)
|
||||
std::string line_str;
|
||||
bool no_more_finds = false;
|
||||
auto eph = Glonass_Gnav_Ephemeris();
|
||||
eph.i_satellite_PRN = 22;
|
||||
eph.PRN = 22;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->glonass_gnav_ephemeris_map[1] = eph;
|
||||
std::map<int, Gnss_Synchro> gnss_observables_map;
|
||||
@@ -584,8 +584,8 @@ TEST_F(RinexPrinterTest, GpsObsLogDualBand)
|
||||
bool no_more_finds = false;
|
||||
auto eph = Gps_Ephemeris();
|
||||
auto eph_cnav = Gps_CNAV_Ephemeris();
|
||||
eph.i_satellite_PRN = 1;
|
||||
eph_cnav.i_satellite_PRN = 1;
|
||||
eph.PRN = 1;
|
||||
eph_cnav.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->gps_ephemeris_map[1] = eph;
|
||||
pvt_solution->gps_cnav_ephemeris_map[1] = eph_cnav;
|
||||
@@ -676,7 +676,7 @@ TEST_F(RinexPrinterTest, GalileoObsLogDualBand)
|
||||
{
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
auto eph = Galileo_Ephemeris();
|
||||
eph.i_satellite_PRN = 1;
|
||||
eph.PRN = 1;
|
||||
pvt_solution->galileo_ephemeris_map[1] = eph;
|
||||
|
||||
std::map<int, Gnss_Synchro> gnss_observables_map;
|
||||
@@ -772,8 +772,8 @@ TEST_F(RinexPrinterTest, MixedObsLog)
|
||||
bool no_more_finds = false;
|
||||
auto eph_gps = Gps_Ephemeris();
|
||||
auto eph_gal = Galileo_Ephemeris();
|
||||
eph_gps.i_satellite_PRN = 1;
|
||||
eph_gal.i_satellite_PRN = 1;
|
||||
eph_gps.PRN = 1;
|
||||
eph_gal.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->gps_ephemeris_map[1] = eph_gps;
|
||||
pvt_solution->galileo_ephemeris_map[1] = eph_gal;
|
||||
@@ -896,8 +896,8 @@ TEST_F(RinexPrinterTest, MixedObsLogGpsGlo)
|
||||
bool no_more_finds = false;
|
||||
auto eph_gps = Gps_Ephemeris();
|
||||
auto eph_glo = Glonass_Gnav_Ephemeris();
|
||||
eph_gps.i_satellite_PRN = 1;
|
||||
eph_glo.i_satellite_PRN = 1;
|
||||
eph_gps.PRN = 1;
|
||||
eph_glo.PRN = 1;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, 12, "filename", false, false);
|
||||
pvt_solution->gps_ephemeris_map[1] = eph_gps;
|
||||
pvt_solution->glonass_gnav_ephemeris_map[1] = eph_glo;
|
||||
|
||||
@@ -247,16 +247,16 @@ TEST(RtcmTest, MT1019)
|
||||
Gps_Ephemeris gps_eph = Gps_Ephemeris();
|
||||
Gps_Ephemeris gps_eph_read = Gps_Ephemeris();
|
||||
|
||||
gps_eph.i_satellite_PRN = 3;
|
||||
gps_eph.d_IODC = 4;
|
||||
gps_eph.d_e_eccentricity = 2.0 * ECCENTRICITY_LSB;
|
||||
gps_eph.PRN = 3;
|
||||
gps_eph.IODC = 4;
|
||||
gps_eph.ecc = 2.0 * ECCENTRICITY_LSB;
|
||||
gps_eph.b_fit_interval_flag = true;
|
||||
std::string tx_msg = rtcm->print_MT1019(gps_eph);
|
||||
|
||||
EXPECT_EQ(0, rtcm->read_MT1019(tx_msg, gps_eph_read));
|
||||
EXPECT_EQ(static_cast<unsigned int>(3), gps_eph_read.i_satellite_PRN);
|
||||
EXPECT_DOUBLE_EQ(4, gps_eph_read.d_IODC);
|
||||
EXPECT_DOUBLE_EQ(2.0 * ECCENTRICITY_LSB, gps_eph_read.d_e_eccentricity);
|
||||
EXPECT_EQ(static_cast<unsigned int>(3), gps_eph_read.PRN);
|
||||
EXPECT_DOUBLE_EQ(4, gps_eph_read.IODC);
|
||||
EXPECT_DOUBLE_EQ(2.0 * ECCENTRICITY_LSB, gps_eph_read.ecc);
|
||||
EXPECT_EQ(expected_true, gps_eph_read.b_fit_interval_flag);
|
||||
EXPECT_EQ(1, rtcm->read_MT1019(rtcm->bin_to_binary_data(rtcm->hex_to_bin("FFFFFFFFFFF")), gps_eph_read));
|
||||
}
|
||||
@@ -322,16 +322,16 @@ TEST(RtcmTest, MT1045)
|
||||
Galileo_Ephemeris gal_eph = Galileo_Ephemeris();
|
||||
Galileo_Ephemeris gal_eph_read = Galileo_Ephemeris();
|
||||
|
||||
gal_eph.i_satellite_PRN = 5;
|
||||
gal_eph.OMEGA_dot_3 = 53.0 * OMEGA_DOT_3_LSB;
|
||||
gal_eph.PRN = 5;
|
||||
gal_eph.OMEGAdot = 53.0 * OMEGA_DOT_3_LSB;
|
||||
gal_eph.E5a_DVS = true;
|
||||
|
||||
std::string tx_msg = rtcm->print_MT1045(gal_eph);
|
||||
|
||||
EXPECT_EQ(0, rtcm->read_MT1045(tx_msg, gal_eph_read));
|
||||
EXPECT_EQ(expected_true, gal_eph_read.E5a_DVS);
|
||||
EXPECT_DOUBLE_EQ(53.0 * OMEGA_DOT_3_LSB, gal_eph_read.OMEGA_dot_3);
|
||||
EXPECT_EQ(static_cast<unsigned int>(5), gal_eph_read.i_satellite_PRN);
|
||||
EXPECT_DOUBLE_EQ(53.0 * OMEGA_DOT_3_LSB, gal_eph_read.OMEGAdot);
|
||||
EXPECT_EQ(static_cast<unsigned int>(5), gal_eph_read.PRN);
|
||||
EXPECT_EQ(1, rtcm->read_MT1045(rtcm->bin_to_binary_data(rtcm->hex_to_bin("FFFFFFFFFFF")), gal_eph_read));
|
||||
}
|
||||
|
||||
@@ -402,9 +402,9 @@ TEST(RtcmTest, MSMCell)
|
||||
bool more_messages = false;
|
||||
double obs_time = 25.0;
|
||||
|
||||
gps_eph.i_satellite_PRN = gnss_synchro2.PRN;
|
||||
gal_eph.i_satellite_PRN = gnss_synchro.PRN;
|
||||
// glo_gnav_eph.i_satellite_PRN = gnss_synchro.PRN;
|
||||
gps_eph.PRN = gnss_synchro2.PRN;
|
||||
gal_eph.PRN = gnss_synchro.PRN;
|
||||
// glo_gnav_eph.PRN = gnss_synchro.PRN;
|
||||
|
||||
std::string MSM1 = rtcm->print_MSM_1(gps_eph,
|
||||
{},
|
||||
@@ -529,7 +529,7 @@ TEST(RtcmTest, MSM1)
|
||||
bool more_messages = false;
|
||||
double obs_time = 25.0;
|
||||
|
||||
gps_eph.i_satellite_PRN = gnss_synchro.PRN;
|
||||
gps_eph.PRN = gnss_synchro.PRN;
|
||||
|
||||
std::string MSM1 = rtcm->print_MSM_1(gps_eph,
|
||||
{}, {}, {},
|
||||
|
||||
Reference in New Issue
Block a user