[hamradio-commits] [gnss-sdr] 25/80: Fix computation of lock time
Carles Fernandez
carles_fernandez-guest at moszumanska.debian.org
Sun May 15 20:11:53 UTC 2016
This is an automated email from the git hooks/post-receive script.
carles_fernandez-guest pushed a commit to branch upstream
in repository gnss-sdr.
commit 8fe691dc76758b9afbb9406876faef903b703415
Author: Carles Fernandez <carles.fernandez at gmail.com>
Date: Wed May 4 19:18:34 2016 +0200
Fix computation of lock time
LLI still not implemented, values will be incorrect upon first loss of
lock.
---
src/algorithms/PVT/gnuradio_blocks/gps_l1_ca_pvt_cc.cc | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/src/algorithms/PVT/gnuradio_blocks/gps_l1_ca_pvt_cc.cc b/src/algorithms/PVT/gnuradio_blocks/gps_l1_ca_pvt_cc.cc
index 3aefd49..decadd7 100644
--- a/src/algorithms/PVT/gnuradio_blocks/gps_l1_ca_pvt_cc.cc
+++ b/src/algorithms/PVT/gnuradio_blocks/gps_l1_ca_pvt_cc.cc
@@ -271,19 +271,21 @@ int gps_l1_ca_pvt_cc::general_work (int noutput_items __attribute__((unused)), g
// ############ 1. READ PSEUDORANGES ####
for (unsigned int i = 0; i < d_nchannels; i++)
{
- std::map<int,Gps_Ephemeris>::iterator gps_ephemeris_iter;
- gps_ephemeris_iter = d_ls_pvt->gps_ephemeris_map.begin();
if (in[i][0].Flag_valid_pseudorange == true)
{
gnss_pseudoranges_map.insert(std::pair<int,Gnss_Synchro>(in[i][0].PRN, in[i][0])); // store valid pseudoranges in a map
d_rx_time = in[i][0].d_TOW_at_current_symbol; // all the channels have the same RX timestamp (common RX time pseudoranges)
- d_rtcm_printer->lock_time(gps_ephemeris_iter->second, d_rx_time, in[i][0]); // keep track of locking time
- }
- else
- {
- d_rtcm_printer->lock_time(gps_ephemeris_iter->second, 0.0, in[i][0]);
+ if(d_ls_pvt->gps_ephemeris_map.size() > 0)
+ {
+ std::map<int,Gps_Ephemeris>::iterator tmp_eph_iter = d_ls_pvt->gps_ephemeris_map.find(in[i][0].PRN);
+ if(tmp_eph_iter != d_ls_pvt->gps_ephemeris_map.end())
+ {
+ d_rtcm_printer->lock_time(d_ls_pvt->gps_ephemeris_map.find(in[i][0].PRN)->second, d_rx_time, in[i][0]); // keep track of locking time
+ }
+ }
}
}
+
// ############ 2 COMPUTE THE PVT ################################
if (gnss_pseudoranges_map.size() > 0 and d_ls_pvt->gps_ephemeris_map.size() > 0)
{
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hamradio/gnss-sdr.git
More information about the pkg-hamradio-commits
mailing list