RTXI  2.4
The Real-Time eXperiment Interface Documentation
system_control_panel.h
Go to the documentation of this file.
1 /*
2  The Real-Time eXperiment Interface (RTXI)
3  Copyright (C) 2011 Georgia Institute of Technology, University of Utah, Weill Cornell Medical College
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 
18 */
19 
20 #ifndef SYSTEM_CONTROL_PANEL_H
21 #define SYSTEM_CONTROL_PANEL_H
22 
23 #include <QtWidgets>
24 
25 #include <event.h>
26 
27 class SystemControlPanel : public QWidget, public Event::Handler
28 {
29 
30  Q_OBJECT
31 
32 public:
33  SystemControlPanel(QWidget *);
34  virtual ~SystemControlPanel(void);
35 
36 public slots:
37  void apply(void);
38  void display(void);
39  void updateDevice(void);
40  void updateFreq(void);
41  void updatePeriod(void);
42 
43 private:
44  void __display(void);
45  void receiveEvent(const Event::Object *);
46 
47  QGroupBox *deviceGroup;
48  QGroupBox *analogGroup;
49  QGroupBox *digitalGroup;
50  QGroupBox *buttonGroup;
51 
52  QMdiSubWindow *subWindow;
53 
54  QComboBox *deviceList;
55  QComboBox *analogChannelList;
56  QComboBox *analogRangeList;
57  QComboBox *analogDownsampleList;
58  QComboBox *analogReferenceList;
59  QComboBox *analogSubdeviceList;
60  QComboBox *analogUnitPrefixList;
61  QComboBox *analogUnitList;
62  QComboBox *analogUnitPrefixList2;
63  QComboBox *analogUnitList2;
64  QLineEdit *analogGainEdit;
65  QLineEdit *analogZeroOffsetEdit;
66  QPushButton *analogActiveButton;
67  QPushButton *analogCalibrationButton;
68 
69  QComboBox *digitalChannelList;
70  QComboBox *digitalDirectionList;
71  QComboBox *digitalSubdeviceList;
72  QPushButton *digitalActiveButton;
73 
74  bool rateUpdate;
75  QComboBox *freqUnitList;
76  QComboBox *periodUnitList;
77  QLineEdit *freqEdit;
78  QLineEdit *periodEdit;
79 };
80 
81 #endif /* SYSTEM_CONTROL_PANEL_H */
SystemControlPanel::updateDevice
void updateDevice(void)
Definition: system_control_panel.cpp:329
SystemControlPanel
Definition: system_control_panel.h:27
SystemControlPanel::SystemControlPanel
SystemControlPanel(QWidget *)
Definition: system_control_panel.cpp:48
SystemControlPanel::display
void display(void)
Definition: system_control_panel.cpp:416
SystemControlPanel::~SystemControlPanel
virtual ~SystemControlPanel(void)
Definition: system_control_panel.cpp:281
event.h
Event::Handler
Definition: event.h:256
SystemControlPanel::updatePeriod
void updatePeriod(void)
Definition: system_control_panel.cpp:388
Event::Object
Definition: event.h:128
SystemControlPanel::updateFreq
void updateFreq(void)
Definition: system_control_panel.cpp:360
SystemControlPanel::apply
void apply(void)
Definition: system_control_panel.cpp:286