GNU Radio Manual and C++ API Reference 3.7.14.0
The Free & Open Software Radio Ecosystem
waterfallGlobalData.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2012 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * GNU Radio is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 3, or (at your option)
10 * any later version.
11 *
12 * GNU Radio is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with GNU Radio; see the file COPYING. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street,
20 * Boston, MA 02110-1301, USA.
21 */
22
23#ifndef WATERFALL_GLOBAL_DATA_HPP
24#define WATERFALL_GLOBAL_DATA_HPP
25
26#include <inttypes.h>
27#include <qwt_raster_data.h>
28
29#if QWT_VERSION >= 0x060000
30// clang-format off
31#include <qwt_point_3d.h> // doesn't seem necessary, but is...
32#include <qwt_compat.h>
33// clang-format on
34#endif
35
36class WaterfallData : public QwtRasterData
37{
38public:
39 WaterfallData(const double, const double, const uint64_t, const unsigned int);
40 virtual ~WaterfallData();
41
42 virtual void reset();
43 virtual void copy(const WaterfallData*);
44
45 virtual void
46 resizeData(const double, const double, const uint64_t, const int history = 0);
47
48 virtual QwtRasterData* copy() const;
49
50#if QWT_VERSION < 0x060000
51 virtual QwtDoubleInterval range() const;
52 virtual void setRange(const QwtDoubleInterval&);
53#endif
54
55 virtual double value(double x, double y) const;
56
57 virtual uint64_t getNumFFTPoints() const;
58 virtual void addFFTData(const double*, const uint64_t, const int);
59
60 virtual double* getSpectrumDataBuffer() const;
61 virtual void setSpectrumDataBuffer(const double*);
62
63 virtual int getNumLinesToUpdate() const;
64 virtual void setNumLinesToUpdate(const int);
66
67protected:
69 uint64_t _fftPoints;
72
73#if QWT_VERSION < 0x060000
74 QwtDoubleInterval _intensityRange;
75#else
76 QwtInterval _intensityRange;
77#endif
78
79private:
80};
81
82#endif /* WATERFALL_GLOBAL_DATA_HPP */
Definition: waterfallGlobalData.h:37
QwtDoubleInterval _intensityRange
Definition: waterfallGlobalData.h:74
WaterfallData(const double, const double, const uint64_t, const unsigned int)
int _numLinesToUpdate
Definition: waterfallGlobalData.h:71
virtual int getNumLinesToUpdate() const
virtual void reset()
virtual double * getSpectrumDataBuffer() const
double * _spectrumData
Definition: waterfallGlobalData.h:68
virtual void copy(const WaterfallData *)
uint64_t _historyLength
Definition: waterfallGlobalData.h:70
virtual void resizeData(const double, const double, const uint64_t, const int history=0)
virtual double value(double x, double y) const
virtual QwtDoubleInterval range() const
virtual void setRange(const QwtDoubleInterval &)
uint64_t _fftPoints
Definition: waterfallGlobalData.h:69
virtual void incrementNumLinesToUpdate()
virtual void addFFTData(const double *, const uint64_t, const int)
virtual QwtRasterData * copy() const
virtual void setNumLinesToUpdate(const int)
virtual uint64_t getNumFFTPoints() const
virtual void setSpectrumDataBuffer(const double *)
virtual ~WaterfallData()