sdr::FFTPlan< Scalar > Class Template Reference

Trivial FFT implementation for buffer sizes of N=2**K. More...

`#include <fftplan_native.hh>`

## Public Types

typedef Traits< Scalar >::SScalar | SScalar
| The super-scalar of the input type. More...

## Public Member Functions

| FFTPlan (const Buffer< std::complex< Scalar > > &in, const Buffer< std::complex< Scalar > > &out, FFT::Direction dir)
| Constructs a FFT plan for the input and output buffers. More...
virtual | ~FFTPlan ()
| Destructor. More...
void | operator() ()
| Performs the FFT. More...

## Protected Member Functions

void | _calc (std::complex< Scalar > *a, std::complex< Scalar > *b, size_t N, size_t stride)
| Actual FFT implmenetation. More...

## Protected Attributes

size_t | _N
| FFT size, needs to be a power of 2. More...
Buffer< std::complex< Scalar > > | _in
| The input buffer. More...
Buffer< std::complex< Scalar > > | _out
| The output buffer. More...
Buffer< std::complex< SScalar > > | _lut
| The exp(-i 2 pi k / N) look-up table. More...

## Detailed Description

### template<class Scalar>
class sdr::FFTPlan< Scalar >

Trivial FFT implementation for buffer sizes of N=2**K.

## Member Typedef Documentation

template<class Scalar>

typedef Traits<Scalar >::SScalar sdr::FFTPlan< Scalar >::SScalar

The super-scalar of the input type.

## Constructor & Destructor Documentation

template<class Scalar>

sdr::FFTPlan< Scalar >::FFTPlan | ( | const Buffer< std::complex< Scalar > > & | in,
|  | const Buffer< std::complex< Scalar > > & | out,
|  | FFT::Direction | dir
| ) |  |

inline

Constructs a FFT plan for the input and output buffers.

template<class Scalar>

virtual sdr::FFTPlan< Scalar >::~FFTPlan | ( |  | ) |

inlinevirtual

Destructor.

## Member Function Documentation

template<class Scalar>

void sdr::FFTPlan< Scalar >::_calc | ( | std::complex< Scalar > * | a,
|  | std::complex< Scalar > * | b,
|  | size_t | N,
|  | size_t | stride
| ) |  |

inlineprotected

Actual FFT implmenetation.

template<class Scalar>

void sdr::FFTPlan< Scalar >::operator() | ( |  | ) |

inline

Performs the FFT.

## Member Data Documentation

template<class Scalar>

Buffer< std::complex<Scalar> > sdr::FFTPlan< Scalar >::_in

protected

The input buffer.

template<class Scalar>

Buffer< std::complex<SScalar> > sdr::FFTPlan< Scalar >::_lut

protected

The exp(-i 2 pi k / N) look-up table.

template<class Scalar>

size_t sdr::FFTPlan< Scalar >::_N

protected

FFT size, needs to be a power of 2.

template<class Scalar>

Buffer< std::complex<Scalar> > sdr::FFTPlan< Scalar >::_out

protected

The output buffer.

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

- /Users/hannes/Uni/Elektronik/sdr/libsdr/src/fftplan.hh
- /Users/hannes/Uni/Elektronik/sdr/libsdr/src/fftplan_native.hh