1
#ifndef WATERFALL_GLOBAL_DATA_HPP
2
#define WATERFALL_GLOBAL_DATA_HPP
4
#include <qwt_raster_data.h>
5
#include <qwt3d_function.h>
7
class Waterfall3DDisplayPlot;
9
class WaterfallData: public QwtRasterData
12
WaterfallData(const double, const double, const uint64_t, const unsigned int);
13
virtual ~WaterfallData();
16
virtual void Copy(const WaterfallData*);
18
virtual void ResizeData(const double, const double, const uint64_t);
20
virtual QwtRasterData *copy() const;
21
virtual QwtDoubleInterval range() const;
22
virtual void setRange(const QwtDoubleInterval&);
24
virtual double value(double x, double y) const;
26
virtual uint64_t GetNumFFTPoints()const;
27
virtual void addFFTData(const double*, const uint64_t, const int);
29
virtual double* GetSpectrumDataBuffer()const;
30
virtual void SetSpectrumDataBuffer(const double*);
32
virtual int GetNumLinesToUpdate()const;
33
virtual void SetNumLinesToUpdate(const int);
34
virtual void IncrementNumLinesToUpdate();
38
double* _spectrumData;
40
uint64_t _historyLength;
41
int _numLinesToUpdate;
42
QwtDoubleInterval _intensityRange;
48
class Waterfall3DData: public WaterfallData, public Qwt3D::Function
51
Waterfall3DData(const double, const double, const uint64_t, const unsigned int);
52
virtual ~Waterfall3DData();
54
virtual void ResizeData(const double, const double, const uint64_t);
56
virtual bool create();
57
virtual void setMesh(unsigned int columns, unsigned int rows); //!< Sets number of rows and columns.
59
virtual double operator()(double x, double y);
61
virtual double GetFloorValue()const;
62
virtual void SetFloorValue(const double);
64
virtual double minZ()const;
65
virtual double maxZ()const;
78
#endif /* WATERFALL_GLOBAL_DATA_HPP */