21 #include "gcp/util/common/CircBuf.h"
22 #include "gcp/util/common/Frequency.h"
23 #include "gcp/util/common/TimeVal.h"
27 #define APOD_FN(fn) double (fn)(unsigned iSamp, unsigned n)
47 Dft(
int n,
bool optimize=
true, Apodization apod=APOD_RECTANGLE);
52 Dft(
const Dft& objToBeCopied);
148 std::vector<double>
abs();
154 void abs(
float* outputArray,
155 bool& first,
double& min,
double& max,
bool doLog=
false);
161 bool& first,
double& min,
double& max);
208 static APOD_FN(apodRectangle);
209 static APOD_FN(apodTriangle);
210 static APOD_FN(apodHamming);
211 static APOD_FN(apodHann);
212 static APOD_FN(apodCos);
213 static APOD_FN(apodSinc);
220 void computePlan(
unsigned flag);
233 void assertApodizationType(Apodization apod);
237 double apodizationCoefficient(
unsigned iSamp);
248 Apodization currentApodType_;
249 Apodization pendingApodType_;
250 bool apodTypePending_;
281 fftw_complex* outAv_;
282 std::valarray<double> absBuf_;
287 std::valarray<double> sampBuf_;
289 std::valarray<double> apodBuf_;
297 unsigned nSinceLastTransform_;
298 bool transformIsReady_;
307 #endif // End #ifndef GCP_UTIL_DFT_H
std::vector< double > abs()
Definition: Dft.cc:312
void pushSample(double sample)
Definition: Dft.cc:156
void setTimeRes(TimeVal tVal)
Definition: Dft.cc:481
fftw_complex * getTransform()
Definition: Dft.cc:280
Frequency getFrequencyResolution()
Definition: Dft.cc:490
void setAverage(bool doAv)
Definition: Dft.cc:447
void computeTransform()
Definition: Dft.cc:227
void setVectorAverage(bool vecAv)
Definition: Dft.cc:464
void updateMinMax(unsigned i, double &val, bool doLog, bool &first, double &min, double &max)
Definition: Dft.cc:348
bool transformIsReady()
Definition: Dft.cc:439
std::vector< double > powerSpectrum(double *data)
Definition: Dft.cc:429
void setApodizationType(Apodization apod)
Definition: Dft.cc:519
Dft(int n, bool optimize=true, Apodization apod=APOD_RECTANGLE)
Definition: Dft.cc:16
void resize(unsigned int)
Definition: Dft.cc:103
void fillInputArray(double *data)
Definition: Dft.cc:199
double * getInputData()
Definition: Dft.cc:272
friend std::ostream & operator<<(std::ostream &os, Dft &obj)
unsigned inputSize()
Definition: Dft.cc:288
virtual ~Dft()
Definition: Dft.cc:79
void operator=(const Dft &objToBeAssigned)
Definition: Dft.cc:54
unsigned transformSize()
Definition: Dft.cc:296
Definition: Frequency.h:21