summaryrefslogtreecommitdiff
path: root/gr-digital/python/digital/bindings
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Replace boost::any with std::any"Josh Morman2021-11-061-1/+1
| | | | This reverts commit ccd28dfbb1504fdc29db267acd8aa3354fe10cd2.
* Replace boost::any with std::anyMarcus Müller2021-10-281-1/+1
| | | | | | | | This is a modernization possible through C++17 Fixes #4780 Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* digital: remove deprecation of pfb_clock_syncJosh Morman2021-10-142-2/+2
| | | | Signed-off-by: Josh Morman <jmorman@peratonlabs.com>
* digital/chunks to symbols: be less inefficientMarcus Müller2021-07-271-1/+1
| | | | | | | | | | | | | The block formerly took the tags from get_tags_in_range (which are sorted), gave them to tag_checker, which sorted them, and then went through every input sample, checking its index against the next tag. Removed the tag_checker; that saves us a sorting of a sorted vector. The other optimization is to not dispatch any tag encountered to the own message handler; instead, the handler is called directly. Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* digital: Added a crc16 basic block. (#4649)cmrincon2021-07-124-0/+76
| | | Signed-off-by: cmrincon <cmrincon611@hotmail.com>
* global: automatically remove unused boost includesMarcus Müller2021-06-221-1/+1
| | | | | | | | used command: sed -i '/^#include.*boost.*$/d' $(ag -L '(boost::|BOOST)' $(ag --cpp -l '#include <boost')) Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* digital: Add NRZI option to differential en/decoderDaniel Estévez2021-06-126-2/+62
| | | | | | | | | | | | | | | | | | | This adds an option to the differential encoder an decoder blocks to perform NRZI encoding and decoding. NRZI only makes sense with a modulus of 2, so the blocks constructors will throw and exception if passed nrzi = true and a modulus different from 2. The GRC blocks handle this by hiding the modulus field if the user selects NRZI encoding. A new unit test for the NRZI version of the blocks is added. Besides checking that encode plus decode gives the original, this test also compares the C++ implementation results against a Numpy implementation. Additionally, a faster implementation of differential encoding/ decoding for modulus 2 is included here. Signed-off-by: Daniel Estévez <daniel@destevez.net>
* digital: Remove crc32 utilityMartin Braun2021-05-224-92/+0
| | | | | | | | | | This patch removes a crc32 utility that used to be used in our CRC32 blocks, but no longer is. Right now, all this does is expose a generic CRC32 function to the user (both via Python and C++), but there are enough other libraries that let the user do that. Therefore, we'll remove this. Signed-off-by: Martin Braun <martin@gnuradio.org>
* digital: remove simple_{correlator,framer}Josh Morman2021-04-217-183/+0
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* digital: remove deprecated equalizersJosh Morman2021-04-218-338/+0
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* digital: Fix documentation for corr_est 'threshold' paramterIpsit2021-03-101-2/+2
| | | | | Signed-off-by: Ipsit <mmkipsit@gmail.com> Signed-off-by: Martin Braun <martin@gnuradio.org>
* digital: include control_loop class in child class bindingsJeppe Ledet-Pedersen2021-02-154-0/+4
| | | | | | | | costas_loop_cc, fll_band_edge_cc, and constellation_receiver_cb all inherit from gr::blocks::control_loop. Add the class to the bindings so the control loop methods are available in Python. Signed-off-by: Jeppe Ledet-Pedersen <jlp@satlab.com>
* gr-digital: improved performance and capability of scramblers to 64-bit ↵Elof Wecksell2021-01-297-16/+16
| | | | | | | registers. Use __builtin_parity or volk popcnt. qa was also enhanced to detect errors. Signed-off-by: Elof Wecksell <elof@wecksell.se> Co-authored-by: Martin Braun <martin@gnuradio.org>
* clang-tidy: run full .clang-tidy on C++17 codebaseMarcus Müller2021-01-193-3/+3
| | | | | | | | | | | | | | | | | | | | run /usr/share/clang/run-clang-tidy.py -checks=file '-header-filter=.*' -fix .. from build directory. Then, clang-format -i $(git diff --name-only origin/master) to clang-format changed files. Then, refresh all header hashes in pybind bindings (*/python/bindings/*.cc) Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* digital: fix bindings and yaml for constellationJosh Morman2021-01-081-59/+11
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* digital: ofdm: Fix whitespace in OFDM chanest blockMartin Braun2020-12-191-2/+2
| | | | | | | | Both the C++ and Python files have really weird whitespace issues, making them hard to read. This makes the whitespace usage for consistent with usual formatting, and fixes some Doxygen issues. Signed-off-by: Martin Braun <martin@gnuradio.org>
* gr-digital: Document normalization parameter in constellation.hRon Economos2020-12-181-1/+1
| | | | Signed-off-by: Ron Economos <w6rz@comcast.net>
* Allow to choose whether to normalize constellation average magnitude, ↵Eduardo Sánchez Muñoz2020-12-181-5/+12
| | | | | | average power or to not normalize at all. Signed-off-by: Eduardo Sánchez Muñoz <esm@eduardosm.net>
* digital: update pybind hashes for mpsk_snr_estJosh Morman2020-12-182-2/+2
|
* digital: deprecate clock recovery blocks covered by symbol_syncJosh Morman2020-12-175-5/+5
| | | | | | | The pfb, msk and mm clock recovery blocks are all covered by the symbol_sync block. See https://www.youtube.com/watch?v=uMEfx_l5Oxk Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* digital: add constellation_encoder blockJosh Morman2020-11-165-1/+72
|
* modernization: `override` instead of virtual in all compilation unitsMarcus Müller2020-11-0313-13/+13
|
* Fix typos throughout the codeluzpaz2020-10-294-7/+7
| | | | | | | * Fix various typos Found via `codespell v2.0.dev` `codespell -q 3 -L ans,fo,hist,inout,ist,ith,nd,sinc,uint -S ./volk`
* pybind: add implicit conversion from int to enummormj2020-10-287-0/+14
| | | | | | | | | | | | | * dtv: add implicit conversion from int to enum * analog: add implicit conversion from int to enum * blocks: add implicit conversion from int to enum * digital: add implicit conversion from int to enum * fec: add implicit conversion from int to enum * fft: add implicit conversion from int to enum * filter: add implicit conversion from int to enum * qtgui: add implicit conversion from int to enum * trellis: add implicit conversion from int to enum * vocoder: add implicit conversion from int to enum * bindtool: add implicitly_convertible to all enums
* digital: ofdm_equalizer_simpledfe: add enable_soft_output optionjapm482020-10-281-1/+2
| | | | | | | | | Enable outputting equalized symbols that are not exactly constellation symbols. This is useful for OFDM soft decoding/demodulation (e.g. optimal turbo or LDPC decoding). For compatibility, this new behaviour has to be enabled by setting the new option "enable_soft_output" to true (false by default).
* digital: python: bindings: Use nullptr instead of nonstandard __null.Ryan Volz2020-10-051-1/+1
| | | | This fixes compilation with MSVC.
* digital/qa_header: Remove manual memory managementThomas Habets2020-08-141-1/+1
|
* pybind: remove docstring dependency on entire moduleJosh Morman2020-06-111-1/+1
| | | | | | | | | | When the module is used as a dependency for the docstring substitution task, any change to any file in the module will cause the regeneration of the bindings for the entire module and all modules that are dependent on that one. There is still probably a better way tie the docstring substitution into the custom commands, per file
* pybind: add hash check to binding file creation (#3472)mormj2020-06-0485-86/+766
|
* pybind: run clang-formatJosh Morman2020-06-042-7/+7
|
* digital: add python bindings for equalizers+modulate_vectorJosh Morman2020-06-0417-3/+766
|
* digital: add pybind11 bindingsJosh Morman2020-06-04158-0/+8285