mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2026-09-13 20:51:23 +00:00
Cleanup RINEX obs
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -38,6 +38,7 @@
|
||||
#ifndef GNSS_SDR_RINEX_PRINTER_H
|
||||
#define GNSS_SDR_RINEX_PRINTER_H
|
||||
|
||||
#include "signal_enabled_flags.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <cstdint> // for int32_t
|
||||
#include <cstdlib> // for strtol, strtod
|
||||
@@ -72,6 +73,8 @@ class Gps_Navigation_Message;
|
||||
class Gps_Utc_Model;
|
||||
class Rtklib_Solver;
|
||||
|
||||
using Constellation_Observables_Map = std::map<char, std::map<uint32_t, std::map<signal_flag, Gnss_Synchro>>>;
|
||||
|
||||
|
||||
/*!
|
||||
* \brief Class that handles the generation of Receiver
|
||||
@@ -295,7 +298,7 @@ private:
|
||||
void log_rinex_obs(std::fstream& out,
|
||||
const Gps_Ephemeris& eph,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes GPS L2 observables into the RINEX file
|
||||
@@ -303,7 +306,7 @@ private:
|
||||
void log_rinex_obs(std::fstream& out,
|
||||
const Gps_CNAV_Ephemeris& eph,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes dual frequency GPS L1 and L2 observables into the RINEX file
|
||||
@@ -312,8 +315,7 @@ private:
|
||||
const Gps_Ephemeris& eph,
|
||||
const Gps_CNAV_Ephemeris& eph_cnav,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables,
|
||||
bool triple_band = false) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Galileo observables into the RINEX file.
|
||||
@@ -322,8 +324,7 @@ private:
|
||||
void log_rinex_obs(std::fstream& out,
|
||||
const Galileo_Ephemeris& eph,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables,
|
||||
const std::string& galileo_bands = "1B") const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed GPS / Galileo observables into the RINEX file
|
||||
@@ -332,7 +333,7 @@ private:
|
||||
const Gps_Ephemeris& gps_eph,
|
||||
const Galileo_Ephemeris& galileo_eph,
|
||||
double gps_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed GPS / Galileo observables into the RINEX file
|
||||
@@ -341,7 +342,7 @@ private:
|
||||
const Gps_CNAV_Ephemeris& eph,
|
||||
const Galileo_Ephemeris& galileo_eph,
|
||||
double gps_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed GPS / Galileo observables into the RINEX file
|
||||
@@ -351,8 +352,7 @@ private:
|
||||
const Gps_CNAV_Ephemeris& gps_cnav_eph,
|
||||
const Galileo_Ephemeris& galileo_eph,
|
||||
double gps_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables,
|
||||
bool triple_band = false) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes GLONASS GNAV observables into the RINEX file.
|
||||
@@ -361,7 +361,7 @@ private:
|
||||
void log_rinex_obs(std::fstream& out,
|
||||
const Glonass_Gnav_Ephemeris& eph,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed GPS L1 C/A - GLONASS observables into the RINEX file
|
||||
@@ -370,7 +370,7 @@ private:
|
||||
const Gps_Ephemeris& gps_eph,
|
||||
const Glonass_Gnav_Ephemeris& glonass_gnav_eph,
|
||||
double gps_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed GPS L2C - GLONASS observables into the RINEX file
|
||||
@@ -379,7 +379,7 @@ private:
|
||||
const Gps_CNAV_Ephemeris& gps_eph,
|
||||
const Glonass_Gnav_Ephemeris& glonass_gnav_eph,
|
||||
double gps_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes Mixed Galileo/GLONASS observables into the RINEX file
|
||||
@@ -388,7 +388,7 @@ private:
|
||||
const Galileo_Ephemeris& galileo_eph,
|
||||
const Glonass_Gnav_Ephemeris& glonass_gnav_eph,
|
||||
double galileo_obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Writes BDS B1I observables into the RINEX file
|
||||
@@ -396,8 +396,7 @@ private:
|
||||
void log_rinex_obs(std::fstream& out,
|
||||
const Beidou_Dnav_Ephemeris& eph,
|
||||
double obs_time,
|
||||
const std::map<int32_t, Gnss_Synchro>& observables,
|
||||
const std::string& bds_bands) const;
|
||||
const Constellation_Observables_Map& constel_observables) const;
|
||||
|
||||
/*
|
||||
* Generates the GPS L1 C/A Navigation Data header
|
||||
|
||||
@@ -517,7 +517,7 @@ TEST_F(RinexPrinterTest, GlonassObsLog)
|
||||
gs3.System = *sys.c_str();
|
||||
gs4.System = *sys.c_str();
|
||||
|
||||
std::string sig = "1C";
|
||||
std::string sig = "1G";
|
||||
std::memcpy(reinterpret_cast<void*>(gs1.Signal), sig.c_str(), 3);
|
||||
std::memcpy(reinterpret_cast<void*>(gs2.Signal), sig.c_str(), 3);
|
||||
std::memcpy(reinterpret_cast<void*>(gs3.Signal), sig.c_str(), 3);
|
||||
@@ -768,7 +768,7 @@ TEST_F(RinexPrinterTest, MixedObsLog)
|
||||
eph_gal.PRN = 1;
|
||||
Pvt_Conf conf;
|
||||
conf.use_e6_for_pvt = false;
|
||||
const auto signal_enabled_flags = GPS_1C | GAL_1B;
|
||||
const auto signal_enabled_flags = GPS_1C | GAL_1B | GAL_E5a;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, conf, "filename", signal_enabled_flags, false, false);
|
||||
pvt_solution->gps_ephemeris_map[1] = std::move(eph_gps);
|
||||
pvt_solution->galileo_ephemeris_map[1] = std::move(eph_gal);
|
||||
@@ -891,7 +891,7 @@ TEST_F(RinexPrinterTest, MixedObsLogGpsGlo)
|
||||
eph_glo.PRN = 1;
|
||||
Pvt_Conf conf;
|
||||
conf.use_e6_for_pvt = false;
|
||||
const auto signal_enabled_flags = GPS_1C | GLO_1G;
|
||||
const auto signal_enabled_flags = GPS_1C | GLO_1G | GLO_2G;
|
||||
auto pvt_solution = std::make_shared<Rtklib_Solver>(rtk, conf, "filename", signal_enabled_flags, false, false);
|
||||
pvt_solution->gps_ephemeris_map[1] = std::move(eph_gps);
|
||||
pvt_solution->glonass_gnav_ephemeris_map[1] = std::move(eph_glo);
|
||||
@@ -928,6 +928,8 @@ TEST_F(RinexPrinterTest, MixedObsLogGpsGlo)
|
||||
std::memcpy(reinterpret_cast<void*>(gs5.Signal), sig.c_str(), 3);
|
||||
std::memcpy(reinterpret_cast<void*>(gs6.Signal), sig.c_str(), 3);
|
||||
std::memcpy(reinterpret_cast<void*>(gs7.Signal), sig.c_str(), 3);
|
||||
|
||||
sig = "2G";
|
||||
std::memcpy(reinterpret_cast<void*>(gs8.Signal), sig.c_str(), 3);
|
||||
|
||||
gs1.PRN = 3;
|
||||
|
||||
Reference in New Issue
Block a user