1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2025-01-15 03:35:46 +00:00

Some fixes in the RINEX 3.01 printer

This commit is contained in:
Carles Fernandez 2014-09-03 07:58:57 +02:00
parent f811640705
commit 358f29f305
3 changed files with 14 additions and 15 deletions

View File

@ -166,7 +166,7 @@ int galileo_e1_pvt_cc::general_work (int noutput_items, gr_vector_int &ninput_it
if (global_galileo_almanac_map.size() > 0) if (global_galileo_almanac_map.size() > 0)
{ {
// Almanac data is shared for all the Galileo satellites. Read always at ID=0 // Almanac data
global_galileo_almanac_map.read(0, d_ls_pvt->galileo_almanac); global_galileo_almanac_map.read(0, d_ls_pvt->galileo_almanac);
} }
// ############ 2 COMPUTE THE PVT ################################ // ############ 2 COMPUTE THE PVT ################################
@ -192,7 +192,7 @@ int galileo_e1_pvt_cc::general_work (int noutput_items, gr_vector_int &ninput_it
if (galileo_ephemeris_iter != d_ls_pvt->galileo_ephemeris_map.end()) if (galileo_ephemeris_iter != d_ls_pvt->galileo_ephemeris_map.end())
{ {
rp->rinex_obs_header(rp->obsFile, galileo_ephemeris_iter->second, d_rx_time); rp->rinex_obs_header(rp->obsFile, galileo_ephemeris_iter->second, d_rx_time);
rp->rinex_nav_header(rp->navGalFile, d_ls_pvt->galileo_iono, d_ls_pvt->galileo_utc_model); rp->rinex_nav_header(rp->navGalFile, d_ls_pvt->galileo_iono, d_ls_pvt->galileo_utc_model, d_ls_pvt->galileo_almanac);
b_rinex_header_writen = true; // do not write header anymore b_rinex_header_writen = true; // do not write header anymore
} }
} }

View File

@ -356,9 +356,8 @@ std::string Rinex_Printer::getLocalTime()
} }
void Rinex_Printer::rinex_nav_header(std::ofstream& out, Galileo_Iono iono, Galileo_Utc_Model utc_model) void Rinex_Printer::rinex_nav_header(std::ofstream& out, Galileo_Iono iono, Galileo_Utc_Model utc_model, Galileo_Almanac galileo_almanac)
{ {
std::string line; std::string line;
stringVersion = "3.01"; stringVersion = "3.01";
version = 3; version = 3;
@ -435,25 +434,25 @@ void Rinex_Printer::rinex_nav_header(std::ofstream& out, Galileo_Iono iono, Gali
out << line << std::endl; out << line << std::endl;
// -------- Line system time correction 2 // -------- Line system time correction 2
/* line.clear(); line.clear();
line += std::string("GPGA"); line += std::string("GPGA");
line += Rinex_Printer::rightJustify(Rinex_Printer::doub2for(utc_model.XXX, 16, 2), 18); line += Rinex_Printer::rightJustify(Rinex_Printer::doub2for(galileo_almanac.A_0G_10, 16, 2), 18);
line += Rinex_Printer::rightJustify(Rinex_Printer::doub2for(utc_model.XXX, 15, 2), 16); line += Rinex_Printer::rightJustify(Rinex_Printer::doub2for(galileo_almanac.A_1G_10, 15, 2), 16);
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.XXX), 7); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.t0t_6), 7);
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.XXX), 5); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.WNot_6), 5);
line += std::string(10, ' '); line += std::string(10, ' ');
line += Rinex_Printer::leftJustify("TIME SYSTEM CORR", 20); line += Rinex_Printer::leftJustify("TIME SYSTEM CORR", 20);
Rinex_Printer::lengthCheck(line); Rinex_Printer::lengthCheck(line);
out << line << std::endl;*/ out << line << std::endl;
// -------- Line 6 leap seconds // -------- Line 6 leap seconds
// For leap second information, see http://www.endruntechnologies.com/leap.htm // For leap second information, see http://www.endruntechnologies.com/leap.htm
line.clear(); line.clear();
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(static_cast<int>(utc_model.Delta_tLS_6)), 6); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.Delta_tLS_6), 6);
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(static_cast<int>(utc_model.Delta_tLSF_6)), 6); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.Delta_tLSF_6), 6);
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(static_cast<int>(utc_model.WN_LSF_6)), 6); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.WN_LSF_6), 6);
line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(static_cast<int>(utc_model.DN_6)), 6); line += Rinex_Printer::rightJustify(boost::lexical_cast<std::string>(utc_model.DN_6), 6);
line += std::string(36, ' '); line += std::string(36, ' ');
line += Rinex_Printer::leftJustify("LEAP SECONDS", 20); line += Rinex_Printer::leftJustify("LEAP SECONDS", 20);
Rinex_Printer::lengthCheck(line); Rinex_Printer::lengthCheck(line);

View File

@ -97,7 +97,7 @@ public:
/*! /*!
* \brief Generates the Galileo Navigation Data header * \brief Generates the Galileo Navigation Data header
*/ */
void rinex_nav_header(std::ofstream& out, Galileo_Iono iono, Galileo_Utc_Model utc_model); void rinex_nav_header(std::ofstream& out, Galileo_Iono iono, Galileo_Utc_Model utc_model, Galileo_Almanac galileo_almanac);
/*! /*!
* \brief Generates the GPS Observation data header * \brief Generates the GPS Observation data header