comparison layer/Colour3DPlotRenderer.h @ 1469:11a150e65ee1 by-id

Some work on updating layers for ModelId bits
author Chris Cannam
date Thu, 27 Jun 2019 13:16:25 +0100
parents 7d28e7522dbd
children 886c1cd48f9d
comparison
equal deleted inserted replaced
1468:de41a11cabc2 1469:11a150e65ee1
21 #include "ScrollableMagRangeCache.h" 21 #include "ScrollableMagRangeCache.h"
22 22
23 #include "base/ColumnOp.h" 23 #include "base/ColumnOp.h"
24 #include "base/MagnitudeRange.h" 24 #include "base/MagnitudeRange.h"
25 25
26 #include "data/model/Model.h"
27
26 #include <QRect> 28 #include <QRect>
27 #include <QPainter> 29 #include <QPainter>
28 #include <QImage> 30 #include <QImage>
29 31
30 class LayerGeometryProvider; 32 class LayerGeometryProvider;
31 class VerticalBinLayer; 33 class VerticalBinLayer;
32 class DenseThreeDimensionalModel; 34 class RenderTimer;
33 class Dense3DModelPeakCache; 35 class Dense3DModelPeakCache;
34 class FFTModel;
35 class RenderTimer;
36 36
37 enum class BinDisplay { 37 enum class BinDisplay {
38 AllBins, 38 AllBins,
39 PeakBins, 39 PeakBins,
40 PeakFrequencies 40 PeakFrequencies
47 47
48 class Colour3DPlotRenderer 48 class Colour3DPlotRenderer
49 { 49 {
50 public: 50 public:
51 struct Sources { 51 struct Sources {
52 Sources() : verticalBinLayer(0), source(0), fft(0) { } 52 Sources() : verticalBinLayer(0) { }
53 53
54 // These must all outlive this class 54 // These must all outlive this class
55 const VerticalBinLayer *verticalBinLayer; // always 55 const VerticalBinLayer *verticalBinLayer; // always
56 const DenseThreeDimensionalModel *source; // always 56 ModelId source; // always; a DenseThreeDimensionalModel
57 const FFTModel *fft; // optionally 57 ModelId fft; // optionally
58 std::vector<Dense3DModelPeakCache *> peakCaches; // zero or more 58 std::vector<Dense3DModelPeakCache *> peakCaches; // zero or more
59 }; 59 };
60 60
61 struct Parameters { 61 struct Parameters {
62 Parameters() : 62 Parameters() :