Mercurial > hg > svgui
changeset 1110:67dd16e33a3d spectrogram-minor-refactor
Make VerticalBinLayer an actual Layer (via SliceableLayer)
author | Chris Cannam |
---|---|
date | Tue, 19 Jul 2016 08:55:13 +0100 |
parents | 477521f95a84 |
children | 953ce409ccfb |
files | layer/Colour3DPlotLayer.h layer/Colour3DPlotRenderer.cpp layer/SpectrogramLayer.h layer/VerticalBinLayer.h |
diffstat | 4 files changed, 7 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/layer/Colour3DPlotLayer.h Mon Jul 18 15:37:15 2016 +0100 +++ b/layer/Colour3DPlotLayer.h Tue Jul 19 08:55:13 2016 +0100 @@ -38,8 +38,7 @@ * implementation that derived the spectrogram itself from a * DenseTimeValueModel instead of using a three-dimensional model. */ -class Colour3DPlotLayer : public SliceableLayer, - public VerticalBinLayer +class Colour3DPlotLayer : public VerticalBinLayer { Q_OBJECT
--- a/layer/Colour3DPlotRenderer.cpp Mon Jul 18 15:37:15 2016 +0100 +++ b/layer/Colour3DPlotRenderer.cpp Tue Jul 19 08:55:13 2016 +0100 @@ -215,6 +215,8 @@ //!!! todo, here or in caller: illuminateLocalFeatures + //!!! todo: colourmap rotation + //!!! fft model scaling? //!!! should we own the Dense3DModelPeakCache here? or should it persist
--- a/layer/SpectrogramLayer.h Mon Jul 18 15:37:15 2016 +0100 +++ b/layer/SpectrogramLayer.h Tue Jul 19 08:55:13 2016 +0100 @@ -48,8 +48,7 @@ * DenseTimeValueModel) in spectrogram form. */ -class SpectrogramLayer : public SliceableLayer, - public VerticalBinLayer, +class SpectrogramLayer : public VerticalBinLayer, public PowerOfSqrtTwoZoomConstraint { Q_OBJECT
--- a/layer/VerticalBinLayer.h Mon Jul 18 15:37:15 2016 +0100 +++ b/layer/VerticalBinLayer.h Tue Jul 19 08:55:13 2016 +0100 @@ -16,13 +16,15 @@ #ifndef VERTICAL_BIN_LAYER_H #define VERTICAL_BIN_LAYER_H +#include "SliceableLayer.h" + /** * Interface for layers in which the Y axis corresponds to bin number * rather than scale value. Colour3DPlotLayer is the obvious example. *!!! should just be a mapper interface, not a layer one? *!!! or even an application of RangeMapper */ -class VerticalBinLayer +class VerticalBinLayer : public SliceableLayer { public: /**