Loading...
Searching...
No Matches
gr::filter::kernel::filterbank Class Reference

A filter bank with generic taps. More...

`#include <gnuradio/filter/filterbank.h>`

## Public Member Functions

| filterbank (const std::vector< std::vector< float > > &taps)
| filterbank (filterbank &&)=default
virtual | ~filterbank ()=default
virtual void | set_taps (const std::vector< std::vector< float > > &taps)
void | print_taps ()
std::vector< std::vector< float > > | taps () const

## Protected Attributes

std::vector< std::vector< float > > | d_taps
unsigned int | d_nfilts
unsigned int | d_ntaps
std::vector< kernel::fir_filter_ccf > | d_fir_filters
std::vector< bool > | d_active
unsigned int | d_taps_per_filter

## Detailed Description

A filter bank with generic taps.

This block takes in a vector of N complex inputs, passes them through N FIR filters, and outputs a vector of N complex outputs.

The only advantage of using this block over N individual FIR filter blocks is that it places less of a load on the scheduler.

The number of filters cannot be changed dynamically, however filters can be deactivated (i.e. no processing is done for them) by passing a vector of filter taps containing all zeros to them. In this case their entry in the output vector is a zero.

## Constructor & Destructor Documentation

## filterbank() [1/2]

gr::filter::kernel::filterbank::filterbank | ( | const std::vector< std::vector< float > > & | taps | ) |

Build the filterbank.

Parameters

  taps | (vector of vector of floats / list of list of floats) Populates the filters.

References taps().

Referenced by filterbank().

## filterbank() [2/2]

gr::filter::kernel::filterbank::filterbank | ( | filterbank && |  | ) |

default

References filterbank().

## ~filterbank()

virtual gr::filter::kernel::filterbank::~filterbank | ( |  | ) |

virtual default

## Member Function Documentation

## print_taps()

void gr::filter::kernel::filterbank::print_taps | ( |  | ) |

Print all of the filterbank taps to screen.

## set_taps()

virtual void gr::filter::kernel::filterbank::set_taps | ( | const std::vector< std::vector< float > > & | taps | ) |

virtual

Update the filterbank's filter taps.

Parameters

  taps | (vector of vector of floats / list of list of floats) The prototype filter to populate the filterbank.

References taps().

## taps()

std::vector< std::vector< float > > gr::filter::kernel::filterbank::taps | ( |  | ) | const

Return a vector<vector<>> of the filterbank taps

Referenced by filterbank(), and set_taps().

## Member Data Documentation

## d_active

std::vector<bool> gr::filter::kernel::filterbank::d_active

protected

## d_fir_filters

std::vector<kernel::fir_filter_ccf> gr::filter::kernel::filterbank::d_fir_filters

protected

## d_nfilts

unsigned int gr::filter::kernel::filterbank::d_nfilts

protected

## d_ntaps

unsigned int gr::filter::kernel::filterbank::d_ntaps

protected

## d_taps

std::vector<std::vector<float> > gr::filter::kernel::filterbank::d_taps

protected

## d_taps_per_filter

unsigned int gr::filter::kernel::filterbank::d_taps_per_filter

protected

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

- filterbank.h