GNU Radio Manual and C++ API Reference 3.7.14.0
The Free & Open Software Radio Ecosystem
freqcontrolpanel.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2015 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 FREQ_CONTROL_PANEL_H
24#define FREQ_CONTROL_PANEL_H
25
28#include <QtGui/QtGui>
29#include <QCheckBox>
30#include <QComboBox>
31#include <QHBoxLayout>
32#include <QLabel>
33#include <QPushButton>
34#include <QSlider>
35#include <vector>
36
37class FreqControlPanel : public QVBoxLayout
38{
39 Q_OBJECT
40
41public:
44
45public slots:
46 void notifyAvgSlider(int val);
47 void setFFTAverage(float val);
48 void toggleGrid(bool en);
49 void toggleAxisLabels(bool en);
50 void toggleMaxHold(bool en);
51 void toggleMinHold(bool en);
52
53 void toggleFFTSize(int val);
55
57
59
60signals:
61 void signalAvgSlider(float val);
62 void signalAvg(bool en);
64
65private:
66 FreqDisplayForm* d_parent;
67
68 QGroupBox* d_trace_box;
69 QVBoxLayout* d_trace_layout;
70 QCheckBox* d_maxhold_check;
71 QCheckBox* d_minhold_check;
72
73 QHBoxLayout* d_avg_layout;
74 QLabel* d_avg_label;
75 QSlider* d_avg_slider;
76
77 QGroupBox* d_axes_box;
78 QVBoxLayout* d_axes_layout;
79
80 QCheckBox* d_grid_check;
81 QCheckBox* d_axislabels_check;
82 QHBoxLayout* d_yrange_layout;
83 QLabel* d_yrange_label;
84 QPushButton* d_yrange_plus;
85 QPushButton* d_yrange_minus;
86
87 QHBoxLayout* d_ymin_layout;
88 QLabel* d_ymin_label;
89 QPushButton* d_ymin_plus;
90 QPushButton* d_ymin_minus;
91
92 QPushButton* d_autoscale_button;
93
94 QGroupBox* d_fft_box;
95 QVBoxLayout* d_fft_layout;
96 QComboBox* d_fft_size_combo;
97 QComboBox* d_fft_win_combo;
98
99 int d_slider_max, d_slider_min, d_slider_step;
100
101 QGroupBox* d_trigger_box;
102 QVBoxLayout* d_trigger_layout;
103 QHBoxLayout* d_trigger_level_layout;
104 QLabel* d_trigger_level_label;
105 QComboBox* d_trigger_mode_combo;
106 QPushButton *d_trigger_level_plus, *d_trigger_level_minus;
107
108 QGroupBox* d_extras_box;
109 QVBoxLayout* d_extras_layout;
110 QPushButton* d_stop_button;
111};
112
113#endif /* FREQ_CONTROL_PANEL_H */
Definition: freqcontrolpanel.h:38
void toggleTriggerMode(gr::qtgui::trigger_mode mode)
void toggleStopButton()
void notifyAvgSlider(int val)
void toggleFFTSize(int val)
void toggleMinHold(bool en)
void setFFTAverage(float val)
void signalAvg(bool en)
void toggleAxisLabels(bool en)
void toggleGrid(bool en)
void signalAvgSlider(float val)
FreqControlPanel(FreqDisplayForm *form)
void toggleMaxHold(bool en)
void signalToggleStopButton()
void toggleFFTWindow(const gr::filter::firdes::win_type win)
DisplayForm child for managing frequency (PSD) plots.
Definition: freqdisplayform.h:41
win_type
Definition: firdes.h:45
trigger_mode
Definition: gr-qtgui/include/gnuradio/qtgui/trigger_mode.h:29