Mercurial > hg > svgui
comparison layer/SpectrumLayer.h @ 1403:10e768adaee5
Retain consistent min freq (rather than min bin no) when changing fft parameters in spectrum; scale ffts by window size rather than fft size in case of oversampling, to avoid fading out because of scale factor including zero padding
| author | Chris Cannam | 
|---|---|
| date | Thu, 15 Nov 2018 15:08:08 +0000 | 
| parents | 900bed394f5a | 
| children | a18e78b9c78b | 
   comparison
  equal
  deleted
  inserted
  replaced
| 1402:b0eeec95ab5b | 1403:10e768adaee5 | 
|---|---|
| 66 int value) const override; | 66 int value) const override; | 
| 67 virtual RangeMapper *getNewPropertyRangeMapper(const PropertyName &) const override; | 67 virtual RangeMapper *getNewPropertyRangeMapper(const PropertyName &) const override; | 
| 68 virtual void setProperty(const PropertyName &, int value) override; | 68 virtual void setProperty(const PropertyName &, int value) override; | 
| 69 virtual void setProperties(const QXmlAttributes &) override; | 69 virtual void setProperties(const QXmlAttributes &) override; | 
| 70 | 70 | 
| 71 virtual bool setDisplayExtents(double min, double max) override; | |
| 72 | |
| 71 virtual bool getXScaleValue(const LayerGeometryProvider *v, int x, | 73 virtual bool getXScaleValue(const LayerGeometryProvider *v, int x, | 
| 72 double &value, QString &unit) const override; | 74 double &value, QString &unit) const override; | 
| 73 | 75 | 
| 74 virtual bool getYScaleValue(const LayerGeometryProvider *, int y, | 76 virtual bool getYScaleValue(const LayerGeometryProvider *, int y, | 
| 75 double &value, QString &unit) const override; | 77 double &value, QString &unit) const override; | 
| 121 int m_windowHopLevel; | 123 int m_windowHopLevel; | 
| 122 int m_oversampling; | 124 int m_oversampling; | 
| 123 bool m_showPeaks; | 125 bool m_showPeaks; | 
| 124 mutable bool m_newFFTNeeded; | 126 mutable bool m_newFFTNeeded; | 
| 125 | 127 | 
| 128 double m_freqOfMinBin; // used to ensure accurate | |
| 129 // alignment when changing | |
| 130 // fft size | |
| 131 | |
| 126 mutable QMutex m_fftMutex; | 132 mutable QMutex m_fftMutex; | 
| 127 | 133 | 
| 128 void setupFFT(); | 134 void setupFFT(); | 
| 129 | 135 | 
| 130 virtual double getBinForFrequency(double freq) const; | 136 virtual double getBinForFrequency(double freq) const; | 
