GNU Radio 3.5.3.2 C++ API
gri_fir_filter_with_buffer_fff Class Reference

FIR with internal buffer for float input, float output and float taps. More...

#include <gri_fir_filter_with_buffer_fff.h>

List of all members.

Public Member Functions

 gri_fir_filter_with_buffer_fff (const std::vector< float > &taps)
 construct new FIR with given taps.
 ~gri_fir_filter_with_buffer_fff ()
float filter (float input)
 compute a single output value.
float filter (const float input[], unsigned long dec)
 compute a single output value; designed for decimating filters.
void filterN (float output[], const float input[], unsigned long n)
 compute an array of N output values.
void filterNdec (float output[], const float input[], unsigned long n, unsigned long decimate)
 compute an array of N output values, decimating the input
void set_taps (const std::vector< float > &taps)
 install new_taps as the current taps.
unsigned ntaps () const
const std::vector< float > get_taps () const

Protected Attributes

std::vector< float > d_taps
float * d_buffer
unsigned int d_idx

Detailed Description

FIR with internal buffer for float input, float output and float taps.


Constructor & Destructor Documentation

gri_fir_filter_with_buffer_fff::gri_fir_filter_with_buffer_fff ( const std::vector< float > &  taps)

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.

gri_fir_filter_with_buffer_fff::~gri_fir_filter_with_buffer_fff ( )

Member Function Documentation

float gri_fir_filter_with_buffer_fff::filter ( float  input)

compute a single output value.

input is a single input value of the filter type

Returns:
the filtered input value.
float gri_fir_filter_with_buffer_fff::filter ( const float  input[],
unsigned long  dec 
)

compute a single output value; designed for decimating filters.

input is a single input value of the filter type. The value of dec is the decimating value of the filter, so input[] must have dec valid values. The filter pushes dec number of items onto the circ. buffer before computing a single output.

Returns:
the filtered input value.
void gri_fir_filter_with_buffer_fff::filterN ( float  output[],
const float  input[],
unsigned long  n 
)

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.

void gri_fir_filter_with_buffer_fff::filterNdec ( float  output[],
const float  input[],
unsigned long  n,
unsigned long  decimate 
)

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.

const std::vector<float> gri_fir_filter_with_buffer_fff::get_taps ( ) const [inline]
Returns:
current taps

References gr_reverse().

unsigned gri_fir_filter_with_buffer_fff::ntaps ( ) const [inline]
Returns:
number of taps in filter.
void gri_fir_filter_with_buffer_fff::set_taps ( const std::vector< float > &  taps)

install new_taps as the current taps.


Member Data Documentation

unsigned int gri_fir_filter_with_buffer_fff::d_idx [protected]

The documentation for this class was generated from the following file: