GNU Radio 3.6.5 C++ API

Fast FFT filter with gr_complex input, gr_complex output and gr_complex taps. More...
#include <fft_filter_ccc.h>
Public Types  
typedef boost::shared_ptr < fft_filter_ccc >  sptr 
Public Member Functions  
virtual void  set_taps (const std::vector< gr_complex > &taps)=0 
virtual std::vector< gr_complex >  taps () const =0 
virtual void  set_nthreads (int n)=0 
Set number of threads to use.  
virtual int  nthreads () const =0 
Get number of threads being used.  
Static Public Member Functions  
static sptr  make (int decimation, const std::vector< gr_complex > &taps, int nthreads=1) 
Fast FFT filter with gr_complex input, gr_complex output and gr_complex taps.
This block implements a complex decimating filter using the fast convolution method via an FFT. The decimation factor is an interger that is greater than or equal to 1.
The filter takes a set of complex (or real) taps to use in the filtering operation. These taps can be defined as anything that satisfies the user's filtering needs. For standard filters such as lowpass, highpass, bandpass, etc., the filter.firdes and filter.optfir classes provide convenient generating methods.
This filter is implemented by using the FFTW package to perform the required FFTs. An optional argument, nthreads, may be passed to the constructor (or set using the set_nthreads member function) to split the FFT among N number of threads. This can improve performance on very large FFTs (that is, if the number of taps used is very large) if you have enough threads/cores to support it.
static sptr gr::filter::fft_filter_ccc::make  (  int  decimation, 
const std::vector< gr_complex > &  taps,  
int  nthreads = 1 

)  [static] 
Build an FFT filter blocks.
decimation  >= 1 
taps  complex filter taps 
nthreads  number of threads for the FFT to use 
virtual int gr::filter::fft_filter_ccc::nthreads  (  )  const [pure virtual] 
Get number of threads being used.
Implemented in gr::filter::fft_filter_ccc_impl.
virtual void gr::filter::fft_filter_ccc::set_nthreads  (  int  n  )  [pure virtual] 
Set number of threads to use.
Implemented in gr::filter::fft_filter_ccc_impl.
virtual void gr::filter::fft_filter_ccc::set_taps  (  const std::vector< gr_complex > &  taps  )  [pure virtual] 
Implemented in gr::filter::fft_filter_ccc_impl.
virtual std::vector<gr_complex> gr::filter::fft_filter_ccc::taps  (  )  const [pure virtual] 
Implemented in gr::filter::fft_filter_ccc_impl.