Commit Graph

99 Commits

Author SHA1 Message Date
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 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
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
Carles Fernandez 1287e8fe79
Improve handling of the filesystem library 2021-01-16 14:37:19 +01:00
Carles Fernandez 7308745f05
Apply more concise file header format
Re-license CMake scripts with BSD-3-Clause
2020-12-30 13:35:06 +01:00
Carles Fernandez f0e1ef6f9a
Add a common shared pointer definition
Makes transition to GNU Radio 3.9 API less verbose
2020-11-03 20:51:57 +01:00
Carles Fernandez d4ed61df4b
Improve handling of gflags library
Set minimun gflags version to 2.1.2

Replaced google:: by gflags:: namespace
2020-08-13 20:54:22 +02:00
Carles Fernandez 47f6855610
Give more intuitive naming to asynchronous message handlers 2020-08-03 08:13:21 +02:00
Carles Fernandez 499de7a9f1
Update file headers 2020-07-28 16:57:15 +02:00
Carles Fernandez 64ba95025d
Add missing symbol 2020-07-13 10:54:47 +02:00
Carles Fernandez 09bcd1981c Replace std::endl by \n character. There is no need to always flush the stream. 2020-07-07 18:53:50 +02:00
Carles Fernandez 81af1a531b
Redesign of pointer management
Avoid indirection caused by passing shared_ptr by reference

The block factory does not have responsability on the lifetime of their inputs

Define std::make_unique when using C++11 and make use of it

Printers are turned into unique_ptr to express ownership

Printers do not participate on the lifelime of the data, so they take const raw pointers

Modernize tests code
2020-06-18 11:49:28 +02:00
Carles Fernandez 0df4277d36
Unify criteria in target definitions, more informative names 2020-06-13 00:32:40 +02:00
Carles Fernandez 2a3d682f1f
Make use of target_sources(), make use of target propagation to reduce redundancy in dependencies, some fixes for Clang and CMake < 3.11. Use generic lambdas with auto 2020-06-08 20:04:01 +02:00
Carles Fernandez 4913756a05
Replace <boost/bind.hpp> by <boost/bind/bind.hpp> 2020-06-06 23:41:38 +02:00
Carles Fernandez f731a7c0f1
Fix for Boost >= 1.73 in old compilers 2020-05-18 22:50:34 +02:00
Carles Fernandez 1077970962
Revert "Fix for Boost < 1.60"
This reverts commit 832c2558c6.
2020-05-18 21:36:22 +02:00
Carles Fernandez 832c2558c6
Fix for Boost < 1.60 2020-05-18 19:55:44 +02:00
Carles Fernandez b408a2ef29
Fix for Boost 1.73: qualify placeholders with their full namespace 2020-05-18 18:58:39 +02:00
Carles Fernandez 552b438245
Fixes for old GCC 2020-04-26 12:38:01 +02:00
Carles Fernandez fdb0f35116
Use lambda instead of boost::build when genenic lambdas are available in the compiler 2020-04-25 21:41:04 +02:00
Carles Fernandez 27f6b0c290
Fixes for GNU Radio 3.9 2020-04-03 00:41:51 +02:00
Carles Fernandez 3519107131
Add compatibility with the new GNU Radio 3.9 API that uses C++11 standard smart pointers instead of Boost smart pointers 2020-04-02 23:59:35 +02:00
Carles Fernandez 5f974a8f17
Replace boost::shared_ptr by std::shared_ptr 2020-04-02 13:23:20 +02:00
Carles Fernandez 4d0d263280
Make the software package compliant with the REUSE Specification v3.0 (see https://reuse.software/spec/)
Update license headers to SPDX format (see https://spdx.org/)
Add license to all files
Add CI job in GitHub Actions to ensure compliance
2020-02-08 01:20:02 +01:00
Carles Fernandez e80122f4ff
Apply clang tidy checks and clang-format 2019-09-13 08:56:37 +02:00
Carles Fernandez 0520d400b3 Apply clang-tidy 2019-09-11 22:31:34 +00:00
Carles Fernandez 02318c0382
Give to global parameters more meaningful name 2019-08-31 11:37:29 +02:00
Carles Fernandez 9d0c00132d
Always have a space between // and comment 2019-08-19 01:29:04 +02:00
Carles Fernandez 487010346f
Apply readability-isolate-declaration clang-tidy check 2019-08-13 00:19:31 +02:00
Carles Fernandez d83083a655
Fix exception catch 2019-07-30 20:03:02 +02:00
Carles Fernandez 8ce0358de6
Clang-tidy fixes 2019-07-30 19:00:23 +02:00
Carles Fernandez cc54b4a122 Enforce rule 15.1 of the High Integrity C++ Coding Standard
See https://www.perforce.com/resources/qac/high-integrity-c-coding-standard-exception-handling
2019-07-30 12:51:36 +02:00
Carles Fernandez a4d6800e22
Update copyright year
Applied on files changed since last release
clang-format applied
2019-07-26 12:38:20 +02:00
Carles Fernandez 5ba04708a9
Remove unused variable 2019-07-21 20:36:41 +02:00
Javier Arribas aeabfb7c3c Replacing the old gnuradio message queue with the new ConcurrentQueue 2019-07-17 15:56:30 +02:00
Javier Arribas 1313edd716 Partial implementation of the new event queue and its dependencies. Still NOT usable 2019-07-16 17:41:12 +02:00
Carles Fernandez d5e5e5725d
Apply fixes by clang-tidy 2019-06-30 00:01:54 +02:00
Carles Fernandez ca6b4b545b
Replace Boost::filesystem by std::filesystem if C++17 support is available 2019-06-10 21:41:13 +02:00
Carles Fernandez 5b8ab9f591 Improve includes (IWYU) 2019-03-06 13:49:14 +01:00
Carles Fernandez e7ea5c1fdd
Remove superfluous 'using google::LogMessage' 2019-03-03 13:39:35 +01:00
Carles Fernandez 4fe976ba01
Replace boost::thread by std::thread 2019-02-25 00:02:53 +01:00
Carles Fernandez 62a7e54359
Introduce readability-identifier-naming check
This commit enforces naming style for Classes and global constants:
Camel_Snake_Case for Classes
UPPER_CASE for global constants
CamelCase for abstract classes
2019-02-22 10:47:24 +01:00
Carles Fernandez 27b7a93181
Apply clang-tidy fix readability-container-size-empty 2018-12-11 12:25:38 +01:00
Carles Fernandez f351615ef9
Apply clang-tidy fix modernize-use-bool-literals 2018-12-11 12:08:54 +01:00
Carles Fernandez 5f79053d65
Sort includes automatically with clang-format
Order:
1.- Main header
2.- Local headers
3.- Third-party library headers
4.- System headers

each category sorted lexicographically
2018-12-09 22:00:09 +01:00
Carles Fernandez 17260bbcea
Miscelaneous code improvements by clang-tidy 2018-12-08 18:49:31 +01:00
Carles Fernandez 1743a773b5 Improve performance by using const and std::move() to avoid unnecessary copies 2018-12-03 19:01:47 +01:00
Carles Fernandez b994f466a7 clang-tidy: apply modernize-loop-convert fix (see https://clang.llvm.org/extra/clang-tidy/checks/modernize-loop-convert.html) 2018-12-03 18:03:25 +01:00
Carles Fernandez 0d408a6024 clang-tidy: apply modernize-use-auto fix (see https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-auto.html) 2018-12-03 16:25:11 +01:00