Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: VampPluginSDK: Vamp::FFTComplex Class Reference Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Chris@6:
VampPluginSDK Chris@6:  2.7 Chris@6:
Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6:
Chris@6:
Chris@6:
Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6:
Chris@6:
Vamp::FFTComplex Class Reference
Chris@6:
Chris@6:
Chris@6: Chris@6:

A simple FFT implementation provided for convenience of plugin authors. Chris@6: More...

Chris@6: Chris@6:

#include <FFT.h>

Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:

Chris@6: Public Member Functions

 FFTComplex (unsigned int n)
 Prepare to calculate transforms of size n. More...
 
 ~FFTComplex ()
 
void forward (const double *ci, double *co)
 Calculate a forward transform of size n. More...
 
void inverse (const double *ci, double *co)
 Calculate an inverse transform of size n. More...
 
Chris@6: Chris@6: Chris@6: Chris@6:

Chris@6: Private Attributes

D * m_d
 
Chris@6:

Detailed Description

Chris@6:

A simple FFT implementation provided for convenience of plugin authors.

Chris@6:

This class provides double-precision complex-complex transforms.

Chris@6:

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.

Chris@6:

The forward transform is unscaled; the inverse transform is scaled by 1/n.

Chris@6: Chris@6:

Definition at line 109 of file FFT.h.

Chris@6:

Constructor & Destructor Documentation

Chris@6: Chris@6:

◆ FFTComplex()

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Vamp::FFTComplex::FFTComplex (unsigned int n)
Chris@6:
Chris@6: Chris@6:

Prepare to calculate transforms of size n.

Chris@6:

n must be a multiple of 2.

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6:

◆ ~FFTComplex()

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Vamp::FFTComplex::~FFTComplex ()
Chris@6:
Chris@6: Chris@6:
Chris@6:
Chris@6:

Member Function Documentation

Chris@6: Chris@6:

◆ forward()

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
void Vamp::FFTComplex::forward (const double * ci,
double * co 
)
Chris@6:
Chris@6: Chris@6:

Calculate a forward transform of size n.

Chris@6:

ci must point to the interleaved complex input data of size n (that is, 2n doubles in total).

Chris@6:

co must point to enough space to receive an interleaved complex output array of size n (that is, 2n doubles in total).

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6:

◆ inverse()

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
void Vamp::FFTComplex::inverse (const double * ci,
double * co 
)
Chris@6:
Chris@6: Chris@6:

Calculate an inverse transform of size n.

Chris@6:

ci must point to an interleaved complex input array of size n (that is, 2n doubles in total).

Chris@6:

co must point to enough space to receive the interleaved complex output data of size n (that is, 2n doubles in total). The output is scaled by 1/n.

Chris@6: Chris@6:
Chris@6:
Chris@6:

Member Data Documentation

Chris@6: Chris@6:

◆ m_d

Chris@6: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
D* Vamp::FFTComplex::m_d
Chris@6:
Chris@6: private
Chris@6:
Chris@6: Chris@6:

Definition at line 144 of file FFT.h.

Chris@6: Chris@6:
Chris@6:
Chris@6:
The documentation for this class was generated from the following file: Chris@6:
Chris@6:
Chris@6: Chris@6: Chris@6: Chris@6: