diff options
author | Martyn van Dijke <martijnvdijke600@gmail.com> | 2021-04-09 10:36:00 +0200 |
---|---|---|
committer | mormj <34754695+mormj@users.noreply.github.com> | 2021-04-22 11:45:34 -0400 |
commit | 52843c43bfa054c84270a9298274b0b9e4f2dae1 (patch) | |
tree | 2578cb89949e8a7175840d578a4fb6af16146288 | |
parent | 310b41c6e2b098042a3b9eb8f8da624a4e7313da (diff) |
filter: Add C++ templates for Interpolating FIR filter
Signed-off-by: Martyn <martijnvdijke600@gmail.com>
-rw-r--r-- | gr-filter/grc/filter_interp_fir_filter_xxx.block.yml | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gr-filter/grc/filter_interp_fir_filter_xxx.block.yml b/gr-filter/grc/filter_interp_fir_filter_xxx.block.yml index 25a70a53f6..06a97f1f97 100644 --- a/gr-filter/grc/filter_interp_fir_filter_xxx.block.yml +++ b/gr-filter/grc/filter_interp_fir_filter_xxx.block.yml @@ -1,6 +1,6 @@ id: interp_fir_filter_xxx label: Interpolating FIR Filter -flags: [ python ] +flags: [ python, cpp ] parameters: - id: type @@ -46,5 +46,18 @@ templates: self.${id}.declare_sample_delay(${samp_delay}) callbacks: - set_taps(${taps}) +cpp_templates: + includes : ['#include <gnuradio/filter/interp_fir_filter.h>'] + declarations: 'filter::interp_fir_filter_${type}::sptr ${id};' + make: |- + % if str(type.taps) == "complex_vector": + std::vector<gr_complex> taps = {${str(taps)[1:-1]}}; + % else: + std::vector<int> taps = {${str(taps)[1:-1]}}; + % endif + this->${id} = filter::interp_fir_filter_${type}::make(${interp}, taps); + link: ['gnuradio-filter'] + callbacks: + - set_taps(${taps}) file_format: 1 |