Audio Processing Framework (APF) version 0.5.0
|
Forward-FFT-related functions. More...
#include <apf/convolver.h>
Public Member Functions | |
template<typename In > | |
void | prepare_filter (In first, In last, Filter &filter) const |
Transform time-domain samples. More... | |
size_t | block_size () const |
size_t | partition_size () const |
template<typename In > | |
In | prepare_partition (In first, In last, fft_node &partition) const |
FFT of one block. More... | |
Protected Types | |
using | scoped_plan = fftw< float >::scoped_plan |
using | plan_ptr = std::unique_ptr< scoped_plan > |
Protected Member Functions | |
TransformBase (size_t block_size_) | |
TransformBase (TransformBase &&)=default | |
plan_ptr | _create_plan (float *array) const |
Create in-place FFT plan for halfcomplex data format. More... | |
void | _fft (float *first) const |
In-place FFT. More... | |
Protected Attributes | |
plan_ptr | _fft_plan |
Forward-FFT-related functions.
Definition at line 126 of file convolver.h.
|
protected |
Definition at line 144 of file convolver.h.
|
protected |
Definition at line 145 of file convolver.h.
|
explicitprotected |
Definition at line 165 of file convolver.h.
void apf::conv::TransformBase::prepare_filter | ( | In | first, |
In | last, | ||
Filter & | filter | ||
) | const |
Transform time-domain samples.
If there are too few input samples, the rest is zero-padded, if there are too few blocks in the container c
, the rest of the samples is ignored.
first | Iterator to first time-domain sample | |
last | Past-the-end iterator | |
[out] | filter | Target container |
Definition at line 198 of file convolver.h.
References prepare_partition().
Referenced by apf::conv::Filter::Filter().
|
inline |
Definition at line 132 of file convolver.h.
|
inline |
Definition at line 133 of file convolver.h.
In apf::conv::TransformBase::prepare_partition | ( | In | first, |
In | last, | ||
fft_node & | partition | ||
) | const |
FFT of one block.
If there are too few coefficients, the rest is zero-padded.
first | Iterator to first coefficient | |
last | Past-the-end iterator | |
[out] | partition | Target partition |
In | Forward iterator |
Definition at line 217 of file convolver.h.
References _fft(), apf::math::has_only_zeros(), and apf::conv::fft_node::zero.
Referenced by prepare_filter().
|
protected |
Create in-place FFT plan for halfcomplex data format.
Definition at line 183 of file convolver.h.
Referenced by apf::conv::Input::Input().
|
inlineprotected |
In-place FFT.
Definition at line 150 of file convolver.h.
Referenced by apf::conv::Input::add_block(), and prepare_partition().
|
protected |
Definition at line 156 of file convolver.h.