InverseRealFFT¶
-
class
InverseRealFFT: public tsa::BaseFFT¶ Multichannel inverse real to complex FFT.
This is the implementation of the FFT of a real multichannel buffer
Operations
-
void
operator()(SeqViewComplex &in, SeqViewDouble &out)¶ Apply the transformation on the data
- Return
a reference to this instance of the class
- Parameters
in: a reference to the buffer containing the input dataout: a reference to the buffer containing the input data
-
void
execute(Cmatrix &in, Dmatrix &out)¶ Execution of the inverse real fft of a multichannel buffer of complex. Input data are organized in a matrix. Each row is a different channel, and the number of data to transform is equal to the number of columns. Both the number of rows and the number of columns can change between each call to this method. If the number of rows changes nothing special will happen, if the number of cols changes the plan is reevaluated with the current flags.
- Pre
The number of rows of input and output matrix must be the same.
- Pre
The number of columns of the input matrix must be int(n/2)+1, where n is the number of columns of the output matrix.
- Post
the input buffer is changed, unless SetPreserveInput was called with true argument
- Post
the output buffer contain the inverse fft of the input data
- Exceptions
bad_matrix_size: the size of the output matrix is wrong
- Parameters
in: reference to the input multichannel bufferout: reference to the output multichannel buffer
-
void
execute(Cvector &in, Dvector &out)¶ Execution of the inverse real fft of a buffer of complex. If the number of data changes the plan is reevaluated with the current flags.
- Pre
The number of columns of the input matrix must be int(n/2)+1, where n is the number of columns of the output matrix.
- Post
the input buffer is changed, unless SetPreserveInput was called with true argument
- Post
the output buffer contain the inverse fft of the input data
- Exceptions
bad_vector_size: the size of the output vector
- Parameters
in: reference to the input vectorout: reference to the output vector
-
void
MakePlan()¶ Make a new plan, with the current parameters.
- Exceptions
std::runtime_error: The new plan cannot be created
Public Functions
-
InverseRealFFT(int size = 0, enum FFTPlanningMode mode = ESTIMATE, bool PreserveInput = false)¶ Constructor
- Parameters
size: the size of the transformmode: specify the way in which plans are calculatedPreserveInput: true if the input buffer must be preserved during the transform, false otherwise
-
InverseRealFFT(const InverseRealFFT &from)¶ Copy constructor
- Parameters
from: The instance that must be copied
-
~InverseRealFFT()¶ Destructor
-
void