Commit Graph

1287 Commits

Author SHA1 Message Date
Javier Arribas 82f47b8516 Fix gnss-sdr unit tests android compilation 2021-12-24 16:12:34 +01:00
Carles Fernandez f226152829
CI: make clang-tidy happy. Was: modernize-use-default-member-init 2021-12-17 22:01:45 +01:00
Carles Fernandez 4f76a9c526
Fix cross-compilation in some environments 2021-12-17 20:00:30 +01:00
Carles Fernandez 12ed230cd7
Prefer initialization to assignment in constructors 2021-12-17 17:40:17 +01:00
Marc Majoral afc78ee0ff fix acquisition performance test 2021-12-04 18:07:25 +01:00
Carles Fernandez bcec8331e6
Fixes for building against GNU Radio master
Log4cpp has been replaced by spdlog and fmt
2021-11-23 16:38:50 +01:00
Carles Fernandez dc87113279
Fix building of FPGA test 2021-10-30 21:51:23 +02:00
Carles Fernandez a7a140862b
Fix building against latest GNU Radio
Replace boost::any by std::any
2021-10-30 05:43:22 +02:00
Carles Fernandez f9911cbc3f
Fix lintian warning very-long-line-length-in-source-file (raised by Lintian v2.110.0)
Rationale:
The source file includes a line length that is well beyond the normally human made code line length.
This very long line length does not allow Lintian to do correctly some source file checks.
This line could also be the result of some text injected by a computer program, and thus could lead to FTBFS bugs.
Last but not least, long line in source code could be used to obfuscate the source code and to hide stuff like backdoors or security problems.
2021-10-29 14:26:55 +02:00
Carles Fernandez e8ec809d2c
Raise maximum SEP 2021-10-10 21:41:21 +02:00
Carles Fernandez 446b7cfbea
Improve constructors
Prefer initialization to assignment in constructors

Improves the readability of the code and performance

Easier detection of unused members

