-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmainwindow.h
More file actions
108 lines (91 loc) · 2.56 KB
/
mainwindow.h
File metadata and controls
108 lines (91 loc) · 2.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#pragma once
#include <QMainWindow>
#include <map>
#include <vector>
#include <stdexcept>
#ifdef Q_OS_WIN32
#include <windef.h>
#include <winbase.h>
#include <ftd2xx.h>
#endif
namespace Ui {
class MainWindow;
}
struct Level;
struct Pulse;
struct Clock;
struct TimingParams;
class QListWidgetItem;
class QSocketNotifier;
class QSpinBox;
typedef std::map< int, std::vector<bool> > TimingMap;
class MainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MainWindow(QWidget* parent = 0);
~MainWindow();
private:
void saveSettings(const QString& filename = QString());
void loadSettings(const QString& filename = QString());
void form();
void formAll();
void setLevelParams(Level*);
void setPulseParams(Pulse*);
void setClockParams(Clock*);
void initTimingMap() throw(std::range_error);
unsigned char* formByteArray();
private slots:
void signalCurrentItemChanged(QListWidgetItem*);
void signalCurrentRowChanged(int);
void signalTimingSettings(bool);
void signalLevelChanged();
void signalPulseOffsetChanged(int);
void signalPulseLengthChanged(int);
void signalClockOffsetChanged(int);
void signalClockTimesChanged(int);
void signalAddressChanged(int);
void signalConnectButtonClicked();
void signalDisconnectButtonClicked();
void signalResetButtonClicked();
void signalStartButtonClicked();
void signalSyncRadioButtonToggled(bool);
void signalWriteButtonClicked();
void signalApplyButtonClicked();
void signalNotifierActivated(int);
void signalOpenSettingsClicked();
void signalSaveSettingsClicked();
void signalWriteLengthButtonClicked();
void signalFullStartButtonClicked();
void signalT2Changed(int);
void signalT3Changed(int);
void signalT4Changed(int);
void signalT5Changed(int);
void signalT6Changed(int);
void signalT7Changed(int);
void signalT8Changed(int);
void signalT9Changed(int);
void signalT10Changed(int);
void signalT11Changed(int);
void signalT12Changed(int);
void signalT13Changed(int);
void signalT14Changed(int);
private:
void write(const char*);
unsigned int getTnFromSignal(unsigned int n) const;
void changeSignalsOffsets();
void setTn(unsigned int n);
Ui::MainWindow* ui;
TimingParams* pTimingParams;
TimingMap mTimingMap;
QSocketNotifier* pFdNotifier;
int currentChart;
bool bIgnore;
#ifdef Q_OS_WIN32
FT_HANDLE mHandle;
#elif defined(Q_OS_LINUX)
int fd;
#endif
std::vector<QSpinBox*> mTnSpinBoxes;
double ratio;
bool test;
};