GNU Radio 3.6.5 C++ API

gr::filter::pfb_synthesizer_ccf_impl Class Reference

#include <pfb_synthesizer_ccf_impl.h>

Inheritance diagram for gr::filter::pfb_synthesizer_ccf_impl:
gr::filter::pfb_synthesizer_ccf gr_sync_interpolator gr_sync_block gr_block gr_basic_block gr_msg_accepter gruel::msg_accepter

List of all members.

Public Member Functions

 pfb_synthesizer_ccf_impl (unsigned int numchans, const std::vector< float > &taps, bool twox)
 ~pfb_synthesizer_ccf_impl ()
void set_taps (const std::vector< float > &taps)
std::vector< std::vector< float > > taps () const
void print_taps ()
void set_channel_map (const std::vector< int > &map)
std::vector< int > channel_map () const
int work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
 just like gr_block::general_work, only this arranges to call consume_each for you

Constructor & Destructor Documentation

gr::filter::pfb_synthesizer_ccf_impl::pfb_synthesizer_ccf_impl ( unsigned int  numchans,
const std::vector< float > &  taps,
bool  twox 
)
gr::filter::pfb_synthesizer_ccf_impl::~pfb_synthesizer_ccf_impl ( )

Member Function Documentation

std::vector<int> gr::filter::pfb_synthesizer_ccf_impl::channel_map ( ) const [virtual]

Gets the current channel map.

Implements gr::filter::pfb_synthesizer_ccf.

void gr::filter::pfb_synthesizer_ccf_impl::print_taps ( ) [virtual]

Print all of the filterbank taps to screen.

Implements gr::filter::pfb_synthesizer_ccf.

void gr::filter::pfb_synthesizer_ccf_impl::set_channel_map ( const std::vector< int > &  map) [virtual]

Set the channel map. Channels are numbers as: N/2+1 | ... | N-1 | 0 | 1 | 2 | ... | N/2 <------------------- 0 --------------------> freq

So input stream 0 goes to channel 0, etc. Setting a new channel map allows the user to specify where in frequency he/she wants the input stream to go. This is especially useful to avoid putting signals into the channels on the edge of the spectrum which can either wrap around (in the case of odd number of channels) and be affected by filter rolloff in the transmitter.

The map must be at least the number of streams being sent to the block. Less and the algorithm will not have enough data to properly setup the buffers. Any more channels specified will be ignored.

Implements gr::filter::pfb_synthesizer_ccf.

void gr::filter::pfb_synthesizer_ccf_impl::set_taps ( const std::vector< float > &  taps) [virtual]

Resets the filterbank's filter taps with the new prototype filter

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

Implements gr::filter::pfb_synthesizer_ccf.

std::vector<std::vector<float> > gr::filter::pfb_synthesizer_ccf_impl::taps ( ) const [virtual]

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

Implements gr::filter::pfb_synthesizer_ccf.

int gr::filter::pfb_synthesizer_ccf_impl::work ( int  noutput_items,
gr_vector_const_void_star input_items,
gr_vector_void_star output_items 
) [virtual]

just like gr_block::general_work, only this arranges to call consume_each for you

The user must override work to define the signal processing code

Implements gr_sync_block.


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