source: fact/tools/Edd/Edd.h@ 10330

Last change on this file since 10330 was 10280, checked in by ogrimm, 13 years ago
Separated Edd into generic Evidence part and FACT-specific part
File size: 2.3 KB
Line 
1#ifndef EDD_H_SEEN
2#define EDD_H_SEEN
3
4#include "../../Evidence/GUI.h"
5#include "RawDataCTX.h"
6#include "PixelMap.h"
7
8#define SVN_REVISION "$Revision: 10143 $"
9
10// Event oscilloscope
11class EventScope: public EddBasePlot, public PixelMap {
12 Q_OBJECT
13
14 private:
15 struct ItemDetails {
16 unsigned int Board, Chip, Channel;
17 QwtPlotCurve *Signal;
18 QwtPlotMarker *Trigger;
19 };
20 QList<struct ItemDetails> List;
21
22 QString Name;
23 RawDataCTX *RD;
24 CTX_ErrCode ErrCode;
25 QAction *PhysPipeAction;
26 QAction *PersistanceAction;
27 FILE *Tmpfile;
28
29 public:
30 EventScope(QWidget * = NULL);
31 ~EventScope();
32
33 void UpdateFirst(int, int, int);
34 void AddTrace(int, int, int);
35 void SetActive(bool);
36 QString ToPixel(unsigned int, unsigned int, unsigned int, unsigned int);
37
38 private slots:
39 void Update(QString, int, QByteArray, QString, QString);
40 void PlotTraces();
41 void DeleteCurve(QwtPlotCurve *);
42
43 signals:
44 void RunHeaderChanged(QString);
45 void EventHeaderChanged(QString);
46 void PixelData(QVector<double>);
47};
48
49
50// Tab page classes
51class TP_Environment: public QWidget {
52 Q_OBJECT
53
54 public:
55 TP_Environment();
56};
57
58class TP_Bias: public QWidget {
59 Q_OBJECT
60
61 public:
62 TP_Bias();
63};
64
65class TP_FADctrl: public QWidget {
66 Q_OBJECT
67
68 public:
69 TP_FADctrl();
70};
71
72class TP_Feedback: public QWidget {
73 Q_OBJECT
74
75 public:
76 TP_Feedback();
77};
78
79class TP_DAQ: public QWidget {
80 Q_OBJECT
81 static const int MAXPIXEL = 1440;
82
83 private:
84 EventScope *Scope;
85 QPlainTextEdit *RunHeaderDisplay, *EventHeaderDisplay;
86
87 QSpinBox *Channel, *Chip, *Board, *PixelID;
88 QFormLayout *FormLayout;
89 QWidget *Display;
90 QPushButton **Pixel;
91 QPushButton *StartStopButton;
92
93 private slots:
94 void TranslatePixelID(int);
95 void UpdateScope(int);
96 void KeepCurrent();
97 void StartStop(bool);
98 void ShowPixelDisplay();
99 void SetPixelData(QVector<double>);
100
101 public:
102 TP_DAQ();
103 ~TP_DAQ();
104};
105
106class TP_Evidence: public QWidget {
107 Q_OBJECT
108
109 private slots:
110 void ToggleAlarm(bool);
111 void StartDIMBrowser();
112 void StartELog();
113
114 public:
115 TP_Evidence();
116};
117
118
119// Main window class
120class GUI: public QMainWindow, public DimBrowser {
121 Q_OBJECT
122
123 private:
124 QTabWidget *TabWidget;
125
126 void closeEvent(QCloseEvent *);
127
128 public:
129 GUI();
130
131 private slots:
132 void MenuAbout();
133 void MenuNewHistory();
134 void DetachTab(int);
135 void CheckAlarm();
136};
137
138#endif
Note: See TracBrowser for help on using the repository browser.