GNU Radio 3.6.5 C++ API
|
Abstract class for FIR with float input, float output and float tapsThis is the abstract class for a Finite Impulse Response filter. More...
#include <gr_fir_fff.h>
Public Member Functions | |
gr_fir_fff () | |
construct new FIR with given taps. | |
gr_fir_fff (const std::vector< float > &taps) | |
virtual | ~gr_fir_fff () |
virtual float | filter (const float input[])=0 |
compute a single output value. | |
virtual void | filterN (float output[], const float input[], unsigned long n)=0 |
compute an array of N output values. | |
virtual void | filterNdec (float output[], const float 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 float input, float 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_fff::gr_fir_fff | ( | ) | [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_fff::gr_fir_fff | ( | const std::vector< float > & | taps | ) | [inline] |
virtual gr_fir_fff::~gr_fir_fff | ( | ) | [virtual] |
virtual float gr_fir_fff::filter | ( | const float | 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_fff_altivec, gr_fir_fff_armv7_a, gr_fir_fff_simd, and gr_fir_fff_generic.
virtual void gr_fir_fff::filterN | ( | float | output[], |
const float | 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_fff_generic.
virtual void gr_fir_fff::filterNdec | ( | float | output[], |
const float | 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_fff_generic.
virtual const std::vector<float> gr_fir_fff::get_taps | ( | ) | const [inline, virtual] |
References gr_reverse().
unsigned gr_fir_fff::ntaps | ( | ) | const [inline] |
virtual void gr_fir_fff::set_taps | ( | const std::vector< float > & | taps | ) | [inline, virtual] |
install new_taps
as the current taps.
Reimplemented in gr_fir_fff_altivec, gr_fir_fff_armv7_a, and gr_fir_fff_simd.
References gr_reverse().
std::vector<float> gr_fir_fff::d_taps [protected] |