GNU Radio 3.6.5 C++ API
|
#include <pfb_synthesizer_ccf_impl.h>
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 |
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 | ( | ) |
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
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.