GNU Radio 3.7.1 C++ API
|
Polyphase filterbank arbitrary resampler with gr_complex input, gr_complex output and float taps. More...
#include <pfb_arb_resampler_ccf.h>
Public Types | |
typedef boost::shared_ptr < pfb_arb_resampler_ccf > | sptr |
Public Member Functions | |
virtual void | set_taps (const std::vector< float > &taps)=0 |
virtual std::vector < std::vector< float > > | taps () const =0 |
virtual void | print_taps ()=0 |
virtual void | set_rate (float rate)=0 |
virtual void | set_phase (float ph)=0 |
virtual float | phase () const =0 |
virtual unsigned int | taps_per_filter () const =0 |
virtual unsigned int | interpolation_rate () const =0 |
virtual unsigned int | decimation_rate () const =0 |
virtual float | fractional_rate () const =0 |
virtual int | group_delay () const =0 |
virtual float | phase_offset (float freq, float fs)=0 |
Static Public Member Functions | |
static sptr | make (float rate, const std::vector< float > &taps, unsigned int filter_size=32) |
Polyphase filterbank arbitrary resampler with gr_complex input, gr_complex output and float taps.
This block takes in a signal stream and calls gr::filter::kernel::pfb_arb_resampler_ccf to perform arbitrary resampling on the stream.
Output sampling rate is rate
* input rate.
virtual unsigned int gr::filter::pfb_arb_resampler_ccf::decimation_rate | ( | ) | const [pure virtual] |
Gets the decimation rate of the filter.
virtual float gr::filter::pfb_arb_resampler_ccf::fractional_rate | ( | ) | const [pure virtual] |
Gets the fractional rate of the filter.
virtual int gr::filter::pfb_arb_resampler_ccf::group_delay | ( | ) | const [pure virtual] |
Get the group delay of the filter.
virtual unsigned int gr::filter::pfb_arb_resampler_ccf::interpolation_rate | ( | ) | const [pure virtual] |
Gets the interpolation rate of the filter.
static sptr gr::filter::pfb_arb_resampler_ccf::make | ( | float | rate, |
const std::vector< float > & | taps, | ||
unsigned int | filter_size = 32 |
||
) | [static] |
Build the polyphase filterbank arbitray resampler.
rate | (float) Specifies the resampling rate to use |
taps | (vector/list of floats) The prototype filter to populate the filterbank. The taps should be generated at the filter_size sampling rate. |
filter_size | (unsigned int) The number of filters in the filter bank. This is directly related to quantization noise introduced during the resampling. Defaults to 32 filters. |
virtual float gr::filter::pfb_arb_resampler_ccf::phase | ( | ) | const [pure virtual] |
Gets the current phase of the resampler in radians (2 to 2pi).
virtual float gr::filter::pfb_arb_resampler_ccf::phase_offset | ( | float | freq, |
float | fs | ||
) | [pure virtual] |
Calculates the phase offset expected by a sine wave of frequency freq
and sampling rate fs
(assuming input sine wave has 0 degree phase).
virtual void gr::filter::pfb_arb_resampler_ccf::print_taps | ( | ) | [pure virtual] |
Print all of the filterbank taps to screen.
virtual void gr::filter::pfb_arb_resampler_ccf::set_phase | ( | float | ph | ) | [pure virtual] |
Sets the current phase offset in radians (0 to 2pi).
virtual void gr::filter::pfb_arb_resampler_ccf::set_rate | ( | float | rate | ) | [pure virtual] |
Sets the resampling rate of the block.
virtual void gr::filter::pfb_arb_resampler_ccf::set_taps | ( | const std::vector< float > & | taps | ) | [pure virtual] |
Resets the filterbank's filter taps with the new prototype filter
taps | (vector/list of floats) The prototype filter to populate the filterbank. |
virtual std::vector<std::vector<float> > gr::filter::pfb_arb_resampler_ccf::taps | ( | ) | const [pure virtual] |
Return a vector<vector<>> of the filterbank taps
virtual unsigned int gr::filter::pfb_arb_resampler_ccf::taps_per_filter | ( | ) | const [pure virtual] |
Gets the number of taps per filter.