From 97ffee0b0ca9b60252408c073676b3eb24c6c7d8 Mon Sep 17 00:00:00 2001 From: Carles Fernandez Date: Thu, 3 Nov 2016 14:52:30 +0100 Subject: [PATCH] Use more descriptive names for variables --- src/algorithms/PVT/libs/hybrid_ls_pvt.cc | 62 ++-- src/algorithms/PVT/libs/hybrid_ls_pvt.h | 12 +- src/algorithms/PVT/libs/rinex_printer.cc | 282 +++++++------- src/algorithms/PVT/libs/rinex_printer.h | 10 +- src/algorithms/PVT/libs/rtcm_printer.cc | 24 +- src/algorithms/PVT/libs/rtcm_printer.h | 6 +- src/core/system_parameters/rtcm.cc | 454 +++++++++++------------ src/core/system_parameters/rtcm.h | 56 +-- 8 files changed, 449 insertions(+), 457 deletions(-) diff --git a/src/algorithms/PVT/libs/hybrid_ls_pvt.cc b/src/algorithms/PVT/libs/hybrid_ls_pvt.cc index 9591dadee..d948b1bf8 100644 --- a/src/algorithms/PVT/libs/hybrid_ls_pvt.cc +++ b/src/algorithms/PVT/libs/hybrid_ls_pvt.cc @@ -71,18 +71,18 @@ hybrid_ls_pvt::~hybrid_ls_pvt() } -bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, double hybrid_current_time, bool flag_averaging) +bool hybrid_ls_pvt::get_PVT(std::map gnss_observables_map, double hybrid_current_time, bool flag_averaging) { - std::map::iterator gnss_pseudoranges_iter; + std::map::iterator gnss_observables_iter; std::map::iterator galileo_ephemeris_iter; std::map::iterator gps_ephemeris_iter; std::map::iterator gps_cnav_ephemeris_iter; - int valid_pseudoranges = gnss_pseudoranges_map.size(); + int valid_observables = gnss_observables_map.size(); - arma::mat W = arma::eye(valid_pseudoranges, valid_pseudoranges); // channels weights matrix - arma::vec obs = arma::zeros(valid_pseudoranges); // pseudoranges observation vector - arma::mat satpos = arma::zeros(3, valid_pseudoranges); // satellite positions matrix + arma::mat W = arma::eye(valid_observables, valid_observables); // channels weights matrix + arma::vec obs = arma::zeros(valid_observables); // observables observation vector + arma::mat satpos = arma::zeros(3, valid_observables); // satellite positions matrix int Galileo_week_number = 0; int GPS_week = 0; @@ -100,14 +100,14 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do int valid_obs = 0; //valid observations counter int obs_counter = 0; - for(gnss_pseudoranges_iter = gnss_pseudoranges_map.begin(); - gnss_pseudoranges_iter != gnss_pseudoranges_map.end(); - gnss_pseudoranges_iter++) + for(gnss_observables_iter = gnss_observables_map.begin(); + gnss_observables_iter != gnss_observables_map.end(); + gnss_observables_iter++) { - if(gnss_pseudoranges_iter->second.System == 'E') + if(gnss_observables_iter->second.System == 'E') { // 1 Gal - find the ephemeris for the current GALILEO SV observation. The SV PRN ID is the map key - galileo_ephemeris_iter = galileo_ephemeris_map.find(gnss_pseudoranges_iter->second.PRN); + galileo_ephemeris_iter = galileo_ephemeris_map.find(gnss_observables_iter->second.PRN); if (galileo_ephemeris_iter != galileo_ephemeris_map.end()) { /*! @@ -117,7 +117,7 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // COMMON RX TIME PVT ALGORITHM double Rx_time = hybrid_current_time; - double Tx_time = Rx_time - gnss_pseudoranges_iter->second.Pseudorange_m / GALILEO_C_m_s; + double Tx_time = Rx_time - gnss_observables_iter->second.Pseudorange_m / GALILEO_C_m_s; // 2- compute the clock drift using the clock model (broadcast) for this SV SV_clock_bias_s = galileo_ephemeris_iter->second.sv_clock_drift(Tx_time); @@ -130,10 +130,10 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do satpos(1,obs_counter) = galileo_ephemeris_iter->second.d_satpos_Y; satpos(2,obs_counter) = galileo_ephemeris_iter->second.d_satpos_Z; - // 5- fill the observations vector with the corrected pseudoranges - obs(obs_counter) = gnss_pseudoranges_iter->second.Pseudorange_m + SV_clock_bias_s * GALILEO_C_m_s; + // 5- fill the observations vector with the corrected observables + obs(obs_counter) = gnss_observables_iter->second.Pseudorange_m + SV_clock_bias_s * GALILEO_C_m_s; d_visible_satellites_IDs[valid_obs] = galileo_ephemeris_iter->second.i_satellite_PRN; - d_visible_satellites_CN0_dB[valid_obs] = gnss_pseudoranges_iter->second.CN0_dB_hz; + d_visible_satellites_CN0_dB[valid_obs] = gnss_observables_iter->second.CN0_dB_hz; valid_obs++; Galileo_week_number = galileo_ephemeris_iter->second.WN_5; //for GST @@ -152,18 +152,18 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // no valid pseudorange for the current SV W(obs_counter, obs_counter) = 0; // SV de-activated obs(obs_counter) = 1; // to avoid algorithm problems (divide by zero) - DLOG(INFO) << "No ephemeris data for SV " << gnss_pseudoranges_iter->second.PRN; + DLOG(INFO) << "No ephemeris data for SV " << gnss_observables_iter->second.PRN; } } - else if(gnss_pseudoranges_iter->second.System == 'G') + else if(gnss_observables_iter->second.System == 'G') { - //std::cout << "Satellite System: " << gnss_pseudoranges_iter->second.System <second.System <second.Signal); + std::string sig_(gnss_observables_iter->second.Signal); if(sig_.compare("1C") == 0) { - gps_ephemeris_iter = gps_ephemeris_map.find(gnss_pseudoranges_iter->second.PRN); + gps_ephemeris_iter = gps_ephemeris_map.find(gnss_observables_iter->second.PRN); if (gps_ephemeris_iter != gps_ephemeris_map.end()) { /*! @@ -174,7 +174,7 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // COMMON RX TIME PVT ALGORITHM MODIFICATION (Like RINEX files) // first estimate of transmit time double Rx_time = hybrid_current_time; - double Tx_time = Rx_time - gnss_pseudoranges_iter->second.Pseudorange_m / GPS_C_m_s; + double Tx_time = Rx_time - gnss_observables_iter->second.Pseudorange_m / GPS_C_m_s; // 2- compute the clock drift using the clock model (broadcast) for this SV SV_clock_bias_s = gps_ephemeris_iter->second.sv_clock_drift(Tx_time); @@ -187,10 +187,10 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do satpos(1, obs_counter) = gps_ephemeris_iter->second.d_satpos_Y; satpos(2, obs_counter) = gps_ephemeris_iter->second.d_satpos_Z; - // 5- fill the observations vector with the corrected pseudoranges - obs(obs_counter) = gnss_pseudoranges_iter->second.Pseudorange_m + SV_clock_bias_s * GPS_C_m_s; + // 5- fill the observations vector with the corrected observables + obs(obs_counter) = gnss_observables_iter->second.Pseudorange_m + SV_clock_bias_s * GPS_C_m_s; d_visible_satellites_IDs[valid_obs] = gps_ephemeris_iter->second.i_satellite_PRN; - d_visible_satellites_CN0_dB[valid_obs] = gnss_pseudoranges_iter->second.CN0_dB_hz; + d_visible_satellites_CN0_dB[valid_obs] = gnss_observables_iter->second.CN0_dB_hz; valid_obs++; GPS_week = gps_ephemeris_iter->second.i_GPS_week; @@ -206,12 +206,12 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // no valid pseudorange for the current SV W(obs_counter, obs_counter) = 0; // SV de-activated obs(obs_counter) = 1; // to avoid algorithm problems (divide by zero) - DLOG(INFO) << "No ephemeris data for SV " << gnss_pseudoranges_iter->second.PRN; + DLOG(INFO) << "No ephemeris data for SV " << gnss_observables_iter->second.PRN; } } if(sig_.compare("2S") == 0) { - gps_cnav_ephemeris_iter = gps_cnav_ephemeris_map.find(gnss_pseudoranges_iter->second.PRN); + gps_cnav_ephemeris_iter = gps_cnav_ephemeris_map.find(gnss_observables_iter->second.PRN); if (gps_cnav_ephemeris_iter != gps_cnav_ephemeris_map.end()) { /*! @@ -222,7 +222,7 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // COMMON RX TIME PVT ALGORITHM MODIFICATION (Like RINEX files) // first estimate of transmit time double Rx_time = hybrid_current_time; - double Tx_time = Rx_time - gnss_pseudoranges_iter->second.Pseudorange_m / GPS_C_m_s; + double Tx_time = Rx_time - gnss_observables_iter->second.Pseudorange_m / GPS_C_m_s; // 2- compute the clock drift using the clock model (broadcast) for this SV SV_clock_bias_s = gps_cnav_ephemeris_iter->second.sv_clock_drift(Tx_time); @@ -235,10 +235,10 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do satpos(1, obs_counter) = gps_cnav_ephemeris_iter->second.d_satpos_Y; satpos(2, obs_counter) = gps_cnav_ephemeris_iter->second.d_satpos_Z; - // 5- fill the observations vector with the corrected pseudoranges - obs(obs_counter) = gnss_pseudoranges_iter->second.Pseudorange_m + SV_clock_bias_s * GPS_C_m_s; + // 5- fill the observations vector with the corrected observables + obs(obs_counter) = gnss_observables_iter->second.Pseudorange_m + SV_clock_bias_s * GPS_C_m_s; d_visible_satellites_IDs[valid_obs] = gps_cnav_ephemeris_iter->second.i_satellite_PRN; - d_visible_satellites_CN0_dB[valid_obs] = gnss_pseudoranges_iter->second.CN0_dB_hz; + d_visible_satellites_CN0_dB[valid_obs] = gnss_observables_iter->second.CN0_dB_hz; valid_obs++; GPS_week = gps_cnav_ephemeris_iter->second.i_GPS_week; @@ -254,7 +254,7 @@ bool hybrid_ls_pvt::get_PVT(std::map gnss_pseudoranges_map, do // no valid pseudorange for the current SV W(obs_counter, obs_counter) = 0; // SV de-activated obs(obs_counter) = 1; // to avoid algorithm problems (divide by zero) - DLOG(INFO) << "No ephemeris data for SV " << gnss_pseudoranges_iter->second.PRN; + DLOG(INFO) << "No ephemeris data for SV " << gnss_observables_iter->second.PRN; } } } diff --git a/src/algorithms/PVT/libs/hybrid_ls_pvt.h b/src/algorithms/PVT/libs/hybrid_ls_pvt.h index e078cf6e1..6cc9fe76f 100644 --- a/src/algorithms/PVT/libs/hybrid_ls_pvt.h +++ b/src/algorithms/PVT/libs/hybrid_ls_pvt.h @@ -41,10 +41,6 @@ #include "gps_navigation_message.h" #include "gps_cnav_navigation_message.h" #include "gnss_synchro.h" -//#include "galileo_ephemeris.h" -//#include "galileo_utc_model.h" -//#include "gps_ephemeris.h" -//#include "gps_utc_model.h" /*! @@ -56,17 +52,13 @@ public: hybrid_ls_pvt(int nchannels,std::string dump_filename, bool flag_dump_to_file); ~hybrid_ls_pvt(); - bool get_PVT(std::map gnss_pseudoranges_map, double hybrid_current_time, bool flag_averaging); + bool get_PVT(std::map gnss_observables_map, double hybrid_current_time, bool flag_averaging); int d_nchannels; //!< Number of available channels for positioning - //int d_valid_GPS_obs; //!< Number of valid GPS pseudorange observations (valid GPS satellites) -- used for hybrid configuration - //int d_valid_GAL_obs; //!< Number of valid GALILEO pseudorange observations (valid GALILEO satellites) -- used for hybrid configuration - - //Galileo_Navigation_Message* d_Gal_ephemeris; - //Gps_Navigation_Message* d_GPS_ephemeris; std::map galileo_ephemeris_map; //!< Map storing new Galileo_Ephemeris std::map gps_ephemeris_map; //!< Map storing new GPS_Ephemeris std::map gps_cnav_ephemeris_map; + Galileo_Utc_Model galileo_utc_model; Galileo_Iono galileo_iono; Galileo_Almanac galileo_almanac; diff --git a/src/algorithms/PVT/libs/rinex_printer.cc b/src/algorithms/PVT/libs/rinex_printer.cc index 8f5d43a05..71cf04bf3 100644 --- a/src/algorithms/PVT/libs/rinex_printer.cc +++ b/src/algorithms/PVT/libs/rinex_printer.cc @@ -3634,7 +3634,7 @@ void Rinex_Printer::update_obs_header(std::fstream& out, const Galileo_Utc_Model } -void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, const double obs_time, const std::map& pseudoranges) +void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, const double obs_time, const std::map& observables) { // RINEX observations timestamps are GPS timestamps. std::string line; @@ -3692,21 +3692,21 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c line += std::string(1, '0'); //Number of satellites observed in current epoch int numSatellitesObserved = 0; - std::map::const_iterator pseudoranges_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + std::map::const_iterator observables_iter; + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { numSatellitesObserved++; } line += Rinex_Printer::rightJustify(boost::lexical_cast(numSatellitesObserved), 3); - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { line += satelliteSystem["GPS"]; - if (static_cast(pseudoranges_iter->second.PRN) < 10) line += std::string(1, '0'); - line += boost::lexical_cast(static_cast(pseudoranges_iter->second.PRN)); + if (static_cast(observables_iter->second.PRN) < 10) line += std::string(1, '0'); + line += boost::lexical_cast(static_cast(observables_iter->second.PRN)); } // Receiver clock offset (optional) //line += rightJustify(asString(clockOffset, 12), 15); @@ -3715,16 +3715,16 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c out << line << std::endl; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { std::string lineObs; lineObs.clear(); line.clear(); // GPS L1 PSEUDORANGE line += std::string(2, ' '); - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Pseudorange_m, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Pseudorange_m, 3), 14); //Loss of lock indicator (LLI) int lli = 0; // Include in the observation!! @@ -3738,10 +3738,10 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c } // Signal Strength Indicator (SSI) - int ssi = Rinex_Printer::signalStrength(pseudoranges_iter->second.CN0_dB_hz); + int ssi = Rinex_Printer::signalStrength(observables_iter->second.CN0_dB_hz); lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L1 CA PHASE - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3752,7 +3752,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c } lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L1 CA DOPPLER - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_Doppler_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_Doppler_hz, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3763,7 +3763,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c } lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); //GPS L1 SIGNAL STRENGTH - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.CN0_dB_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.CN0_dB_hz, 3), 14); if (lineObs.size() < 80) lineObs += std::string(80 - lineObs.size(), ' '); out << lineObs << std::endl; } @@ -3798,10 +3798,10 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c //Number of satellites observed in current epoch int numSatellitesObserved = 0; - std::map::const_iterator pseudoranges_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + std::map::const_iterator observables_iter; + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { numSatellitesObserved++; } @@ -3815,17 +3815,17 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c Rinex_Printer::lengthCheck(line); out << line << std::endl; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { std::string lineObs; lineObs.clear(); lineObs += satelliteSystem["GPS"]; - if (static_cast(pseudoranges_iter->second.PRN) < 10) lineObs += std::string(1, '0'); - lineObs += boost::lexical_cast(static_cast(pseudoranges_iter->second.PRN)); + if (static_cast(observables_iter->second.PRN) < 10) lineObs += std::string(1, '0'); + lineObs += boost::lexical_cast(static_cast(observables_iter->second.PRN)); //lineObs += std::string(2, ' '); - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Pseudorange_m, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Pseudorange_m, 3), 14); //Loss of lock indicator (LLI) int lli = 0; // Include in the observation!! @@ -3839,11 +3839,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c } // Signal Strength Indicator (SSI) - int ssi = Rinex_Printer::signalStrength(pseudoranges_iter->second.CN0_dB_hz); + int ssi = Rinex_Printer::signalStrength(observables_iter->second.CN0_dB_hz); lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L1 CA PHASE - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3855,7 +3855,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L1 CA DOPPLER - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_Doppler_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_Doppler_hz, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3868,7 +3868,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); //GPS L1 SIGNAL STRENGTH - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.CN0_dB_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.CN0_dB_hz, 3), 14); if (lineObs.size() < 80) lineObs += std::string(80 - lineObs.size(), ' '); out << lineObs << std::endl; @@ -3877,7 +3877,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& eph, c } -void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & eph, double obs_time, const std::map & pseudoranges) +void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & eph, double obs_time, const std::map & observables) { // RINEX observations timestamps are GPS timestamps. std::string line; @@ -3920,10 +3920,10 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & //Number of satellites observed in current epoch int numSatellitesObserved = 0; - std::map::const_iterator pseudoranges_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + std::map::const_iterator observables_iter; + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { numSatellitesObserved++; } @@ -3936,18 +3936,18 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & Rinex_Printer::lengthCheck(line); out << line << std::endl; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { std::string lineObs; lineObs.clear(); lineObs += satelliteSystem["GPS"]; - if (static_cast(pseudoranges_iter->second.PRN) < 10) lineObs += std::string(1, '0'); - lineObs += boost::lexical_cast(static_cast(pseudoranges_iter->second.PRN)); + if (static_cast(observables_iter->second.PRN) < 10) lineObs += std::string(1, '0'); + lineObs += boost::lexical_cast(static_cast(observables_iter->second.PRN)); //lineObs += std::string(2, ' '); //GPS L2 PSEUDORANGE - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Pseudorange_m, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Pseudorange_m, 3), 14); //Loss of lock indicator (LLI) int lli = 0; // Include in the observation!! @@ -3961,11 +3961,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & } // Signal Strength Indicator (SSI) - int ssi = Rinex_Printer::signalStrength(pseudoranges_iter->second.CN0_dB_hz); + int ssi = Rinex_Printer::signalStrength(observables_iter->second.CN0_dB_hz); lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L2 PHASE - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3977,7 +3977,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // GPS L2 DOPPLER - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_Doppler_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_Doppler_hz, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -3990,7 +3990,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); //GPS L2 SIGNAL STRENGTH - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.CN0_dB_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.CN0_dB_hz, 3), 14); if (lineObs.size() < 80) lineObs += std::string(80 - lineObs.size(), ' '); out << lineObs << std::endl; @@ -3998,7 +3998,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & } -void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, const Gps_CNAV_Ephemeris & eph_cnav, double obs_time, const std::map & pseudoranges) +void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, const Gps_CNAV_Ephemeris & eph_cnav, double obs_time, const std::map & observables) { if(eph_cnav.d_i_0){} // avoid warning, not needed // RINEX observations timestamps are GPS timestamps. @@ -4043,34 +4043,34 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, //Number of satellites observed in current epoch //Get maps with GPS L1 and L2 observations - std::map pseudorangesL1; - std::map pseudorangesL2; - std::map::const_iterator pseudoranges_iter; - std::map::const_iterator pseudoranges_iter2; + std::map observablesL1; + std::map observablesL2; + std::map::const_iterator observables_iter; + std::map::const_iterator observables_iter2; std::multimap total_mmap; std::multimap::iterator mmap_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesL1.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); - total_mmap.insert(std::pair(pseudoranges_iter->second.PRN, pseudoranges_iter->second)); + observablesL1.insert(std::pair(observables_iter->first, observables_iter->second)); + total_mmap.insert(std::pair(observables_iter->second.PRN, observables_iter->second)); } if((system_.compare("G") == 0) && (sig_.compare("2S") == 0)) { - pseudorangesL2.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); - mmap_iter = total_mmap.find(pseudoranges_iter->second.PRN); + observablesL2.insert(std::pair(observables_iter->first, observables_iter->second)); + mmap_iter = total_mmap.find(observables_iter->second.PRN); if(mmap_iter == total_mmap.end()) { Gnss_Synchro gs = Gnss_Synchro(); - total_mmap.insert(std::pair(pseudoranges_iter->second.PRN, gs)); + total_mmap.insert(std::pair(observables_iter->second.PRN, gs)); } - total_mmap.insert(std::pair(pseudoranges_iter->second.PRN, pseudoranges_iter->second)); + total_mmap.insert(std::pair(observables_iter->second.PRN, observables_iter->second)); } } @@ -4095,11 +4095,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, std::set available_prns; std::set::iterator it; - for(pseudoranges_iter = pseudorangesL1.begin(); - pseudoranges_iter != pseudorangesL1.end(); - pseudoranges_iter++) + for(observables_iter = observablesL1.begin(); + observables_iter != observablesL1.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; + unsigned int prn_ = observables_iter->second.PRN; it = available_prns.find(prn_); if(it == available_prns.end()) { @@ -4107,11 +4107,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, } } - for(pseudoranges_iter = pseudorangesL2.begin(); - pseudoranges_iter != pseudorangesL2.end(); - pseudoranges_iter++) + for(observables_iter = observablesL2.begin(); + observables_iter != observablesL2.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; + unsigned int prn_ = observables_iter->second.PRN; it = available_prns.find(prn_); if(it == available_prns.end()) { @@ -4191,7 +4191,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, } -void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& eph, double obs_time, const std::map& pseudoranges, const std::string galileo_bands) +void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& eph, double obs_time, const std::map& observables, const std::string galileo_bands) { // RINEX observations timestamps are Galileo timestamps. // See http://gage14.upc.es/gLAB/HTML/Observation_Rinex_v3.01.html @@ -4236,28 +4236,28 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep //Number of satellites observed in current epoch //Get maps with Galileo observations - std::map pseudorangesE1B; - std::map pseudorangesE5A; - std::map pseudorangesE5B; - std::map::const_iterator pseudoranges_iter; + std::map observablesE1B; + std::map observablesE5A; + std::map observablesE5B; + std::map::const_iterator observables_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("E") == 0) && (sig_.compare("1B") == 0)) { - pseudorangesE1B.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE1B.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("E") == 0) && (sig_.compare("5X") == 0)) { - pseudorangesE5A.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE5A.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("E") == 0) && (sig_.compare("7X") == 0)) { - pseudorangesE5B.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE5B.insert(std::pair(observables_iter->first, observables_iter->second)); } } std::size_t found_1B = galileo_bands.find("1B"); @@ -4269,12 +4269,12 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep std::set::iterator it; if(found_1B != std::string::npos) { - for(pseudoranges_iter = pseudorangesE1B.begin(); - pseudoranges_iter != pseudorangesE1B.end(); - pseudoranges_iter++) + for(observables_iter = observablesE1B.begin(); + observables_iter != observablesE1B.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - total_map.insert(std::pair(prn_, pseudoranges_iter->second)); + unsigned int prn_ = observables_iter->second.PRN; + total_map.insert(std::pair(prn_, observables_iter->second)); it = available_prns.find(prn_); if(it == available_prns.end()) { @@ -4284,11 +4284,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep } if(found_E5a != std::string::npos) { - for(pseudoranges_iter = pseudorangesE5A.begin(); - pseudoranges_iter != pseudorangesE5A.end(); - pseudoranges_iter++) + for(observables_iter = observablesE5A.begin(); + observables_iter != observablesE5A.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; + unsigned int prn_ = observables_iter->second.PRN; it = available_prns.find(prn_); if(it == available_prns.end()) { @@ -4304,16 +4304,16 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep total_map.insert(std::pair(prn_, gs)); } } - total_map.insert(std::pair(prn_, pseudoranges_iter->second)); + total_map.insert(std::pair(prn_, observables_iter->second)); } } if(found_E5b != std::string::npos) { - for(pseudoranges_iter = pseudorangesE5B.begin(); - pseudoranges_iter != pseudorangesE5B.end(); - pseudoranges_iter++) + for(observables_iter = observablesE5B.begin(); + observables_iter != observablesE5B.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; + unsigned int prn_ = observables_iter->second.PRN; it = available_prns.find(prn_); if(it == available_prns.end()) { @@ -4356,7 +4356,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep } } } - total_map.insert(std::pair(prn_, pseudoranges_iter->second)); + total_map.insert(std::pair(prn_, observables_iter->second)); } } int numSatellitesObserved = available_prns.size(); @@ -4431,7 +4431,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Galileo_Ephemeris& ep } -void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_eph, const Galileo_Ephemeris& galileo_eph, double gps_obs_time, const std::map& pseudoranges) +void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_eph, const Galileo_Ephemeris& galileo_eph, double gps_obs_time, const std::map& observables) { if(galileo_eph.e_1){} // avoid warning, not needed std::string line; @@ -4475,45 +4475,45 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep //Number of satellites observed in current epoch //Get maps with observations - std::map pseudorangesG1C; - std::map pseudorangesE1B; - std::map pseudorangesE5A; - std::map pseudorangesE5B; - std::map::const_iterator pseudoranges_iter; + std::map observablesG1C; + std::map observablesE1B; + std::map observablesE5A; + std::map observablesE5B; + std::map::const_iterator observables_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("E") == 0) && (sig_.compare("1B") == 0)) { - pseudorangesE1B.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE1B.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("E") == 0) && (sig_.compare("5X") == 0)) { - pseudorangesE5A.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE5A.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("E") == 0) && (sig_.compare("7X") == 0)) { - pseudorangesE5B.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesE5B.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesG1C.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesG1C.insert(std::pair(observables_iter->first, observables_iter->second)); } } std::multimap total_gal_map; std::set available_gal_prns; std::set::iterator it; - for(pseudoranges_iter = pseudorangesE1B.begin(); - pseudoranges_iter != pseudorangesE1B.end(); - pseudoranges_iter++) + for(observables_iter = observablesE1B.begin(); + observables_iter != observablesE1B.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - total_gal_map.insert(std::pair(prn_, pseudoranges_iter->second)); + unsigned int prn_ = observables_iter->second.PRN; + total_gal_map.insert(std::pair(prn_, observables_iter->second)); it = available_gal_prns.find(prn_); if(it == available_gal_prns.end()) { @@ -4521,12 +4521,12 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep } } - for(pseudoranges_iter = pseudorangesE5A.begin(); - pseudoranges_iter != pseudorangesE5A.end(); - pseudoranges_iter++) + for(observables_iter = observablesE5A.begin(); + observables_iter != observablesE5A.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - total_gal_map.insert(std::pair(prn_, pseudoranges_iter->second)); + unsigned int prn_ = observables_iter->second.PRN; + total_gal_map.insert(std::pair(prn_, observables_iter->second)); it = available_gal_prns.find(prn_); if(it == available_gal_prns.end()) { @@ -4534,12 +4534,12 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep } } - for(pseudoranges_iter = pseudorangesE5B.begin(); - pseudoranges_iter != pseudorangesE5B.end(); - pseudoranges_iter++) + for(observables_iter = observablesE5B.begin(); + observables_iter != observablesE5B.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - total_gal_map.insert(std::pair(prn_, pseudoranges_iter->second)); + unsigned int prn_ = observables_iter->second.PRN; + total_gal_map.insert(std::pair(prn_, observables_iter->second)); it = available_gal_prns.find(prn_); if(it == available_gal_prns.end()) { @@ -4548,7 +4548,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep } int numGalSatellitesObserved = available_gal_prns.size(); - int numGpsSatellitesObserved = pseudorangesG1C.size(); + int numGpsSatellitesObserved = observablesG1C.size(); int numSatellitesObserved = numGalSatellitesObserved + numGpsSatellitesObserved; line += Rinex_Printer::rightJustify(boost::lexical_cast(numSatellitesObserved), 3); @@ -4561,18 +4561,18 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep std::string s; std::string lineObs; - for(pseudoranges_iter = pseudorangesG1C.begin(); - pseudoranges_iter != pseudorangesG1C.end(); - pseudoranges_iter++) + for(observables_iter = observablesG1C.begin(); + observables_iter != observablesG1C.end(); + observables_iter++) { lineObs.clear(); - s.assign(1, pseudoranges_iter->second.System); + s.assign(1, observables_iter->second.System); if(s.compare("G") == 0) lineObs += satelliteSystem["GPS"]; if(s.compare("E") == 0) lineObs += satelliteSystem["Galileo"]; // should not happen - if (static_cast(pseudoranges_iter->second.PRN) < 10) lineObs += std::string(1, '0'); - lineObs += boost::lexical_cast(static_cast(pseudoranges_iter->second.PRN)); - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Pseudorange_m, 3), 14); + if (static_cast(observables_iter->second.PRN) < 10) lineObs += std::string(1, '0'); + lineObs += boost::lexical_cast(static_cast(observables_iter->second.PRN)); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Pseudorange_m, 3), 14); //Loss of lock indicator (LLI) int lli = 0; // Include in the observation!! @@ -4586,11 +4586,11 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep } // Signal Strength Indicator (SSI) - int ssi = Rinex_Printer::signalStrength(pseudoranges_iter->second.CN0_dB_hz); + int ssi = Rinex_Printer::signalStrength(observables_iter->second.CN0_dB_hz); lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // PHASE - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_phase_rads/GPS_TWO_PI, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -4602,7 +4602,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // DOPPLER - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.Carrier_Doppler_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.Carrier_Doppler_hz, 3), 14); if (lli == 0) { lineObs += std::string(1, ' '); @@ -4614,7 +4614,7 @@ void Rinex_Printer::log_rinex_obs(std::fstream& out, const Gps_Ephemeris& gps_ep lineObs += Rinex_Printer::rightJustify(Rinex_Printer::asString(ssi), 1); // SIGNAL STRENGTH - lineObs += Rinex_Printer::rightJustify(asString(pseudoranges_iter->second.CN0_dB_hz, 3), 14); + lineObs += Rinex_Printer::rightJustify(asString(observables_iter->second.CN0_dB_hz, 3), 14); if (lineObs.size() < 80) lineObs += std::string(80 - lineObs.size(), ' '); out << lineObs << std::endl; diff --git a/src/algorithms/PVT/libs/rinex_printer.h b/src/algorithms/PVT/libs/rinex_printer.h index a722ba9ed..f90a2f5e4 100644 --- a/src/algorithms/PVT/libs/rinex_printer.h +++ b/src/algorithms/PVT/libs/rinex_printer.h @@ -184,27 +184,27 @@ public: /*! * \brief Writes GPS L1 observables into the RINEX file */ - void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, double obs_time, const std::map & pseudoranges); + void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, double obs_time, const std::map & observables); /*! * \brief Writes GPS L2 observables into the RINEX file */ - void log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & eph, double obs_time, const std::map & pseudoranges); + void log_rinex_obs(std::fstream & out, const Gps_CNAV_Ephemeris & eph, double obs_time, const std::map & observables); /*! * \brief Writes dual frequency GPS L1 and L2 observables into the RINEX file */ - void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, const Gps_CNAV_Ephemeris & eph_cnav, double obs_time, const std::map & pseudoranges); + void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & eph, const Gps_CNAV_Ephemeris & eph_cnav, double obs_time, const std::map & observables); /*! * \brief Writes Galileo observables into the RINEX file. Example: galileo_bands("1B"), galileo_bands("1B 5X"), galileo_bands("5X"), ... Default: "1B". */ - void log_rinex_obs(std::fstream & out, const Galileo_Ephemeris & eph, double obs_time, const std::map & pseudoranges, const std::string galileo_bands = "1B"); + void log_rinex_obs(std::fstream & out, const Galileo_Ephemeris & eph, double obs_time, const std::map & observables, const std::string galileo_bands = "1B"); /*! * \brief Writes Mixed GPS / Galileo observables into the RINEX file */ - void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & gps_eph, const Galileo_Ephemeris & galileo_eph, const double gps_obs_time, const std::map & pseudoranges); + void log_rinex_obs(std::fstream & out, const Gps_Ephemeris & gps_eph, const Galileo_Ephemeris & galileo_eph, const double gps_obs_time, const std::map & observables); /*! * \brief Represents GPS time in the date time format. Leap years are considered, but leap seconds are not. diff --git a/src/algorithms/PVT/libs/rtcm_printer.cc b/src/algorithms/PVT/libs/rtcm_printer.cc index a73816560..4832a4252 100644 --- a/src/algorithms/PVT/libs/rtcm_printer.cc +++ b/src/algorithms/PVT/libs/rtcm_printer.cc @@ -145,17 +145,17 @@ Rtcm_Printer::~Rtcm_Printer() } -bool Rtcm_Printer::Print_Rtcm_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & pseudoranges) +bool Rtcm_Printer::Print_Rtcm_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & observables) { - std::string m1001 = rtcm->print_MT1001(gps_eph, obs_time, pseudoranges, station_id); + std::string m1001 = rtcm->print_MT1001(gps_eph, obs_time, observables, station_id); Rtcm_Printer::Print_Message(m1001); return true; } -bool Rtcm_Printer::Print_Rtcm_MT1002(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & pseudoranges) +bool Rtcm_Printer::Print_Rtcm_MT1002(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & observables) { - std::string m1002 = rtcm->print_MT1002(gps_eph, obs_time, pseudoranges, station_id); + std::string m1002 = rtcm->print_MT1002(gps_eph, obs_time, observables, station_id); Rtcm_Printer::Print_Message(m1002); return true; } @@ -181,7 +181,7 @@ bool Rtcm_Printer::Print_Rtcm_MSM(unsigned int msm_number, const Gps_Ephemeris & const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, int smooth_int, @@ -191,31 +191,31 @@ bool Rtcm_Printer::Print_Rtcm_MSM(unsigned int msm_number, const Gps_Ephemeris & std::string msm; if(msm_number == 1) { - msm = rtcm->print_MSM_1(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_1(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 2) { - msm = rtcm->print_MSM_2(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_2(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 3) { - msm = rtcm->print_MSM_3(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_3(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 4) { - msm = rtcm->print_MSM_4(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_4(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 5) { - msm = rtcm->print_MSM_5(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_5(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 6) { - msm = rtcm->print_MSM_6(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_6(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else if(msm_number == 7) { - msm = rtcm->print_MSM_7(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); + msm = rtcm->print_MSM_7(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables, station_id, clock_steering_indicator, external_clock_indicator, smooth_int, divergence_free, more_messages); } else { diff --git a/src/algorithms/PVT/libs/rtcm_printer.h b/src/algorithms/PVT/libs/rtcm_printer.h index 517c47072..30b4a90fe 100644 --- a/src/algorithms/PVT/libs/rtcm_printer.h +++ b/src/algorithms/PVT/libs/rtcm_printer.h @@ -55,8 +55,8 @@ public: */ ~Rtcm_Printer(); - bool Print_Rtcm_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & pseudoranges); - bool Print_Rtcm_MT1002(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & pseudoranges); + bool Print_Rtcm_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & observables); + bool Print_Rtcm_MT1002(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & observables); bool Print_Rtcm_MT1019(const Gps_Ephemeris & gps_eph); // & pseudoranges, + const std::map & observables, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, int smooth_int, diff --git a/src/core/system_parameters/rtcm.cc b/src/core/system_parameters/rtcm.cc index 52699a5bf..48d21a9c4 100644 --- a/src/core/system_parameters/rtcm.cc +++ b/src/core/system_parameters/rtcm.cc @@ -391,11 +391,11 @@ std::string Rtcm::build_message(const std::string & data) const // // ******************************************************** -std::bitset<64> Rtcm::get_MT1001_4_header(unsigned int msg_number, double obs_time, const std::map & pseudoranges, +std::bitset<64> Rtcm::get_MT1001_4_header(unsigned int msg_number, double obs_time, const std::map & observables, unsigned int ref_id, unsigned int smooth_int, bool sync_flag, bool divergence_free) { unsigned int reference_station_id = ref_id; // Max: 4095 - const std::map pseudoranges_ = pseudoranges; + const std::map observables_ = observables; bool synchronous_GNSS_flag = sync_flag; bool divergence_free_smoothing_indicator = divergence_free; unsigned int smoothing_interval = smooth_int; @@ -403,7 +403,7 @@ std::bitset<64> Rtcm::get_MT1001_4_header(unsigned int msg_number, double obs_ti Rtcm::set_DF003(reference_station_id); Rtcm::set_DF004(obs_time); Rtcm::set_DF005(synchronous_GNSS_flag); - Rtcm::set_DF006(pseudoranges_); + Rtcm::set_DF006(observables_); Rtcm::set_DF007(divergence_free_smoothing_indicator); Rtcm::set_DF008(smoothing_interval); @@ -440,7 +440,7 @@ std::bitset<58> Rtcm::get_MT1001_sat_content(const Gps_Ephemeris & eph, double o } -std::string Rtcm::print_MT1001(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & pseudoranges, unsigned short station_id) +std::string Rtcm::print_MT1001(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & observables, unsigned short station_id) { unsigned int ref_id = static_cast(station_id); unsigned int smooth_int = 0; @@ -448,29 +448,29 @@ std::string Rtcm::print_MT1001(const Gps_Ephemeris & gps_eph, double obs_time, c bool divergence_free = false; //Get a map with GPS L1 only observations - std::map pseudorangesL1; - std::map::const_iterator pseudoranges_iter; + std::map observablesL1; + std::map::const_iterator observables_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesL1.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL1.insert(std::pair(observables_iter->first, observables_iter->second)); } } - std::bitset<64> header = Rtcm::get_MT1001_4_header(1001, obs_time, pseudorangesL1, ref_id, smooth_int, sync_flag, divergence_free); + std::bitset<64> header = Rtcm::get_MT1001_4_header(1001, obs_time, observablesL1, ref_id, smooth_int, sync_flag, divergence_free); std::string data = header.to_string(); - for(pseudoranges_iter = pseudorangesL1.begin(); - pseudoranges_iter != pseudorangesL1.end(); - pseudoranges_iter++) + for(observables_iter = observablesL1.begin(); + observables_iter != observablesL1.end(); + observables_iter++) { - std::bitset<58> content = Rtcm::get_MT1001_sat_content(gps_eph, obs_time, pseudoranges_iter->second); + std::bitset<58> content = Rtcm::get_MT1001_sat_content(gps_eph, obs_time, observables_iter->second); data += content.to_string(); } @@ -490,7 +490,7 @@ std::string Rtcm::print_MT1001(const Gps_Ephemeris & gps_eph, double obs_time, c // // ******************************************************** -std::string Rtcm::print_MT1002(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & pseudoranges, unsigned short station_id) +std::string Rtcm::print_MT1002(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & observables, unsigned short station_id) { unsigned int ref_id = static_cast(station_id); unsigned int smooth_int = 0; @@ -498,29 +498,29 @@ std::string Rtcm::print_MT1002(const Gps_Ephemeris & gps_eph, double obs_time, c bool divergence_free = false; //Get a map with GPS L1 only observations - std::map pseudorangesL1; - std::map::const_iterator pseudoranges_iter; + std::map observablesL1; + std::map::const_iterator observables_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesL1.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL1.insert(std::pair(observables_iter->first, observables_iter->second)); } } - std::bitset<64> header = Rtcm::get_MT1001_4_header(1002, obs_time, pseudorangesL1, ref_id, smooth_int, sync_flag, divergence_free); + std::bitset<64> header = Rtcm::get_MT1001_4_header(1002, obs_time, observablesL1, ref_id, smooth_int, sync_flag, divergence_free); std::string data = header.to_string(); - for(pseudoranges_iter = pseudorangesL1.begin(); - pseudoranges_iter != pseudorangesL1.end(); - pseudoranges_iter++) + for(observables_iter = observablesL1.begin(); + observables_iter != observablesL1.end(); + observables_iter++) { - std::bitset<74> content = Rtcm::get_MT1002_sat_content(gps_eph, obs_time, pseudoranges_iter->second); + std::bitset<74> content = Rtcm::get_MT1002_sat_content(gps_eph, obs_time, observables_iter->second); data += content.to_string(); } @@ -562,7 +562,7 @@ std::bitset<74> Rtcm::get_MT1002_sat_content(const Gps_Ephemeris & eph, double o // // ******************************************************** -std::string Rtcm::print_MT1003(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & pseudoranges, unsigned short station_id) +std::string Rtcm::print_MT1003(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & observables, unsigned short station_id) { unsigned int ref_id = static_cast(station_id); unsigned int smooth_int = 0; @@ -570,61 +570,61 @@ std::string Rtcm::print_MT1003(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephem bool divergence_free = false; //Get maps with GPS L1 and L2 observations - std::map pseudorangesL1; - std::map pseudorangesL2; - std::map::const_iterator pseudoranges_iter; - std::map::const_iterator pseudoranges_iter2; + std::map observablesL1; + std::map observablesL2; + std::map::const_iterator observables_iter; + std::map::const_iterator observables_iter2; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesL1.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL1.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("G") == 0) && (sig_.compare("2S") == 0)) { - pseudorangesL2.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL2.insert(std::pair(observables_iter->first, observables_iter->second)); } } // Get common observables - std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > > common_pseudoranges; - std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > >::const_iterator common_pseudoranges_iter; - std::map pseudorangesL1_with_L2; + std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > > common_observables; + std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > >::const_iterator common_observables_iter; + std::map observablesL1_with_L2; - for(pseudoranges_iter = pseudorangesL1.begin(); - pseudoranges_iter != pseudorangesL1.end(); - pseudoranges_iter++) + for(observables_iter = observablesL1.begin(); + observables_iter != observablesL1.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - for(pseudoranges_iter2 = pseudorangesL2.begin(); - pseudoranges_iter2 != pseudorangesL2.end(); - pseudoranges_iter2++) + unsigned int prn_ = observables_iter->second.PRN; + for(observables_iter2 = observablesL2.begin(); + observables_iter2 != observablesL2.end(); + observables_iter2++) { - if(pseudoranges_iter2->second.PRN == prn_) + if(observables_iter2->second.PRN == prn_) { std::pair p; - Gnss_Synchro pr1 = pseudoranges_iter->second; - Gnss_Synchro pr2 = pseudoranges_iter2->second; + Gnss_Synchro pr1 = observables_iter->second; + Gnss_Synchro pr2 = observables_iter2->second; p = std::make_pair(pr1, pr2); - common_pseudoranges.push_back(p); - pseudorangesL1_with_L2.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + common_observables.push_back(p); + observablesL1_with_L2.insert(std::pair(observables_iter->first, observables_iter->second)); } } } - std::bitset<64> header = Rtcm::get_MT1001_4_header(1003, obs_time, pseudorangesL1_with_L2, ref_id, smooth_int, sync_flag, divergence_free); + std::bitset<64> header = Rtcm::get_MT1001_4_header(1003, obs_time, observablesL1_with_L2, ref_id, smooth_int, sync_flag, divergence_free); std::string data = header.to_string(); - for(common_pseudoranges_iter = common_pseudoranges.begin(); - common_pseudoranges_iter != common_pseudoranges.end(); - common_pseudoranges_iter++) + for(common_observables_iter = common_observables.begin(); + common_observables_iter != common_observables.end(); + common_observables_iter++) { - std::bitset<101> content = Rtcm::get_MT1003_sat_content(ephL1, ephL2, obs_time, common_pseudoranges_iter->first, common_pseudoranges_iter->second); + std::bitset<101> content = Rtcm::get_MT1003_sat_content(ephL1, ephL2, obs_time, common_observables_iter->first, common_observables_iter->second); data += content.to_string(); } @@ -672,7 +672,7 @@ std::bitset<101> Rtcm::get_MT1003_sat_content(const Gps_Ephemeris & ephL1, const // // ****************************************************************** -std::string Rtcm::print_MT1004(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & pseudoranges, unsigned short station_id) +std::string Rtcm::print_MT1004(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & observables, unsigned short station_id) { unsigned int ref_id = static_cast(station_id); unsigned int smooth_int = 0; @@ -680,61 +680,61 @@ std::string Rtcm::print_MT1004(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephem bool divergence_free = false; //Get maps with GPS L1 and L2 observations - std::map pseudorangesL1; - std::map pseudorangesL2; - std::map::const_iterator pseudoranges_iter; - std::map::const_iterator pseudoranges_iter2; + std::map observablesL1; + std::map observablesL2; + std::map::const_iterator observables_iter; + std::map::const_iterator observables_iter2; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string system_(&pseudoranges_iter->second.System, 1); - std::string sig_(pseudoranges_iter->second.Signal); + std::string system_(&observables_iter->second.System, 1); + std::string sig_(observables_iter->second.Signal); if((system_.compare("G") == 0) && (sig_.compare("1C") == 0)) { - pseudorangesL1.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL1.insert(std::pair(observables_iter->first, observables_iter->second)); } if((system_.compare("G") == 0) && (sig_.compare("2S") == 0)) { - pseudorangesL2.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + observablesL2.insert(std::pair(observables_iter->first, observables_iter->second)); } } // Get common observables - std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > > common_pseudoranges; - std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > >::const_iterator common_pseudoranges_iter; - std::map pseudorangesL1_with_L2; + std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > > common_observables; + std::vector< std::pair< Gnss_Synchro, Gnss_Synchro > >::const_iterator common_observables_iter; + std::map observablesL1_with_L2; - for(pseudoranges_iter = pseudorangesL1.begin(); - pseudoranges_iter != pseudorangesL1.end(); - pseudoranges_iter++) + for(observables_iter = observablesL1.begin(); + observables_iter != observablesL1.end(); + observables_iter++) { - unsigned int prn_ = pseudoranges_iter->second.PRN; - for(pseudoranges_iter2 = pseudorangesL2.begin(); - pseudoranges_iter2 != pseudorangesL2.end(); - pseudoranges_iter2++) + unsigned int prn_ = observables_iter->second.PRN; + for(observables_iter2 = observablesL2.begin(); + observables_iter2 != observablesL2.end(); + observables_iter2++) { - if(pseudoranges_iter2->second.PRN == prn_) + if(observables_iter2->second.PRN == prn_) { std::pair p; - Gnss_Synchro pr1 = pseudoranges_iter->second; - Gnss_Synchro pr2 = pseudoranges_iter2->second; + Gnss_Synchro pr1 = observables_iter->second; + Gnss_Synchro pr2 = observables_iter2->second; p = std::make_pair(pr1, pr2); - common_pseudoranges.push_back(p); - pseudorangesL1_with_L2.insert(std::pair(pseudoranges_iter->first, pseudoranges_iter->second)); + common_observables.push_back(p); + observablesL1_with_L2.insert(std::pair(observables_iter->first, observables_iter->second)); } } } - std::bitset<64> header = Rtcm::get_MT1001_4_header(1004, obs_time, pseudorangesL1_with_L2, ref_id, smooth_int, sync_flag, divergence_free); + std::bitset<64> header = Rtcm::get_MT1001_4_header(1004, obs_time, observablesL1_with_L2, ref_id, smooth_int, sync_flag, divergence_free); std::string data = header.to_string(); - for(common_pseudoranges_iter = common_pseudoranges.begin(); - common_pseudoranges_iter != common_pseudoranges.end(); - common_pseudoranges_iter++) + for(common_observables_iter = common_observables.begin(); + common_observables_iter != common_observables.end(); + common_observables_iter++) { - std::bitset<125> content = Rtcm::get_MT1004_sat_content(ephL1, ephL2, obs_time, common_pseudoranges_iter->first, common_pseudoranges_iter->second); + std::bitset<125> content = Rtcm::get_MT1004_sat_content(ephL1, ephL2, obs_time, common_observables_iter->first, common_observables_iter->second); data += content.to_string(); } @@ -1564,7 +1564,7 @@ int Rtcm::read_MT1045(const std::string & message, Galileo_Ephemeris & gal_eph) // ********************************************************************************************** // -// MESSAGE TYPE MSM1 (COMPACT PSEUDORANGES) +// MESSAGE TYPE MSM1 (COMPACT observables) // // ********************************************************************************************** @@ -1572,7 +1572,7 @@ std::string Rtcm::print_MSM_1( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -1596,7 +1596,7 @@ std::string Rtcm::print_MSM_1( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -1604,9 +1604,9 @@ std::string Rtcm::print_MSM_1( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_1_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_1_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_1_content_signal_data(pseudoranges); + std::string signal_data = Rtcm::get_MSM_1_content_signal_data(observables); std::string message = build_message(header + sat_data + signal_data); @@ -1621,7 +1621,7 @@ std::string Rtcm::print_MSM_1( const Gps_Ephemeris & gps_eph, std::string Rtcm::get_MSM_header(unsigned int msg_number, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -1640,8 +1640,8 @@ std::string Rtcm::get_MSM_header(unsigned int msg_number, Rtcm::set_DF417(divergence_free); Rtcm::set_DF418(smooth_int); - Rtcm::set_DF394(pseudoranges); - Rtcm::set_DF395(pseudoranges); + Rtcm::set_DF394(observables); + Rtcm::set_DF395(observables); std::string header = DF002.to_string() + DF003.to_string(); header += DF004.to_string(); @@ -1654,38 +1654,38 @@ std::string Rtcm::get_MSM_header(unsigned int msg_number, DF418.to_string() + DF394.to_string() + DF395.to_string() + - Rtcm::set_DF396(pseudoranges); + Rtcm::set_DF396(observables); return header; } -std::string Rtcm::get_MSM_1_content_sat_data(const std::map & pseudoranges) +std::string Rtcm::get_MSM_1_content_sat_data(const std::map & observables) { std::string sat_data; sat_data.clear(); - Rtcm::set_DF394(pseudoranges); + Rtcm::set_DF394(observables); unsigned int num_satellites = DF394.count(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator gnss_synchro_iter; std::vector pos; std::vector::iterator it; - for(gnss_synchro_iter = pseudoranges.begin(); - gnss_synchro_iter != pseudoranges.end(); + for(gnss_synchro_iter = observables.begin(); + gnss_synchro_iter != observables.end(); gnss_synchro_iter++) { it = std::find(pos.begin(), pos.end(), 65 - gnss_synchro_iter->second.PRN); if(it == pos.end()) { pos.push_back(65 - gnss_synchro_iter->second.PRN); - pseudoranges_vector.push_back(*gnss_synchro_iter); + observables_vector.push_back(*gnss_synchro_iter); } } - std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(pseudoranges_vector); + std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(observables_vector); for(unsigned int nsat = 0; nsat < num_satellites; nsat++) { @@ -1697,23 +1697,23 @@ std::string Rtcm::get_MSM_1_content_sat_data(const std::map & } -std::string Rtcm::get_MSM_1_content_signal_data(const std::map & pseudoranges) +std::string Rtcm::get_MSM_1_content_signal_data(const std::map & observables) { std::string signal_data; signal_data.clear(); - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -1737,7 +1737,7 @@ std::string Rtcm::print_MSM_2( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -1761,7 +1761,7 @@ std::string Rtcm::print_MSM_2( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -1769,9 +1769,9 @@ std::string Rtcm::print_MSM_2( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_1_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_1_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_2_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_2_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -1783,26 +1783,26 @@ std::string Rtcm::print_MSM_2( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_2_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_2_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; std::string second_data_type; std::string third_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -1832,7 +1832,7 @@ std::string Rtcm::print_MSM_3( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -1856,7 +1856,7 @@ std::string Rtcm::print_MSM_3( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -1864,9 +1864,9 @@ std::string Rtcm::print_MSM_3( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_1_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_1_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_3_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_3_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -1878,7 +1878,7 @@ std::string Rtcm::print_MSM_3( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_3_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_3_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; @@ -1886,19 +1886,19 @@ std::string Rtcm::get_MSM_3_content_signal_data(const Gps_Ephemeris & ephNAV, co std::string third_data_type; std::string fourth_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -1929,7 +1929,7 @@ std::string Rtcm::print_MSM_4( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -1953,7 +1953,7 @@ std::string Rtcm::print_MSM_4( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -1961,9 +1961,9 @@ std::string Rtcm::print_MSM_4( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_4_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_4_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_4_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_4_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -1975,33 +1975,33 @@ std::string Rtcm::print_MSM_4( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_4_content_sat_data(const std::map & pseudoranges) +std::string Rtcm::get_MSM_4_content_sat_data(const std::map & observables) { std::string sat_data; std::string first_data_type; std::string second_data_type; - Rtcm::set_DF394(pseudoranges); + Rtcm::set_DF394(observables); unsigned int num_satellites = DF394.count(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator gnss_synchro_iter; std::vector pos; std::vector::iterator it; - for(gnss_synchro_iter = pseudoranges.begin(); - gnss_synchro_iter != pseudoranges.end(); + for(gnss_synchro_iter = observables.begin(); + gnss_synchro_iter != observables.end(); gnss_synchro_iter++) { it = std::find(pos.begin(), pos.end(), 65 - gnss_synchro_iter->second.PRN); if(it == pos.end()) { pos.push_back(65 - gnss_synchro_iter->second.PRN); - pseudoranges_vector.push_back(*gnss_synchro_iter); + observables_vector.push_back(*gnss_synchro_iter); } } - std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(pseudoranges_vector); + std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(observables_vector); for(unsigned int nsat = 0; nsat < num_satellites; nsat++) { @@ -2015,7 +2015,7 @@ std::string Rtcm::get_MSM_4_content_sat_data(const std::map & } -std::string Rtcm::get_MSM_4_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_4_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; @@ -2024,19 +2024,19 @@ std::string Rtcm::get_MSM_4_content_signal_data(const Gps_Ephemeris & ephNAV, co std::string fourth_data_type; std::string fifth_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -2069,7 +2069,7 @@ std::string Rtcm::print_MSM_5( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -2093,7 +2093,7 @@ std::string Rtcm::print_MSM_5( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -2101,9 +2101,9 @@ std::string Rtcm::print_MSM_5( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_5_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_5_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_5_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_5_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -2115,7 +2115,7 @@ std::string Rtcm::print_MSM_5( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_5_content_sat_data(const std::map & pseudoranges) +std::string Rtcm::get_MSM_5_content_sat_data(const std::map & observables) { std::string sat_data; std::string first_data_type; @@ -2123,27 +2123,27 @@ std::string Rtcm::get_MSM_5_content_sat_data(const std::map & std::string third_data_type; std::string fourth_data_type; - Rtcm::set_DF394(pseudoranges); + Rtcm::set_DF394(observables); unsigned int num_satellites = DF394.count(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator gnss_synchro_iter; std::vector pos; std::vector::iterator it; - for(gnss_synchro_iter = pseudoranges.begin(); - gnss_synchro_iter != pseudoranges.end(); + for(gnss_synchro_iter = observables.begin(); + gnss_synchro_iter != observables.end(); gnss_synchro_iter++) { it = std::find(pos.begin(), pos.end(), 65 - gnss_synchro_iter->second.PRN); if(it == pos.end()) { pos.push_back(65 - gnss_synchro_iter->second.PRN); - pseudoranges_vector.push_back(*gnss_synchro_iter); + observables_vector.push_back(*gnss_synchro_iter); } } - std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(pseudoranges_vector); + std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(observables_vector); for(unsigned int nsat = 0; nsat < num_satellites; nsat++) { @@ -2161,7 +2161,7 @@ std::string Rtcm::get_MSM_5_content_sat_data(const std::map & } -std::string Rtcm::get_MSM_5_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_5_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; @@ -2171,19 +2171,19 @@ std::string Rtcm::get_MSM_5_content_signal_data(const Gps_Ephemeris & ephNAV, co std::string fifth_data_type; std::string sixth_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -2219,7 +2219,7 @@ std::string Rtcm::print_MSM_6( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -2243,7 +2243,7 @@ std::string Rtcm::print_MSM_6( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -2251,9 +2251,9 @@ std::string Rtcm::print_MSM_6( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_4_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_4_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_6_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_6_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -2265,7 +2265,7 @@ std::string Rtcm::print_MSM_6( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_6_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_6_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; @@ -2274,19 +2274,19 @@ std::string Rtcm::get_MSM_6_content_signal_data(const Gps_Ephemeris & ephNAV, co std::string fourth_data_type; std::string fifth_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -2320,7 +2320,7 @@ std::string Rtcm::print_MSM_7( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -2344,7 +2344,7 @@ std::string Rtcm::print_MSM_7( const Gps_Ephemeris & gps_eph, std::string header = Rtcm::get_MSM_header(msg_number, obs_time, - pseudoranges, + observables, ref_id, clock_steering_indicator, external_clock_indicator, @@ -2352,9 +2352,9 @@ std::string Rtcm::print_MSM_7( const Gps_Ephemeris & gps_eph, divergence_free, more_messages); - std::string sat_data = Rtcm::get_MSM_5_content_sat_data(pseudoranges); + std::string sat_data = Rtcm::get_MSM_5_content_sat_data(observables); - std::string signal_data = Rtcm::get_MSM_7_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, pseudoranges); + std::string signal_data = Rtcm::get_MSM_7_content_signal_data(gps_eph, gps_cnav_eph, gal_eph, obs_time, observables); std::string message = build_message(header + sat_data + signal_data); if(server_is_running) @@ -2366,7 +2366,7 @@ std::string Rtcm::print_MSM_7( const Gps_Ephemeris & gps_eph, } -std::string Rtcm::get_MSM_7_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges) +std::string Rtcm::get_MSM_7_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables) { std::string signal_data; std::string first_data_type; @@ -2376,19 +2376,19 @@ std::string Rtcm::get_MSM_7_content_signal_data(const Gps_Ephemeris & ephNAV, co std::string fifth_data_type; std::string sixth_data_type; - unsigned int Ncells = pseudoranges.size(); + unsigned int Ncells = observables.size(); - std::vector > pseudoranges_vector; + std::vector > observables_vector; std::map::const_iterator map_iter; - for(map_iter = pseudoranges.begin(); - map_iter != pseudoranges.end(); + for(map_iter = observables.begin(); + map_iter != observables.end(); map_iter++) { - pseudoranges_vector.push_back(*map_iter); + observables_vector.push_back(*map_iter); } - std::vector > ordered_by_signal = Rtcm::sort_by_signal(pseudoranges_vector); + std::vector > ordered_by_signal = Rtcm::sort_by_signal(observables_vector); std::reverse(ordered_by_signal.begin(), ordered_by_signal.end()); std::vector > ordered_by_PRN_pos = Rtcm::sort_by_PRN_mask(ordered_by_signal); @@ -2769,14 +2769,14 @@ int Rtcm::set_DF005(bool sync_flag) } -int Rtcm::set_DF006(const std::map & pseudoranges) +int Rtcm::set_DF006(const std::map & observables) { //Number of satellites observed in current epoch unsigned short int nsats = 0; - std::map::const_iterator pseudoranges_iter; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + std::map::const_iterator observables_iter; + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { nsats++; } @@ -3623,12 +3623,12 @@ int Rtcm::set_DF395(const std::map & gnss_synchro) } -std::string Rtcm::set_DF396(const std::map & pseudoranges) +std::string Rtcm::set_DF396(const std::map & observables) { std::string DF396; - std::map::const_iterator pseudoranges_iter; - Rtcm::set_DF394(pseudoranges); - Rtcm::set_DF395(pseudoranges); + std::map::const_iterator observables_iter; + Rtcm::set_DF394(observables); + Rtcm::set_DF395(observables); unsigned int num_signals = DF395.count(); unsigned int num_satellites = DF394.count(); @@ -3643,16 +3643,16 @@ std::string Rtcm::set_DF396(const std::map & pseudoranges) std::vector list_of_sats; std::vector list_of_signals; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - list_of_sats.push_back(pseudoranges_iter->second.PRN); + list_of_sats.push_back(observables_iter->second.PRN); - std::string sig_(pseudoranges_iter->second.Signal); + std::string sig_(observables_iter->second.Signal); sig = sig_.substr(0,2); - std::string sys(&pseudoranges_iter->second.System, 1); + std::string sys(&observables_iter->second.System, 1); if ((sig.compare("1C") == 0) && (sys.compare("G") == 0 ) ) { @@ -3697,40 +3697,40 @@ std::string Rtcm::set_DF396(const std::map & pseudoranges) for(unsigned int sat = 0; sat < num_satellites; sat++) { value = false; - for(pseudoranges_iter = pseudoranges.begin(); - pseudoranges_iter != pseudoranges.end(); - pseudoranges_iter++) + for(observables_iter = observables.begin(); + observables_iter != observables.end(); + observables_iter++) { - std::string sig_(pseudoranges_iter->second.Signal); + std::string sig_(observables_iter->second.Signal); sig = sig_.substr(0,2); - std::string sys(&pseudoranges_iter->second.System, 1); + std::string sys(&observables_iter->second.System, 1); - if ((sig.compare("1C") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 2) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("1C") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 2) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } - if ((sig.compare("2S") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 15) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("2S") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 15) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } - if ((sig.compare("5X") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 24) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("5X") == 0) && (sys.compare("G") == 0 ) && (list_of_signals.at(row) == 32 - 24) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } - if ((sig.compare("1B") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 4) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("1B") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 4) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } - if ((sig.compare("5X") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 24) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("5X") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 24) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } - if ((sig.compare("7X") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 16) && (pseudoranges_iter->second.PRN == list_of_sats.at(sat) ) ) + if ((sig.compare("7X") == 0) && (sys.compare("E") == 0 ) && (list_of_signals.at(row) == 32 - 16) && (observables_iter->second.PRN == list_of_sats.at(sat) ) ) { value = true; } @@ -3855,7 +3855,7 @@ int Rtcm::set_DF400(const Gnss_Synchro & gnss_synchro) } else if(std::fabs(psrng_s) > 292.7) { - fine_pseudorange = -16384; // 4000h: invalid value + fine_pseudorange = -16384; // 4000h: invalid value } else { @@ -3905,7 +3905,7 @@ int Rtcm::set_DF401(const Gnss_Synchro & gnss_synchro) /* TODO: check LLI! */ double cp = gnss_synchro.Carrier_phase_rads / GPS_TWO_PI; // ? if(std::fabs(phrng_m - cp) > 1171.0) - { + { cp = std::round(phrng_m / lambda) * lambda; } phrng_m -= cp; @@ -4068,7 +4068,7 @@ int Rtcm::set_DF406(const Gnss_Synchro & gnss_synchro) } phrng_m = (gnss_synchro.Carrier_phase_rads / GPS_TWO_PI ) * lambda - rough_range_m; - + /* Substract phase - pseudorange integer cycle offset */ /* TODO: check LLI! */ double cp = gnss_synchro.Carrier_phase_rads / GPS_TWO_PI; // ? diff --git a/src/core/system_parameters/rtcm.h b/src/core/system_parameters/rtcm.h index 73f373e55..37cdab1f4 100644 --- a/src/core/system_parameters/rtcm.h +++ b/src/core/system_parameters/rtcm.h @@ -89,22 +89,22 @@ public: /*! * \brief Prints message type 1001 (L1-Only GPS RTK Observables) */ - std::string print_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & pseudoranges, unsigned short station_id); + std::string print_MT1001(const Gps_Ephemeris& gps_eph, double obs_time, const std::map & observables, unsigned short station_id); /*! * \brief Prints message type 1002 (Extended L1-Only GPS RTK Observables) */ - std::string print_MT1002(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & pseudoranges, unsigned short station_id); + std::string print_MT1002(const Gps_Ephemeris & gps_eph, double obs_time, const std::map & observables, unsigned short station_id); /*! * \brief Prints message type 1003 (L1 & L2 GPS RTK Observables) */ - std::string print_MT1003(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & pseudoranges, unsigned short station_id); + std::string print_MT1003(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & observables, unsigned short station_id); /*! * \brief Prints message type 1004 (Extended L1 & L2 GPS RTK Observables) */ - std::string print_MT1004(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & pseudoranges, unsigned short station_id); + std::string print_MT1004(const Gps_Ephemeris & ephL1, const Gps_CNAV_Ephemeris & ephL2, double obs_time, const std::map & observables, unsigned short station_id); /*! * \brief Prints message type 1005 (Stationary Antenna Reference Point) @@ -155,13 +155,13 @@ public: int read_MT1045(const std::string & message, Galileo_Ephemeris & gal_eph); /*! - * \brief Prints messages of type MSM1 (Compact GNSS pseudoranges) + * \brief Prints messages of type MSM1 (Compact GNSS observables) */ std::string print_MSM_1( const Gps_Ephemeris & gps_eph, const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -176,7 +176,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -191,7 +191,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -206,7 +206,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -221,7 +221,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -236,7 +236,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -251,7 +251,7 @@ public: const Gps_CNAV_Ephemeris & gps_cnav_eph, const Galileo_Ephemeris & gal_eph, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -290,7 +290,7 @@ private: // std::bitset<64> get_MT1001_4_header(unsigned int msg_number, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int smooth_int, bool sync_flag, @@ -305,7 +305,7 @@ private: std::string get_MSM_header(unsigned int msg_number, double obs_time, - const std::map & pseudoranges, + const std::map & observables, unsigned int ref_id, unsigned int clock_steering_indicator, unsigned int external_clock_indicator, @@ -313,17 +313,17 @@ private: bool divergence_free, bool more_messages); - std::string get_MSM_1_content_sat_data(const std::map & pseudoranges); - std::string get_MSM_4_content_sat_data(const std::map & pseudoranges); - std::string get_MSM_5_content_sat_data(const std::map & pseudoranges); + std::string get_MSM_1_content_sat_data(const std::map & observables); + std::string get_MSM_4_content_sat_data(const std::map & observables); + std::string get_MSM_5_content_sat_data(const std::map & observables); - std::string get_MSM_1_content_signal_data(const std::map & pseudoranges); - std::string get_MSM_2_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); - std::string get_MSM_3_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); - std::string get_MSM_4_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); - std::string get_MSM_5_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); - std::string get_MSM_6_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); - std::string get_MSM_7_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & pseudoranges); + std::string get_MSM_1_content_signal_data(const std::map & observables); + std::string get_MSM_2_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); + std::string get_MSM_3_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); + std::string get_MSM_4_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); + std::string get_MSM_5_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); + std::string get_MSM_6_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); + std::string get_MSM_7_content_signal_data(const Gps_Ephemeris & ephNAV, const Gps_CNAV_Ephemeris & ephCNAV, const Galileo_Ephemeris & ephFNAV, double obs_time, const std::map & observables); // // Utilities @@ -799,7 +799,7 @@ private: int set_DF005(bool sync_flag); std::bitset<5> DF006; - int set_DF006(const std::map & pseudoranges); + int set_DF006(const std::map & observables); std::bitset<1> DF007; int set_DF007(bool divergence_free_smoothing_indicator); // 0 - Divergence-free smoothing not used 1 - Divergence-free smoothing used @@ -1071,12 +1071,12 @@ private: int set_DF393(bool more_messages); //1 indicates that more MSMs follow for given physical time and reference station ID std::bitset<64> DF394; - int set_DF394(const std::map & pseudoranges); + int set_DF394(const std::map & observables); std::bitset<32> DF395; - int set_DF395(const std::map & pseudoranges); + int set_DF395(const std::map & observables); - std::string set_DF396(const std::map & pseudoranges); + std::string set_DF396(const std::map & observables); std::bitset<8> DF397; int set_DF397(const Gnss_Synchro & gnss_synchro);