SEPIA
Software documentation for the APEX SEPIA receivers
mcwidget.h
1 #ifndef MCWIDGET_H
2 #define MCWIDGET_H
3 
4 #include <QWidget>
5 #include <QStringList>
6 #include <QStandardItemModel>
7 #include <QSortFilterProxyModel>
8 #include <QDoubleValidator>
9 #include <QTimerEvent>
10 #include <QThread>
11 
12 #include "mcunit.h"
13 #include "../cartridge.h"
14 
15 namespace Ui {
16 class MCwidget;
17 }
18 
19 class MCwidget : public QWidget
20 {
21  Q_OBJECT
22 
23 public:
24  explicit MCwidget(QWidget *parent = 0);
25  ~MCwidget();
26  void setupModel();
27 
28 public slots:
29  void updateMonitorItem(const QString &, float value);
30  void tuningDone(bool locked);
31 
32 protected:
33  void timerEvent(QTimerEvent *e);
34 
35 signals:
36  void getChannel(const QString &name);
37  void tuneYIG(double, int, double, bool);
38 
39 private slots:
40  void on_pushButton_clicked();
41  void enableOkButton();
42  void filterMonitor(const QString &expr);
43 
44 private:
45  Ui::MCwidget *ui;
46  QThread *hardware;
47  Cartridge *cartridge;
48  Synthesizer *anritsu;
49  QStringList mcChannels;
50  QStandardItemModel *mcModel;
51  QSortFilterProxyModel *proxyModel;
52  QDoubleValidator *freqValidator;
53  double tuneFreq;
54  int harmonic;
55  int myTimerId;
56 };
57 
58 #endif // MCWIDGET_H
Definition: mcwidget.h:15
A class to control the Anritsu synthesizer.
Definition: anritsu.h:18
A virtual class representing a cartridge.
Definition: cartridge.h:267