 |
GNU Radio C++ API Reference
3.10.12.0
The Free & Open Software Radio Ecosystem
|
|
Go to the documentation of this file.
11 #ifndef INCLUDED_FILTER_FFT_FILTER_H
12 #define INCLUDED_FILTER_FFT_FILTER_H
18 #include <volk/volk_alloc.hh>
64 std::unique_ptr<fft::fft_real_fwd> d_fwdfft;
65 std::unique_ptr<fft::fft_real_rev> d_invfft;
67 std::vector<float> d_tail;
68 std::vector<float> d_taps;
69 volk::vector<gr_complex> d_xformed_taps;
71 void compute_sizes(
int ntaps);
72 int tailsize()
const {
return d_ntaps - 1; }
115 std::vector<float>
taps()
const;
134 int filter(
int nitems,
const float* input,
float* output);
177 std::unique_ptr<fft::fft_complex_fwd> d_fwdfft;
178 std::unique_ptr<fft::fft_complex_rev> d_invfft;
180 std::vector<gr_complex> d_tail;
181 std::vector<gr_complex> d_taps;
182 volk::vector<gr_complex> d_xformed_taps;
184 void compute_sizes(
int ntaps);
185 int tailsize()
const {
return d_ntaps - 1; }
228 std::vector<gr_complex>
taps()
const;
290 std::unique_ptr<fft::fft_complex_fwd> d_fwdfft;
291 std::unique_ptr<fft::fft_complex_rev> d_invfft;
293 std::vector<gr_complex> d_tail;
294 std::vector<float> d_taps;
295 volk::vector<gr_complex> d_xformed_taps;
297 void compute_sizes(
int ntaps);
298 int tailsize()
const {
return d_ntaps - 1; }
341 std::vector<float>
taps()
const;
Fast FFT filter with gr_complex input, gr_complex output and gr_complex taps.
Definition: fft_filter.h:171
int filter(int nitems, const gr_complex *input, gr_complex *output)
Perform the filter operation.
#define FILTER_API
Definition: gr-filter/include/gnuradio/filter/api.h:18
int nthreads() const
Get number of threads being used.
fft_filter_fff & operator=(const fft_filter_fff &)=delete
fft_filter_ccf(int decimation, const std::vector< float > &taps, int nthreads=1)
Construct an FFT filter for complex vectors with the given taps and decimation rate.
int set_taps(const std::vector< float > &taps)
Set new taps for the filter.
fft_filter_ccf(fft_filter_ccf &&)=default
fft_filter_ccc(int decimation, const std::vector< gr_complex > &taps, int nthreads=1)
Construct an FFT filter for complex vectors with the given taps and decimation rate.
unsigned int ntaps() const
Returns the number of taps in the filter.
int nthreads() const
Get number of threads being used.
void set_nthreads(int n)
Set number of threads to use.
std::vector< gr_complex > taps() const
Returns the taps.
fft_filter_ccc(fft_filter_ccc &&)=default
int set_taps(const std::vector< float > &taps)
Set new taps for the filter.
unsigned int filtersize() const
Returns the actual size of the filter.
void set_nthreads(int n)
Set number of threads to use.
int nthreads() const
Get number of threads being used.
fft_filter_ccf(const fft_filter_ccf &)=delete
fft_filter_ccc & operator=(const fft_filter_ccc &)=delete
Fast FFT filter with float input, float output and float taps.
Definition: fft_filter.h:58
void set_nthreads(int n)
Set number of threads to use.
std::complex< float > gr_complex
Definition: gr_complex.h:15
fft_filter_ccc & operator=(fft_filter_ccc &&)=default
fft_filter_ccf & operator=(fft_filter_ccf &&)=default
std::vector< float > taps() const
Returns the taps.
fft_filter_fff(fft_filter_fff &&)=default
fft_filter_ccf & operator=(const fft_filter_ccf &)=delete
unsigned int ntaps() const
Returns the number of taps in the filter.
fft_filter_fff(int decimation, const std::vector< float > &taps, int nthreads=1)
Construct an FFT filter for float vectors with the given taps and decimation rate.
GNU Radio logging wrapper.
Definition: basic_block.h:29
Fast FFT filter with gr_complex input, gr_complex output and float taps.
Definition: fft_filter.h:284
int set_taps(const std::vector< gr_complex > &taps)
Set new taps for the filter.
unsigned int ntaps() const
Returns the number of taps in the filter.
int filter(int nitems, const gr_complex *input, gr_complex *output)
Perform the filter operation.
fft_filter_fff & operator=(fft_filter_fff &&)=default
std::shared_ptr< logger > logger_ptr
Definition: logger.h:250
std::vector< float > taps() const
Returns the taps.
fft_filter_fff(const fft_filter_fff &)=delete
fft_filter_ccc(const fft_filter_ccc &)=delete
int filter(int nitems, const float *input, float *output)
Perform the filter operation.
static constexpr float taps[NSTEPS+1][NTAPS]
Definition: interpolator_taps.h:9