ape  0.5.0
Audio Programming Environment
Public Member Functions | Protected Member Functions | List of all members
ape::FFTBase< T > Class Template Reference

Shared operations on typed FFTs.

See also
FFT<float>, FFT<double>
More...

#include <fft.h>

Public Member Functions

void forward (uarray< std::complex< T >> inout)
 Do in-place forward complex fourier transform More...
 
void forward (uarray< const std::complex< T >> in, uarray< std::complex< T >> out)
 Do out of place forward complex fourier transform More...
 
void forwardReal (uarray< const T > in, uarray< std::complex< T >> out)
 Do out of place forward real only fourier transform More...
 
void inverse (uarray< std::complex< T >> inout)
 Do in-place backwards / inverse complex fourier transform. The output will be scaled back such that inverse(forward(signal)) equals the original signal More...
 
void inverse (uarray< const std::complex< T >> in, uarray< std::complex< T >> out)
 Do out of place backwards / inverse complex fourier transform. The output will be scaled back such that inverse(forward(signal)) equals the original signal More...
 
void inverseNonScaled (uarray< std::complex< T >> inout)
 Do in-place backwards / inverse complex fourier transform. The output will not be scaled. More...
 
void inverseNonScaled (uarray< const std::complex< T >> in, uarray< std::complex< T >> out)
 Do out of place backwards / inverse complex fourier transform. The output will not be scaled. More...
 
 FFTBase (FFTBase &&other)
 
FFTBaseoperator= (FFTBase &&other)
 
FFTBaseoperator= (const FFTBase &other)=delete
 
 FFTBase (const FFTBase &other)=delete
 
 ~FFTBase ()
 

Protected Member Functions

 FFTBase (std::size_t N, int fft)
 

Detailed Description

template<typename T>
class ape::FFTBase< T >

Shared operations on typed FFTs.

See also
FFT<float>, FFT<double>

Constructor & Destructor Documentation

◆ FFTBase() [1/3]

template<typename T>
ape::FFTBase< T >::FFTBase ( FFTBase< T > &&  other)
inline

◆ FFTBase() [2/3]

template<typename T>
ape::FFTBase< T >::FFTBase ( const FFTBase< T > &  other)
delete

◆ ~FFTBase()

template<typename T>
ape::FFTBase< T >::~FFTBase ( )
inline

◆ FFTBase() [3/3]

template<typename T>
ape::FFTBase< T >::FFTBase ( std::size_t  N,
int  fft 
)
inlineprotected

Member Function Documentation

◆ forward() [1/2]

template<typename T>
void ape::FFTBase< T >::forward ( uarray< const std::complex< T >>  in,
uarray< std::complex< T >>  out 
)
inline

Do out of place forward complex fourier transform

◆ forward() [2/2]

template<typename T>
void ape::FFTBase< T >::forward ( uarray< std::complex< T >>  inout)
inline

Do in-place forward complex fourier transform

◆ forwardReal()

template<typename T>
void ape::FFTBase< T >::forwardReal ( uarray< const T >  in,
uarray< std::complex< T >>  out 
)
inline

Do out of place forward real only fourier transform

The complex mirror spectrum is not guaranteed to exist in the output

◆ inverse() [1/2]

template<typename T>
void ape::FFTBase< T >::inverse ( uarray< const std::complex< T >>  in,
uarray< std::complex< T >>  out 
)
inline

Do out of place backwards / inverse complex fourier transform. The output will be scaled back such that inverse(forward(signal)) equals the original signal

◆ inverse() [2/2]

template<typename T>
void ape::FFTBase< T >::inverse ( uarray< std::complex< T >>  inout)
inline

Do in-place backwards / inverse complex fourier transform. The output will be scaled back such that inverse(forward(signal)) equals the original signal

◆ inverseNonScaled() [1/2]

template<typename T>
void ape::FFTBase< T >::inverseNonScaled ( uarray< const std::complex< T >>  in,
uarray< std::complex< T >>  out 
)
inline

Do out of place backwards / inverse complex fourier transform. The output will not be scaled.

◆ inverseNonScaled() [2/2]

template<typename T>
void ape::FFTBase< T >::inverseNonScaled ( uarray< std::complex< T >>  inout)
inline

Do in-place backwards / inverse complex fourier transform. The output will not be scaled.

◆ operator=() [1/2]

template<typename T>
FFTBase& ape::FFTBase< T >::operator= ( const FFTBase< T > &  other)
delete

◆ operator=() [2/2]

template<typename T>
FFTBase& ape::FFTBase< T >::operator= ( FFTBase< T > &&  other)
inline

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