GNU Radio 3.5.3.2 C++ API
|
Abstract class for FIR with gr_complex input, gr_complex output and float tapsThis is the abstract class for a Finite Impulse Response filter. More...
#include <gr_fir_ccf.h>
Public Member Functions | |
gr_fir_ccf () | |
construct new FIR with given taps. | |
gr_fir_ccf (const std::vector< float > &taps) | |
virtual | ~gr_fir_ccf () |
virtual gr_complex | filter (const gr_complex input[])=0 |
compute a single output value. | |
virtual void | filterN (gr_complex output[], const gr_complex input[], unsigned long n)=0 |
compute an array of N output values. | |
virtual void | filterNdec (gr_complex output[], const gr_complex input[], unsigned long n, unsigned decimate)=0 |
compute an array of N output values, decimating the input | |
virtual void | set_taps (const std::vector< float > &taps) |
install new_taps as the current taps. | |
unsigned | ntaps () const |
virtual const std::vector< float > | get_taps () const |
Protected Attributes | |
std::vector< float > | d_taps |
Abstract class for FIR with gr_complex input, gr_complex output and float taps
This is the abstract class for a Finite Impulse Response filter.
The trailing suffix has the form _IOT where I codes the input type, O codes the output type, and T codes the tap type. I,O,T are elements of the set 's' (short), 'f' (float), 'c' (gr_complex), 'i' (int)
gr_fir_ccf::gr_fir_ccf | ( | ) | [inline] |
construct new FIR with given taps.
Note that taps must be in forward order, e.g., coefficient 0 is stored in new_taps[0], coefficient 1 is stored in new_taps[1], etc.
gr_fir_ccf::gr_fir_ccf | ( | const std::vector< float > & | taps | ) | [inline] |
virtual gr_fir_ccf::~gr_fir_ccf | ( | ) | [virtual] |
virtual gr_complex gr_fir_ccf::filter | ( | const gr_complex | input[] | ) | [pure virtual] |
compute a single output value.
input
must have ntaps() valid entries. input[0] .. input[ntaps() - 1] are referenced to compute the output value.
Implemented in gr_fir_ccf_generic, gr_fir_ccf_armv7_a, and gr_fir_ccf_simd.
virtual void gr_fir_ccf::filterN | ( | gr_complex | output[], |
const gr_complex | input[], | ||
unsigned long | n | ||
) | [pure virtual] |
compute an array of N output values.
input
must have (n - 1 + ntaps()) valid entries. input[0] .. input[n - 1 + ntaps() - 1] are referenced to compute the output values.
Implemented in gr_fir_ccf_generic.
virtual void gr_fir_ccf::filterNdec | ( | gr_complex | output[], |
const gr_complex | input[], | ||
unsigned long | n, | ||
unsigned | decimate | ||
) | [pure virtual] |
compute an array of N output values, decimating the input
input
must have (decimate * (n - 1) + ntaps()) valid entries. input[0] .. input[decimate * (n - 1) + ntaps() - 1] are referenced to compute the output values.
Implemented in gr_fir_ccf_generic.
virtual const std::vector<float> gr_fir_ccf::get_taps | ( | ) | const [inline, virtual] |
References gr_reverse().
unsigned gr_fir_ccf::ntaps | ( | ) | const [inline] |
virtual void gr_fir_ccf::set_taps | ( | const std::vector< float > & | taps | ) | [inline, virtual] |
install new_taps
as the current taps.
Reimplemented in gr_fir_ccf_armv7_a, and gr_fir_ccf_simd.
References gr_reverse().
std::vector<float> gr_fir_ccf::d_taps [protected] |