Using C++ 11 threading routines to create a worker thread that can
perform the FFT for acquisition in a non-blocking manner. By default
'blocking' is set to true, which is identical to the previous behaviour
(with the added overhead of an extra thread). When 'blocking' is set to
false, then the main thread does not wait for the worker, thereby
letting the receiver continue even when the FFT thread is working. This
is very useful for using FFT acquisition at higher sampling rates, where
the FFT cannot be performed in real-time.
The aim is to replace the separate pcps_multithread_acquisition_cc.
TODO: implement the same thing for the pcps_acquisition_sc
For galileo_e1_dll_pll_veml_tracking_cc and gps_l1_ca_dll_pll_tracking_cc
Note this gives some significant performance improvement for higher
sampling rates
Only done for GPS L1 C/A and Galileo E1 OS for now. Also added a
cpu_multicorrelator_real_codes class that performs code correlation
using real-valued local codes
Adds code to solve the shared frequency channels for GLONASS satellites
during acq and trk, it is now decode responsability to fix the identifier
when decoding of ephemeris happens. It also adds more details in tracking
plotting and fixes silly bug that created false alarm.
The code fixes the computation of the carrier frequency for pcps
acquisition of GLONASS satellites by making it relative to the IF. Also
new plotting features are added to visualize results
GNSS-SDR.internal_fs_sps
The old name was misleading, since the units are samples per second and
not Hertz.
Backward compatibility is kept, so this change does not break any
existing configuration.
Adds tracking results plot for GLONASS processing following code for
GPS. Also fix a couple of bugs in the code and address bugs from
acq and trk modules
Starts merging process of the acquisition and tracking code for GLONASS
processing developed by Gabriel Araujo. Fixes compile warnings and
errors introduced during rebase operation
Fixes GLONASS L1 CA telemetry decoder and creating connections with
observables blocks before PVT computation. Fixes documentation and code
style in the block
Adding unit test for system-parameters block, testing string decoding
logic for GLONASS GNAV messages. Bug fixes the code after several errors
were detected while debugging
Fixes compilation errors after the RTCM package addition in the PVT
block. It also adds a series of class members documentation in the code
using the Doxygen standard while fixing code style errors
Adds set of unit test to check functionality of GLONASS processing for
RINEX and RTCM messages. It also fixes a couple of bug fixes with
formatting in existing code.
Adds code for RTCM in GLONASS processing. The commit includes legacy
messages (MS1009-MS1012) and integrated messages for GNSS fields.
A couple of bug fixes are included and addition of ephemeris fields
is completed.
Fixes compilation errors. Modifies GLONASS GNAV Ephemeris object to
contain fields relative to GPS time using the boost posix time object.
Adds unit tests to check existent and recently added code
Adds RINEX v2 and v3 support for GLONASS satellites processing including
observation and navigation data records. Also adds conversion of
ephemeris records in GNSS-SDR format to RTKLib format
Adding code for navigation message computation for GLONASS GNAV code.
Continues to fix the almanac position computation and fixes bugs in code
due to compilation errors, coding style and Doxygen documentation
Generates code for GLONASS GNAV Ephemeris, Almanac and UTC Model with
their respective decoding position indexes for string decoding and
message parsing. Starts developing of satellite position computation
based on its ephemeris and almanac information