GNU Radio Manual and C++ API Reference  3.9.4.0
The Free & Open Software Radio Ecosystem
plot_waterfall.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2008-2012 Free Software Foundation, Inc.
4  *
5  * This file is part of GNU Radio
6  *
7  * SPDX-License-Identifier: GPL-3.0-or-later
8  *
9  */
10 
11 #ifndef PLOT_WATERFALL_H
12 #define PLOT_WATERFALL_H
13 
15 #include <qglobal.h>
16 #include <qwt_plot_rasteritem.h>
17 
18 #if QWT_VERSION >= 0x060000
19 #include <qsize.h>
20 #include <qwt_interval.h>
21 
22 typedef QwtInterval QwtDoubleInterval;
23 #endif
24 
25 class QwtColorMap;
26 
27 /*!
28  * \brief A plot item, which displays a waterfall spectrogram
29  * \ingroup qtgui_blk
30  *
31  * \details
32  * A waterfall displays three-dimensional data, where the 3rd dimension
33  * (the intensity) is displayed using colors. The colors are calculated
34  * from the values using a color map.
35  *
36  * \sa QwtRasterData, QwtColorMap
37  */
38 class PlotWaterfall : public QwtPlotRasterItem
39 {
40 public:
41  explicit PlotWaterfall(WaterfallData* data, const QString& title = QString());
42  ~PlotWaterfall() override;
43 
44  const WaterfallData* data() const;
45 
46  void setColorMap(const QwtColorMap&);
47 
48  const QwtColorMap& colorMap() const;
49 
50 #if QWT_VERSION < 0x060000
51  virtual QwtDoubleRect boundingRect() const;
52  virtual QSize rasterHint(const QwtDoubleRect&) const;
53 #endif
54 
55  int rtti() const override;
56 
57 protected:
58 #if QWT_VERSION < 0x060000
59  QImage renderImage(const QwtScaleMap& xMap,
60  const QwtScaleMap& yMap,
61  const QwtDoubleRect& rect) const;
62 #else
63  QImage renderImage(const QwtScaleMap& xMap,
64  const QwtScaleMap& yMap,
65  const QRectF& rect,
66  const QSize& size = QSize(0, 0)) const override;
67 #endif
68 
69 private:
70  class PrivateData;
71  PrivateData* d_data;
72 };
73 
74 #endif
A plot item, which displays a waterfall spectrogram.
Definition: plot_waterfall.h:39
virtual QwtDoubleRect boundingRect() const
const WaterfallData * data() const
int rtti() const override
void setColorMap(const QwtColorMap &)
const QwtColorMap & colorMap() const
~PlotWaterfall() override
virtual QSize rasterHint(const QwtDoubleRect &) const
QImage renderImage(const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtDoubleRect &rect) const
PlotWaterfall(WaterfallData *data, const QString &title=QString())
Definition: waterfallGlobalData.h:24