GNU Radio Manual and C++ API Reference  v3.9.2.0-89-gb7c7001e
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 <qwt_compat.h>
20 #include <qwt_point_3d.h> // doesn't seem necessary, but is...
21 #endif
22 
23 class QwtColorMap;
24 
25 /*!
26  * \brief A plot item, which displays a waterfall spectrogram
27  * \ingroup qtgui_blk
28  *
29  * \details
30  * A waterfall displays three-dimensional data, where the 3rd dimension
31  * (the intensity) is displayed using colors. The colors are calculated
32  * from the values using a color map.
33  *
34  * \sa QwtRasterData, QwtColorMap
35  */
36 class PlotWaterfall : public QwtPlotRasterItem
37 {
38 public:
39  explicit PlotWaterfall(WaterfallData* data, const QString& title = QString());
40  ~PlotWaterfall() override;
41 
42  const WaterfallData* data() const;
43 
44  void setColorMap(const QwtColorMap&);
45 
46  const QwtColorMap& colorMap() const;
47 
48 #if QWT_VERSION < 0x060000
49  virtual QwtDoubleRect boundingRect() const;
50  virtual QSize rasterHint(const QwtDoubleRect&) const;
51 #endif
52 
53  int rtti() const override;
54 
55 protected:
56 #if QWT_VERSION < 0x060000
57  QImage renderImage(const QwtScaleMap& xMap,
58  const QwtScaleMap& yMap,
59  const QwtDoubleRect& rect) const;
60 #else
61  QImage renderImage(const QwtScaleMap& xMap,
62  const QwtScaleMap& yMap,
63  const QRectF& rect,
64  const QSize& size = QSize(0, 0)) const override;
65 #endif
66 
67 private:
68  class PrivateData;
69  PrivateData* d_data;
70 };
71 
72 #endif
A plot item, which displays a waterfall spectrogram.
Definition: plot_waterfall.h:37
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:23