GNU Radio Manual and C++ API Reference 3.10.5.1
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 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11#ifndef FREQ_CONTROL_PANEL_H
12#define FREQ_CONTROL_PANEL_H
13
14#include <gnuradio/fft/window.h>
17#include <QtGui/QtGui>
18#include <QCheckBox>
19#include <QComboBox>
20#include <QHBoxLayout>
21#include <QLabel>
22#include <QPushButton>
23#include <QSlider>
24#include <vector>
25
26class FreqControlPanel : public QVBoxLayout
27{
28 Q_OBJECT
29
30public:
33
34public slots:
35 void notifyAvgSlider(int val);
36 void setFFTAverage(float val);
37 void toggleGrid(bool en);
38 void toggleAxisLabels(bool en);
39 void toggleMaxHold(bool en);
40 void toggleMinHold(bool en);
41
42 void toggleFFTSize(int val);
44
46
48 void updateStopLabel(bool on);
49
50signals:
51 void signalAvgSlider(float val);
52 void signalAvg(bool en);
54
55private:
56 FreqDisplayForm* d_parent;
57
58 QGroupBox* d_trace_box;
59 QVBoxLayout* d_trace_layout;
60 QCheckBox* d_maxhold_check;
61 QCheckBox* d_minhold_check;
62
63 QHBoxLayout* d_avg_layout;
64 QLabel* d_avg_label;
65 QSlider* d_avg_slider;
66
67 QGroupBox* d_axes_box;
68 QVBoxLayout* d_axes_layout;
69
70 QCheckBox* d_grid_check;
71 QCheckBox* d_axislabels_check;
72 QHBoxLayout* d_yrange_layout;
73 QLabel* d_yrange_label;
74 QPushButton* d_yrange_plus;
75 QPushButton* d_yrange_minus;
76
77 QHBoxLayout* d_ymin_layout;
78 QLabel* d_ymin_label;
79 QPushButton* d_ymin_plus;
80 QPushButton* d_ymin_minus;
81
82 QPushButton* d_autoscale_button;
83
84 QGroupBox* d_fft_box;
85 QVBoxLayout* d_fft_layout;
86 QComboBox* d_fft_size_combo;
87 QComboBox* d_fft_win_combo;
88
89 int d_slider_max, d_slider_min, d_slider_step;
90
91 QGroupBox* d_trigger_box;
92 QVBoxLayout* d_trigger_layout;
93 QHBoxLayout* d_trigger_level_layout;
94 QLabel* d_trigger_level_label;
95 QComboBox* d_trigger_mode_combo;
96 QPushButton *d_trigger_level_plus, *d_trigger_level_minus;
97
98 QGroupBox* d_extras_box;
99 QVBoxLayout* d_extras_layout;
100 QPushButton* d_stop_button;
101};
102
103#endif /* FREQ_CONTROL_PANEL_H */
Definition: freqcontrolpanel.h:27
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 updateStopLabel(bool on)
void toggleFFTWindow(const gr::fft::window::win_type win)
void toggleAxisLabels(bool en)
void toggleGrid(bool en)
void signalAvgSlider(float val)
FreqControlPanel(FreqDisplayForm *form)
void toggleMaxHold(bool en)
~FreqControlPanel() override
void signalToggleStopButton()
DisplayForm child for managing frequency (PSD) plots.
Definition: freqdisplayform.h:29
win_type
Definition: window.h:28
trigger_mode
Definition: trigger_mode.h:17