Mercurial > hg > svcore
diff data/model/FFTModel.h @ 1069:32ab6c48efaa
Merge from branch tonioni
author | Chris Cannam |
---|---|
date | Mon, 20 Apr 2015 09:11:34 +0100 |
parents | 0fd3661bcfff |
children | ec6e7f0f3f5b |
line wrap: on
line diff
--- a/data/model/FFTModel.h Mon Mar 02 17:21:34 2015 +0000 +++ b/data/model/FFTModel.h Mon Apr 20 09:11:34 2015 +0100 @@ -63,7 +63,7 @@ int fftSize, bool polar, StorageAdviser::Criteria criteria = StorageAdviser::NoCriteria, - int fillFromColumn = 0); + sv_frame_t fillFromFrame = 0); ~FFTModel(); inline float getMagnitudeAt(int x, int y) { @@ -98,7 +98,7 @@ return m_server->getValuesAt(x << m_xshift, reals, imaginaries, minbin << m_yshift, count, getYRatio()); } - inline int getFillExtent() const { return m_server->getFillExtent(); } + inline sv_frame_t getFillExtent() const { return m_server->getFillExtent(); } // DenseThreeDimensionalModel and Model methods: // @@ -120,13 +120,13 @@ virtual bool isOK() const { return m_server && m_server->getModel(); } - virtual int getStartFrame() const { + virtual sv_frame_t getStartFrame() const { return 0; } - virtual int getEndFrame() const { - return getWidth() * getResolution() + getResolution(); + virtual sv_frame_t getEndFrame() const { + return sv_frame_t(getWidth()) * getResolution() + getResolution(); } - virtual int getSampleRate() const; + virtual sv_samplerate_t getSampleRate() const; virtual int getResolution() const { return m_server->getWindowIncrement() << m_xshift; } @@ -151,7 +151,7 @@ * bin, using phase unwrapping. This will be completely wrong if * the signal is not stable here. */ - virtual bool estimateStableFrequency(int x, int y, float &frequency); + virtual bool estimateStableFrequency(int x, int y, double &frequency); enum PeakPickType { @@ -161,7 +161,7 @@ }; typedef std::set<int> PeakLocationSet; // bin - typedef std::map<int, float> PeakSet; // bin -> freq + typedef std::map<int, double> PeakSet; // bin -> freq /** * Return locations of peak bins in the range [ymin,ymax]. If @@ -179,8 +179,6 @@ virtual int getCompletion() const { return m_server->getFillCompletion(); } virtual QString getError() const { return m_server->getError(); } - virtual Model *clone() const; - virtual void suspend() { m_server->suspend(); } virtual void suspendWrites() { m_server->suspendWrites(); } virtual void resume() { m_server->resume(); } @@ -200,10 +198,10 @@ FFTDataServer *getServer(const DenseTimeValueModel *, int, WindowType, int, int, int, - bool, StorageAdviser::Criteria, int); + bool, StorageAdviser::Criteria, sv_frame_t); - int getPeakPickWindowSize(PeakPickType type, int sampleRate, - int bin, float &percentile) const; + int getPeakPickWindowSize(PeakPickType type, sv_samplerate_t sampleRate, + int bin, float &percentile) const; int getYRatio() { int ys = m_yshift;