![]() |
Diana Software
|
Interface to FFTW's FFT plans. More...
Public Member Functions | |
| QFFTWRealComplexPlan (QVector &realData, QVectorC &complexData, QFFT::FFTDirection direction) | |
| Construct a plan from a QVector and QVectorC. More... | |
| QFFTWRealComplexPlan (QVector &realComplexData, QFFT::FFTDirection direction) | |
| Construct a plan from a QVector and QVectorC and resize them. More... | |
| virtual | ~QFFTWRealComplexPlan () |
| Construct a plan for an in place FFT, but resize it. More... | |
| size_t | GetSize () const |
| Return the size of the plan. More... | |
| virtual void | Execute () |
| Execute the plan. More... | |
| QVector & | GetRealData () |
| Get the real data vector. More... | |
| const QVector & | GetRealData () const |
| Get the real data vector. More... | |
| QVectorC & | GetComplexData () |
| Get the complex data vector. More... | |
| const QVectorC & | GetComplexData () const |
| Get the complex data vector. More... | |
Static Public Member Functions | |
| static QFFTWRealComplexPlan | CreateForwardPlan (QVector &realData, QVectorC &complexData) |
| Static method to create a forward plan. More... | |
| static QFFTWRealComplexPlan | CreateBackwardPlan (QVectorC &complexData, QVector &realData) |
| Static method to create a backward plan. More... | |
Protected Member Functions | |
| void | Build (QFFT::FFTDirection direction) |
| Static method to create a forward plan. More... | |
Protected Attributes | |
| int | fSize |
| The size of the plan. More... | |
| QVector | fRealData |
| The real data, but does not own the memory vector. More... | |
| QVectorC | fComplexData |
| The complex data, but does not own the memory vector. More... | |
Interface to FFTW's FFT plans.
Creates a plan to perform either a forward or backward FFT on QVector and QVectorC data. Performs no memory copying or movement not required for the FFT. This should be the minimal required time for an FFT.
Important to note that this class does not own the QVector and QVectorC that the data are being moved between. If the QVector and QVectorC are deleted, then you will get a SEGFAULT! Use with caution!
Definition at line 33 of file QFFTWPlan.hh.
| QFFTWRealComplexPlan::QFFTWRealComplexPlan | ( | QVector & | realData, |
| QVectorC & | complexData, | ||
| QFFT::FFTDirection | direction | ||
| ) |
| QFFTWRealComplexPlan::QFFTWRealComplexPlan | ( | QVector & | realComplexData, |
| QFFT::FFTDirection | direction | ||
| ) |
|
virtual |
Construct a plan for an in place FFT, but resize it.
Destroy the plan
Definition at line 40 of file QFFTWPlan.cc.
|
protected |
Static method to create a forward plan.
Static method to create a backward plan
Build the plan
Definition at line 68 of file QFFTWPlan.cc.
References QFFT::kBackward, QFFT::kForward, QERR_SIZE_NOT_MATCH, and QERR_UNKNOWN_ERR.
|
static |
Static method to create a backward plan.
Definition at line 56 of file QFFTWPlan.cc.
References QFFT::kBackward.
|
static |
Static method to create a forward plan.
Definition at line 52 of file QFFTWPlan.cc.
References QFFT::kForward.
|
virtual |
Execute the plan.
Definition at line 46 of file QFFTWPlan.cc.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
The complex data, but does not own the memory vector.
Definition at line 75 of file QFFTWPlan.hh.
Referenced by GetComplexData().
|
protected |
The real data, but does not own the memory vector.
Definition at line 73 of file QFFTWPlan.hh.
Referenced by GetRealData().
|
protected |