comparison layer/SpectrogramLayer.h @ 1566:1f80a514ce29

Merge from branch spectrogram-export
author Chris Cannam
date Fri, 10 Jan 2020 14:54:27 +0000
parents 3b45788b7804
children
comparison
equal deleted inserted replaced
1553:76e4302a3fc2 1566:1f80a514ce29
63 SpectrogramLayer(Configuration = FullRangeDb); 63 SpectrogramLayer(Configuration = FullRangeDb);
64 ~SpectrogramLayer(); 64 ~SpectrogramLayer();
65 65
66 const ZoomConstraint *getZoomConstraint() const override { return this; } 66 const ZoomConstraint *getZoomConstraint() const override { return this; }
67 ModelId getModel() const override { return m_model; } 67 ModelId getModel() const override { return m_model; }
68
69 ModelId getExportModel(LayerGeometryProvider *) const override;
70
68 void paint(LayerGeometryProvider *v, QPainter &paint, QRect rect) const override; 71 void paint(LayerGeometryProvider *v, QPainter &paint, QRect rect) const override;
69 void setSynchronousPainting(bool synchronous) override; 72 void setSynchronousPainting(bool synchronous) override;
70 73
71 int getVerticalScaleWidth(LayerGeometryProvider *v, bool detailed, QPainter &) const override; 74 int getVerticalScaleWidth(LayerGeometryProvider *v, bool detailed, QPainter &) const override;
72 void paintVerticalScale(LayerGeometryProvider *v, bool detailed, QPainter &paint, QRect rect) const override; 75 void paintVerticalScale(LayerGeometryProvider *v, bool detailed, QPainter &paint, QRect rect) const override;
73 76
74 bool getCrosshairExtents(LayerGeometryProvider *, QPainter &, QPoint cursorPos, 77 bool getCrosshairExtents(LayerGeometryProvider *, QPainter &, QPoint cursorPos,
75 std::vector<QRect> &extents) const override; 78 std::vector<QRect> &extents) const override;
76 void paintCrosshairs(LayerGeometryProvider *, QPainter &, QPoint) const override; 79 void paintCrosshairs(LayerGeometryProvider *, QPainter &, QPoint) const override;
77 80
78 QString getFeatureDescription(LayerGeometryProvider *v, QPoint &) const override; 81 QString getFeatureDescription(LayerGeometryProvider *v, QPoint &) const override;
79 82
80 bool snapToFeatureFrame(LayerGeometryProvider *v, sv_frame_t &frame, 83 bool snapToFeatureFrame(LayerGeometryProvider *v, sv_frame_t &frame,
329 // models and caches with ModelById 332 // models and caches with ModelById
330 ModelId m_fftModel; // an FFTModel 333 ModelId m_fftModel; // an FFTModel
331 ModelId m_wholeCache; // a Dense3DModelPeakCache 334 ModelId m_wholeCache; // a Dense3DModelPeakCache
332 ModelId m_peakCache; // a Dense3DModelPeakCache 335 ModelId m_peakCache; // a Dense3DModelPeakCache
333 int m_peakCacheDivisor; 336 int m_peakCacheDivisor;
337
338 mutable std::vector<ModelId> m_exporters; // used, waiting to be released
339
334 void checkCacheSpace(int *suggestedPeakDivisor, 340 void checkCacheSpace(int *suggestedPeakDivisor,
335 bool *createWholeCache) const; 341 bool *createWholeCache) const;
336 void recreateFFTModel(); 342 void recreateFFTModel();
337 343
338 typedef std::map<int, MagnitudeRange> ViewMagMap; // key is view id 344 typedef std::map<int, MagnitudeRange> ViewMagMap; // key is view id