66 int fillFromColumn = 0);
81 inline void getValuesAt(
int x,
int y,
float &real,
float &imaginary) {
88 inline bool getMagnitudesAt(
int x,
float *values,
int minbin = 0,
int count = 0) {
94 inline bool getPhasesAt(
int x,
float *values,
int minbin = 0,
int count = 0) {
97 inline bool getValuesAt(
int x,
float *reals,
float *imaginaries,
int minbin = 0,
int count = 0) {
118 return const_cast<FFTModel *>(
this)->getMagnitudeAt(x, y);
171 int ymin = 0,
int ymax = 0);
177 int ymin = 0,
int ymax = 0);
206 int bin,
float &percentile)
const;
211 while (ys) { --ys; r <<= 1; }
virtual int getWidth() const
Return the number of columns of bins in the model.
virtual int getSampleRate() const
Return the frame rate in frames per second.
virtual bool estimateStableFrequency(int x, int y, float &frequency)
Calculate an estimated frequency for a stable signal in this bin, using phase unwrapping.
int getFillExtent() const
bool getNormalizedMagnitudesAt(int x, float *values, int minbin=0, int count=0, int step=1)
FFTDataServer * getServer(const DenseTimeValueModel *, int, WindowType, int, int, int, bool, StorageAdviser::Criteria, int)
virtual int getStartFrame() const
Return the first audio frame spanned by the model.
An implementation of DenseThreeDimensionalModel that makes FFT data derived from a DenseTimeValueMode...
float getMaximumMagnitudeAt(int x)
const DenseTimeValueModel * getModel() const
virtual void suspendWrites()
virtual float getMinimumLevel() const
Return the minimum permissible value in each bin.
float getMagnitudeAt(int x, int y)
bool getNormalizedMagnitudesAt(int x, float *values, int minbin=0, int count=0)
FFTModel & operator=(const FFTModel &)
Any bin exceeding its immediate neighbours.
float getMaximumMagnitudeAt(int x)
virtual int getYBinCount() const
virtual int getCompletion() const
int getWindowIncrement() const
float getNormalizedMagnitudeAt(int x, int y)
bool getMagnitudesAt(int x, float *values, int minbin=0, int count=0, int step=1)
virtual Model * clone() const
Return a copy of this model.
bool getPhasesAt(int x, float *values, int minbin=0, int count=0)
bool getMagnitudesAt(int x, float *values, int minbin=0, int count=0)
void getValuesAt(int x, int y, float &real, float &imaginary)
float getMagnitudeAt(int x, int y)
float getPhaseAt(int x, int y)
virtual float getValueAt(int x, int y) const
Get the single data point from the n'th bin of the given column.
int getFillExtent() const
float getPhaseAt(int x, int y)
FFTModel(const DenseTimeValueModel *model, int channel, WindowType windowType, int windowSize, int windowIncrement, int fftSize, bool polar, StorageAdviser::Criteria criteria=StorageAdviser::NoCriteria, int fillFromColumn=0)
Construct an FFT model derived from the given DenseTimeValueModel, with the given window parameters a...
bool getValuesAt(int x, float *reals, float *imaginaries, int minbin=0, int count=0)
Model is the base class for all data models that represent any sort of data on a time scale based on ...
bool isColumnAvailable(int x) const
Return true if there are data available for the given column.
int getPeakPickWindowSize(PeakPickType type, int sampleRate, int bin, float &percentile) const
virtual Column getColumn(int x) const
Get data from the given column of bin values.
bool isColumnReady(int x)
int getFillCompletion() const
virtual int getResolution() const
Return the number of sample frames covered by each column of bins.
QString getTypeName() const
Return the type of the model.
void getValuesAt(int x, int y, float &real, float &imaginary)
Base class for models containing dense two-dimensional data (value against time).
virtual bool isOK() const
Return true if the model was constructed successfully.
void sourceModelAboutToBeDeleted()
virtual QString getBinName(int n) const
Get the name of a given bin (i.e.
Peaks picked using sliding median window.
float getNormalizedMagnitudeAt(int x, int y)
virtual int getHeight() const
Return the number of bins in each column.
virtual PeakSet getPeakFrequencies(PeakPickType type, int x, int ymin=0, int ymax=0)
Return locations and estimated stable frequencies of peak bins.
std::map< int, float > PeakSet
virtual float getMaximumLevel() const
Return the maximum permissible value in each bin.
virtual int getEndFrame() const
Return the last audio frame spanned by the model.
virtual bool shouldUseLogValueScale() const
Estimate whether a logarithmic scale might be appropriate for the value scale.
bool getPhasesAt(int x, float *values, int minbin=0, int count=0, int step=1)
virtual PeakLocationSet getPeaks(PeakPickType type, int x, int ymin=0, int ymax=0)
Return locations of peak bins in the range [ymin,ymax].
std::set< int > PeakLocationSet
virtual QString getError() const