(see https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md\#Rc-initialize\)
2021-10-10 18:54:42 +02:00
Carles Fernandez a510c9d92e
Remove UnscentedFilterComputationTest suite, which is randomly failing 2021-10-08 19:07:11 +02:00
Carles Fernandez 715987e749
Improve design of the Viterbi Decoder API
Easier to use, it does not require external memory for internal states anymore
2021-09-26 13:23:28 +02:00
Carles Fernandez e52ccfb893
Rewriting of the Viterbi decoding
New class implementing the Viterbi decoder. All memory allocated in the constructor

Old SBAS Viterbi decoder moved to Viterbi_Decoder_Sbas class.
2021-09-25 20:29:51 +02:00
Carles Fernandez e0d41e96e9
Add --num_channels parameter to position_test 2021-08-11 16:35:05 +02:00
Carles Fernandez b4b9c31182
Improve detection of Gnuplot and gnss_sim when cross-compiling 2021-08-02 09:33:16 +02:00
Carles Fernandez c9341b6d35
Bump CMake compatibility to version 3.21 2021-07-24 13:59:05 +02:00
Carles Fernandez bf7cea7240
Update Googletest local version to 1.11.0 2021-06-13 14:21:51 +02:00
Carles Fernandez 629a8de149
Update google-benchmark version to 1.5.5. Fix building with Xcode 2021-06-12 14:42:16 +02:00
Carles Fernandez 7bfaab0b17
Add erasure decoder benchmark for E6B 2021-06-08 11:50:55 +02:00
Carles Fernandez 44e35b48ab
Add example of erasure decoding 2021-06-08 11:16:57 +02:00
Carles Fernandez 1fc7286a32
Update build option name for benckmark 2021-06-05 01:28:01 +02:00
Carles Fernandez 3c74930c7d
Fix building problems in Macports 2021-05-31 10:47:07 +02:00
Carles Fernandez 49fc117ab1
Improve control on gtest version 2021-04-24 01:16:20 +02:00
Carles Fernandez 3bc2c738c8
Implement FEC2 Erasure Correction in Galileo E1B INAV message
This feature is configurable, disabled by default.

Added a benchmark for the Reed Solomon decoder.

Make the RS decoder to accept both shortened or unshortened codes
2021-04-19 13:26:46 +02:00
Carles Fernandez af36f2f98f
Add realistic tests for FEC2 Erasure Correction 2021-04-11 22:44:25 +02:00
Carles Fernandez df7200b4b0
Fix parameter in test for consistency 2021-04-07 14:00:41 +02:00
Carles Fernandez 149c26b971 Expand ReedSolomon class to shortened codes. Add conf parameters for Galileo E1B RS encoding/decoding and the corresponding unit tests 2021-04-01 10:22:24 +02:00
Carles Fernandez eb68c41074 Fix parameters in example, remove irrelevant test 2021-03-28 23:37:29 +02:00
Carles Fernandez c67ac1247f
Add optional erasure positions to RS decoder 2021-03-26 12:40:35 +01:00
Carles Fernandez 4c51037b14
Fix test 2021-03-25 19:12:05 +01:00
Carles Fernandez aeb6a0cd84
Add Reed Solomon encoder and decoder class 2021-03-25 14:53:18 +01:00
Carles Fernandez 816bd94379
Improve messages if configuration fails 2021-02-27 11:05:39 +01:00
Carles Fernandez 07b401e3bc
Improve error messages in case of wrong configuration for the FPGA offloading flowgraph 2021-02-23 21:40:53 +01:00
Carles Fernandez a479d4c1eb
Remove failing extra unit test 2021-02-23 09:55:56 +01:00
Carles Fernandez ae018f829c
Improve test 2021-02-23 09:55:14 +01:00
Carles Fernandez 81251f5ef3
Actually test something 2021-02-22 20:15:43 +01:00
Carles Fernandez 146e1d7a63
Update .proto files for GPS and Galileo ephemeris data 2021-02-22 13:42:54 +01:00
Carles Fernandez 2e53289653
Add more consistency in parameters name 2021-02-21 10:56:56 +01:00
Carles Fernandez 7971565a0d
Give more natural, consistent names to ephemeris / iono / utc parameters exposed outside the receiver via XML files
Create a base class for GPS, Galileo and BeiDou ephemeris, allowing to remove some duplicated code

Use BOOST_SERIALIZATION_NVP macro, less error prone than boost::serialization::make_nvp

Update .xsd files
2021-02-21 00:01:56 +01:00
Carles Fernandez 73a728b3f6
Merge branch 'feature/signal_source_interface' of https://github.com/jwmelto/gnss-sdr into jwmelto-feature/signal_source_interface 2021-02-18 09:03:03 +01:00
Jim Melton 3b728d9c26
fix cast error 2021-02-15 17:15:38 -07:00
Jim Melton ece5effa2d
penultimate clang-format fix 2021-02-15 16:34:16 -07:00
Jim Melton 3bf2deb2ae
fixed failing unit test
I don't know how this didn't run before submitting the PR. CI tests are great!

The file-based signal sources were modified to not throw an exception on creation
but rather when connect() is called. The unit test was checking for an exception
upon construction.
2021-02-15 15:33:16 -07:00
Jim Melton 78362e7cba add signal_source_interface
also adds a base implementation that most signal sources should inherit from.
The gen_signal_source is inexplicably different (probably as a test fixture,
commonality was not valued).

Only the file_signal_source has been tested; all the sources are modified in the same
way, but we all know the only proof of correctness is testing.

The block factory was simplified a bit. Handling for legacy config files was pulled out
of the flowgraph; now when the "0" instance of a component (Foo0) is created, if there is
no config for it, then the legacy version (Foo) will be tried. This is different from
passing -1 for the item number (which is still supported). Theoretically, all existing
config files should still work.
2021-02-15 11:47:13 -07:00
Javier Arribas 39031b24ac Completing UDP GPS and Galileo ephemeris server 2021-02-15 15:58:38 +01:00
Carles Fernandez 950111d0fe
Avoid warning when building googletest with CMake >= 3.19 2021-01-25 22:19:18 +01:00
Carles Fernandez 1287e8fe79
Improve handling of the filesystem library 2021-01-16 14:37:19 +01:00
Carles Fernandez 0e9046c956
Raise an error if GPSTK is to be built but the patch command is not found 2021-01-16 10:51:38 +01:00
Carles Fernandez 11f13ebcab
Fix building in modern environments 2021-01-15 15:03:36 +01:00