VampPluginSDK
2.10
|
A simple FFT implementation provided for convenience of plugin authors. More...
#include <FFT.h>
Public Member Functions | |
FFTReal (unsigned int n) | |
Prepare to calculate transforms of size n. More... | |
~FFTReal () | |
void | forward (const double *ri, double *co) |
Calculate a forward transform of size n. More... | |
void | inverse (const double *ci, double *ro) |
Calculate an inverse transform of size n. More... | |
Private Attributes | |
D * | m_d |
Detailed Description
A simple FFT implementation provided for convenience of plugin authors.
This class provides transforms between double-precision real time-domain and double-precision complex frequency-domain data.
Note: If the SDK has been compiled with the SINGLE_PRECISION_FFT flag, then all FFTs will use single precision internally. The default is double precision. The API uses doubles in either case.
The forward transform is unscaled; the inverse transform is scaled by 1/n.
Constructor & Destructor Documentation
Vamp::FFTReal::FFTReal | ( | unsigned int | n | ) |
Prepare to calculate transforms of size n.
n must be a multiple of 2.
Vamp::FFTReal::~FFTReal | ( | ) |
Member Function Documentation
void Vamp::FFTReal::forward | ( | const double * | ri, |
double * | co | ||
) |
Calculate a forward transform of size n.
ri must point to the real input data of size n.
co must point to enough space to receive an interleaved complex output array of size n/2+1 (that is, n+2 doubles in total).
void Vamp::FFTReal::inverse | ( | const double * | ci, |
double * | ro | ||
) |
Calculate an inverse transform of size n.
ci must point to an interleaved complex input array of size n/2+1 (that is, n+2 doubles in total).
ro must point to enough space to receive the real output data of size n. The output is scaled by 1/n and only the real part is returned.
Member Data Documentation
The documentation for this class was generated from the following file:
Generated by 1.8.11