Public Member Functions | |
QRealComplexFFT (const int size) | |
constructor | |
QRealComplexFFT () | |
empty constructor | |
virtual | ~QRealComplexFFT () |
destructor | |
virtual int | TransformToFreq (const QVector &data, QVectorC &FFT) |
transform from the times to the frequencies | |
virtual int | TransformFromFreq (const QVectorC &FT, QVector &spectrum) |
transform from the frequencies to the times | |
virtual void | SetWindowType (WindowType wt, bool coherent=false) |
resize working table and space | |
Protected Member Functions | |
virtual int | Transform (const QVector &data, QVector &result) |
virtual method. Must be implemented by daughter classes. | |
Private Member Functions | |
virtual void | Resize (int s) |
virtual method. Must be implemented by daughter classes | |
Private Attributes | |
gsl_fft_real_wavetable * | fWaveTable |
set the window type. | |
gsl_fft_halfcomplex_wavetable * | fHCWaveTable |
gsl_fft_real_workspace * | fWork |
QRealComplexFFT::QRealComplexFFT | ( | const int | size | ) |
constructor
size | is the length of the real vector to be transformed |
References fWaveTable.
int QRealComplexFFT::TransformToFreq | ( | const QVector & | data, | |
QVectorC & | FFT | |||
) | [virtual] |
transform from the times to the frequencies
result | stores the fft size of the FFT is size of |
References QVector::QVector(), Resize(), QFFT::SetForward(), QFFT::SetNormalized(), and Transform().
Referenced by BesselTransformer::BesselTransformer(), WienerFilter::Compute(), OptimumFilter::Compute(), WienerFilter::Compute_2(), WienerFilter::Compute_d(), OptimumFilter::Compute_d(), BesselTransformer::ConvolveFD(), MNoiseAvgPowerSpectrum::Do(), MComputeFFT::Do(), MCheckOffsetAndSat::Done(), WienerFilter::Filter(), OptimumFilter::Filter(), WienerFilter::Filter_d(), OptimumFilter::Filter_d(), WienerFilter::PowerSpectrum(), OptimumFilter::PowerSpectrum(), and QOBAmplitude::QOBAmplitude().
int QRealComplexFFT::TransformFromFreq | ( | const QVectorC & | FT, | |
QVector & | spectrum | |||
) | [virtual] |
transform from the frequencies to the times
result | stores the spectra size of the FFT is size of |
References Resize(), QFFT::SetForward(), QFFT::SetNormalized(), QVectorC::SingleVector(), QVectorC::Size(), and Transform().
Referenced by BesselTransformer::BesselTransformer(), BesselTransformer::ConvolveFD(), WienerFilter::Filter(), OptimumFilter::Filter(), WienerFilter::Filter_d(), and OptimumFilter::Filter_d().
void QRealComplexFFT::SetWindowType | ( | WindowType | wt, | |
bool | coherent = false | |||
) | [virtual] |
resize working table and space
s | is the size of the real array to be transformed |
Implements QFFT.
References QFFT::GetWindow(), and QVector::QVector().
Referenced by MNoiseAvgPowerSpectrum::Do(), Resize(), and Transform().
int QRealComplexFFT::Transform | ( | const QVector & | data, | |
QVector & | result | |||
) | [protected, virtual] |
virtual method. Must be implemented by daughter classes.
data | references the vector of data to be transformed | |
result | references the vector holding the result |
Implements QFFT.
References fWaveTable, and SetWindowType().
Referenced by TransformFromFreq(), and TransformToFreq().
void QRealComplexFFT::Resize | ( | int | s | ) | [private, virtual] |
virtual method. Must be implemented by daughter classes
s | is the size of the vector to be transformed |
Implements QFFT.
References fWaveTable, and SetWindowType().
Referenced by TransformFromFreq(), and TransformToFreq().
gsl_fft_real_wavetable* QRealComplexFFT::fWaveTable [private] |
set the window type.
t | is the type of window applied up tp now: 0 no window 1 Hamming window |
Referenced by QRealComplexFFT(), Resize(), Transform(), and ~QRealComplexFFT().