GNU Radio 3.5.3.2 C++ API
gri_fir_filter_with_buffer_ccf Class Reference

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

#include <gri_fir_filter_with_buffer_ccf.h>

List of all members.

Public Member Functions

 gri_fir_filter_with_buffer_ccf (const std::vector< float > &taps)
 construct new FIR with given taps.
 ~gri_fir_filter_with_buffer_ccf ()
gr_complex filter (gr_complex input)
 compute a single output value.
gr_complex filter (const gr_complex input[], unsigned long dec)
 compute a single output value; designed for decimating filters.
void filterN (gr_complex output[], const gr_complex input[], unsigned long n)
 compute an array of N output values.
void filterNdec (gr_complex output[], const gr_complex 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
gr_complexd_buffer
unsigned int d_idx

Detailed Description

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


Constructor & Destructor Documentation

gri_fir_filter_with_buffer_ccf::gri_fir_filter_with_buffer_ccf ( 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_ccf::~gri_fir_filter_with_buffer_ccf ( )

Member Function Documentation

gr_complex gri_fir_filter_with_buffer_ccf::filter ( gr_complex  input)

compute a single output value.

input is a single input value of the filter type

Returns:
the filtered input value.
gr_complex gri_fir_filter_with_buffer_ccf::filter ( const gr_complex  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_ccf::filterN ( gr_complex  output[],
const gr_complex  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_ccf::filterNdec ( gr_complex  output[],
const gr_complex  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_ccf::get_taps ( ) const [inline]
Returns:
current taps

References gr_reverse().

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

install new_taps as the current taps.


Member Data Documentation

unsigned int gri_fir_filter_with_buffer_ccf::d_idx [protected]

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