aboutsummaryrefslogtreecommitdiffstats
path: root/gr-fft (follow)
Commit message (Collapse)AuthorAgeFilesLines
* cmake: change how test files are build when cross compilingPhilip Balister2021-12-031-0/+3
| | | | | | | | | | | | | | | | | | | | * When cross compiling gnuradio, change how the test files are built. Normally, the gnuradio QA code expects to run in the build tree. For the cross compilng case, we cannot run the QA code during the build process. The changes here allow the creation of an additional package that can be installed on a target that will run the QA code against the installed libraries. Major changes are not using full paths to test files (since they include paths that only exist on the build machine) and not setting environment variables in the shell files to force the QA code to use code in the build tree. This patch disables the C++ only tests, these need some work and then they can be added back for the cross compile case. Signed-off-by: Philip Balister <philip@balister.org>
* fft: pep8 formattingJosh Morman2021-11-242-21/+29
| | | | Signed-off-by: Josh Morman <jmorman@gnuradio.org>
* modules: include boost/format where usedMarcus Müller2021-09-071-1/+1
| | | | | | | | | | | | | | | | | | | in the classic modules: audio blocks digital dtv fec fft filter qtgui trellis/fsm uhd video-sdl vocoder/freedv_rx Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* gr-fft: add "shift" param to logpwrfft blockJeff Long2021-08-232-4/+11
| | | | | | Contributed by Marcus Leech Signed-off-by: Jeff Long <willcode4@gmail.com>
* c++ generation: escape "." in translationsJeff Long2021-07-271-1/+1
| | | | | | | Translations are a regex, so "." needs to be escaped. Fix the remaining unescaped strings. Signed-off-by: Jeff Long <willcode4@gmail.com>
* classic modules: use common precompiled headersMarcus Müller2021-07-191-0/+4
| | | | | | | This commit contains all the additions to gr-*/lib/CMakeLists.txt applicable to modules already present in 3.8. Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
* rebaseVolker Schroer2021-06-213-3/+3
| | | | | | | | | | grc: cpp generation set correct link entry in yml files for modern cmake. Applying this fix simple flowgraphs containing signal sources and audi sinks etc. build and run Signed-off-by: Volker Schroer <3470424+dl1ksv@users.noreply.github.com>
* fft: Use explicit extension when adding testHåkon Vågsether2021-06-051-1/+1
| | | | Signed-off-by: Håkon Vågsether <hauk142@gmail.com>
* cmake: add compiler version statementsJosh Morman2021-03-131-0/+3
| | | | | | | Where std::filesystem is used to allow linking properly on Debian and Centos 8 Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* Replace boost::filesystem with std::filesystemZackery Spytz2021-03-131-3/+2
| | | | Signed-off-by: Zackery Spytz <zspytz@gmail.com>
* Fix typosluz paz2021-02-083-3/+3
| | | | | | | | Found via `codespell v2.1.dev0` `codespell -q 3 -L ans,fo,hist,inout,ist,ith,nd,sinc,uint -S ./volk` Signed-off-by: luz paz <luzpaz@users.noreply.github.com> Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* gr-fft: window cleanup - remove nuttal (sic) windowsJacob Gilbert2021-01-254-45/+1
| | | | | | These have been deprecated for over 6 years Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
* gr-fft: cleanup window related codeJacob Gilbert2021-01-254-41/+70
| | | | | | Updates some documentation, and adds bindings for tukey and gaussian windows which had not been included when they were added Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
* gr-fft: adding additional window options to win_type enumJacob Gilbert2021-01-253-33/+112
| | | | | | Adding Nuttall, Welch, Parzen, Exponential, Riemann, Gaussian, and Tukey window options to the win_type enum for use with the various filter design functions Signed-off-by: Jacob Gilbert <jacob.gilbert@protonmail.com>
* clang-tidy: run full .clang-tidy on C++17 codebaseMarcus Müller2021-01-193-6/+6
| | | | | | | | | | | | | | | | | | | | 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>
* gr-fft: Log Power FFT Python fixJeff Long2021-01-161-2/+3
| | | | | | | Block would fail as soon as it was placed in GRC. A couple of imports/renames were needed. Signed-off-by: Jeff Long <willcode4@gmail.com>
* fft: update window python enums to fft.window.*Josh Morman2020-12-171-1/+1
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* fft: populate window enums under fft.windowJosh Morman2020-12-171-16/+14
| | | | Signed-off-by: Josh Morman <jmorman@perspectalabs.com>
* build: Remove clang override warnings.Ron Economos2020-12-071-4/+4
|
* Move FFT functions and blocks to templates (#3903)mormj2020-11-0327-1013/+410
| | | | | | | | | | | | | * fft: refactor fft classes as templates In order to reduce code duplication construct fft objects and blocks with template paramters. Separate forward and reverse as a template parameter Maintain the real fft block forward as r2c and reverse as r2c as well Co-authored-by: Andrej Rode <mail@andrejro.de>
* modernization: `override` instead of virtual in all compilation unitsMarcus Müller2020-11-033-12/+12
|
* Add `override` for common virtual function overridesThomas Habets2020-11-032-3/+3
| | | | | | | | | | Mostly done with: ``` find -name "*_impl.h" | xargs sed -i -r '/(void forecast|int work|int general_work|bool check_topology)\(/{:back /\)/b nxt;N;b back;:nxt s/\)$|\)(;)/) override\1/g}' ``` Then I removed an incorrect `work` that this found.
* qa: run autopep8 formatting on qa python filesmormj2020-10-303-13/+85
| | | | | | find ./ -iname qa*.py | xargs autopep8 --in-place -a -a mostly formats whitespace and gets rid of trailing semicolons
* qa: remove xml file parameter causing deprecation warningsmormj2020-10-302-2/+2
|
* pybind: add implicit conversion from int to enummormj2020-10-281-0/+2
| | | | | | | | | | | | | * 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
* fft&filter: Remove malloc_complex/freeThomas Habets2020-09-084-32/+1
|
* fft: window: Allow normalizing windowsMartin Braun2020-08-144-4/+65
| | | | | | | | In some applications, it is useful to generate windows that have unit power. The boxcar window (rectangle) is always of unit power, but the other windows are not, leading to apple-to-oranges comparisons, e.g., when switching between window types in a live spectrum estimation application.
* fft: window: Provide default value for beta param on window::buildMartin Braun2020-08-142-2/+2
| | | | | | | | | | | | The API call fft::window::build() takes a third parameter, beta, that only applies for the Kaiser window. For other windows, it is necessary to provide a dummy value to call this function. The declared-deprecated version firdes::window() on the other hand does not require specifying beta when not needed. Instead, we provide a default value of 6.76 which will still generate a valid (and generally useful) Kaiser window, but means we don't have to specify beta for other windows.
* fft: window: Add WIN_NONEMartin Braun2020-08-142-1/+2
| | | | | fft::window is slated to replace firdes::window, we add the missing WIN_NONE for consistency between the two.
* python: Remove unnecessary 'from __future__ import'Oleksandr Kravchuk2020-08-034-6/+0
| | | | | | | | | | | | | | | | All of the removed `from __future__ import` were needed in older versions of Python (mostly 2.5.x and below) but later became mandatory in most versions of Python 3 hence are not necessary anymore. More specifically, according to __future__.py[1]: - unicode_literals is part of Python since versions 2.6.0 and 3.0.0; - print_function is part of Python since versions 2.6.0 and 3.0.0; - absolute_import is part of Python since versions 2.5.0 and 3.0.0; - division is part of Python since versions 2.2.0 and 3.0.0; Get rid of those unnecessary imports to slightly clean up the codebase. [1] https://github.com/python/cpython/blob/master/Lib/__future__.py
* Replace all calls to `get_initial_sptr` with `make_block_sptr`Thomas Habets2020-07-304-6/+5
| | | | | | | | | | | | | | First batch of changes: ``` find […] -print0 | xargs -0 sed -i -r '/get_initial_sptr/{:nxt N;/;/!b nxt;s/get_initial_sptr\(\s*new ([^(]+)(.*)\)\)/make_block_sptr<\1>\2)/}' ``` Then: * Back out `sptr_magic.h` edits * Change some `friend` clauses * clang-format the whole thing * Update checksums in the pybind11 bindings files
* Move from SWIG to Pybind11Marcus Müller2020-06-1925-90/+1221
|\ | | | | | | | | | | Goodbye, and thanks for all the fish, SWIG. Please refer to docs/PYBIND11.md for details on how to deal with Pybind.
| * pybind: add hash check to binding file creation (#3472)mormj2020-06-049-9/+73
| |
| * fft: add pybind11 bindingsJosh Morman2020-06-0422-10/+1157
| |
| * pybind: removal of swig componentsJosh Morman2020-06-043-80/+0
| |
* | cppgen: Add C++ generation support to gr-fftHåkon Vågsether2020-06-114-0/+43
|/
* fft: added gaussian windowJacob Gilbert2020-04-262-0/+31
| | | | and updated the docs for gaussian and tukey windows
* gr-fft: added documentation for flat top window designJacob Gilbert2020-04-261-2/+13
| | | | a note about differences between other popular flat top window generators
* gr-fft: added tukey window generationJacob Gilbert2020-04-262-0/+33
|
* gr-fft: replace stderr logging by calls to GR's logging faciltiesMarcus Müller2020-04-133-8/+26
|
* Remove VOLK as a submoduleMartin Braun2020-04-112-2/+1
| | | | | | | | | | | | | | This removes the volk/ submodule pointer and updates the CMake to detect VOLK like any other dependency. The VOLK_MIN_VERSION CMake variable is added (and set to 2.1.0). The GR_VOLK_LIB variable is replaced with Volk::volk everywhere. The VOLK_INSTALL_LIBRARY_DIR and VOLK_INSTALL_INCLUDE_DIR variables weren't used and were removed. CMake will now fail if VOLK cannot be detected. Therefore, ENABLE_VOLK was also removed as a variable; all in-tree components may assume the existence of VOLK.
* Switch from boost pointers to std C++11 pointersThomas Habets2020-04-014-4/+4
| | | | | | | | | | | | | | | | | | | Most of this code is automated code changes: ``` set -e SUB="s/dummy/dummy/" for i in shared_ptr make_shared dynamic_pointer_cast weak_ptr enable_shared_from_this get_deleter; do SUB="$SUB;s/boost::$i/std::$i/g" done SUB="$SUB;s^#include <boost/shared_ptr.hpp>^#include <memory>^g" SUB="$SUB;s^namespace boost^namespace std^g" find . \( -name "*.cc" -o -name "*.h" -o -name "*.i" -o -name "*.cxx" -o -name "*.py" \) -print0 | xargs -0 sed -i "$SUB" ``` Only one manual change. In `./gr-fec/lib/fec_mtrx_impl.cc`, add `#include <algorithm>`.
* fft: fixup Log Power ymldevnulling2020-01-271-1/+0
|
* Update license header to SPDX formatdevnulling2020-01-2734-441/+34
|
* gr-fft: Remove unused private variables.Ron Economos2020-01-264-14/+3
|
* fft: Add message to static_assertVasil Velichkov2020-01-241-3/+6
| | | | | | | | | | | | In c++11 the static_assert takes two parameters while in c++17 a version with only one parameter was added https://en.cppreference.com/w/cpp/language/static_assert Compilation on CentOS 7 with gcc 4.8.5 fails with gr-fft/lib/fft.cc:164:62: error: expected ',' before ')' token static_assert(sizeof(fftwf_complex) == sizeof(gr_complex));
* gr-fft: always true checkValerii Zapodovnikov2020-01-161-1/+1
|
* Fix all formatting issuesMartin Braun2020-01-101-3/+2
| | | | | This fixes every leftover file in the GNU Radio source tree to match our clang-format definition.
* gr-fft/fft: Fix comment typoThomas Habets2020-01-041-1/+1
|
* gr-fft/goertzel_fc: Remove needless destructorThomas Habets2020-01-042-7/+3
|