source: trunk/FACT++/gui/MainWindow.h @ 19314

Last change on this file since 19314 was 19314, checked in by tbretz, 8 months ago
Just removed the need for __CMAKE__ by renaming the Makefile qt4 ui files.
File size: 9.6 KB
Line 
1#ifndef FACT_MainWindow
2#define FACT_MainWindow
3
4#include "ui_design.h"
5
6#include <QMainWindow>
7
8class TObject;
9class TCanvas;
10
11class MainWindow : public QMainWindow, protected Ui::MainWindow
12{
13    Q_OBJECT;
14
15    void MakeLEDs(QPushButton **arr, QGridLayout *lay, const char *slot) const;
16
17    void SelectTab(const QString &name);
18    void SetTriggerSequence();
19    void SetTriggerCoincidence();
20    void SetCalibCoincidence();
21
22protected:
23    QPushButton *fFtuLED[40];
24    QPushButton *fFadLED[40];
25
26    bool fInHandler;
27
28public:
29    MainWindow(QWidget *p=0);
30
31private slots:
32    // Helper
33    void on_fFtmStartRun_clicked();
34    void on_fFtmStopRun_clicked();
35
36    void on_fFadStart_clicked();
37    void on_fFadStop_clicked();
38    void on_fFadAbort_clicked();
39    void on_fFadSoftReset_clicked();
40    void on_fFadHardReset_clicked();
41
42    void on_fLoggerStart_clicked();
43    void on_fLoggerStop_clicked();
44
45    void on_fMcpStartRun_clicked();
46    void on_fMcpStopRun_clicked();
47    void on_fMcpReset_clicked();
48
49    // Comment Sql Table
50    void on_fCommentInsertRow_clicked();
51
52    // System status
53    void on_fShutdown_clicked();
54    void on_fShutdownAll_clicked();
55
56    // Status LEDs signals
57    void on_fStatusFTULed_clicked();
58    void on_fStatusFTMLed_clicked();
59    void on_fStatusFADLed_clicked();
60    void on_fStatusLoggerLed_clicked();
61    void on_fStatusChatLed_clicked();
62    //void on_fStatusFTMEnable_stateChanged(int state);
63
64    // Tab Widget
65    void on_fTabWidget_tabCloseRequested(int which);
66    virtual void on_fTabWidget_currentChanged(int) = 0;
67
68    // Tab: FAD
69    void slot_fFadLED_clicked();
70
71//    void on_fFadStartRun_clicked();
72//    void on_fFadStopRun_clicked();
73    void on_fFadDrsOn_clicked();
74    void on_fFadDrsOff_clicked();
75    void on_fFadDwriteOn_clicked();
76    void on_fFadDwriteOff_clicked();
77    void on_fFadSingleTrigger_clicked();
78    void on_fFadTriggerLineOn_clicked();
79    void on_fFadTriggerLineOff_clicked();
80    void on_fFadContTriggerOn_clicked();
81    void on_fFadContTriggerOff_clicked();
82    void on_fFadBusyOnOn_clicked();
83    void on_fFadBusyOnOff_clicked();
84    void on_fFadBusyOffOn_clicked();
85    void on_fFadBusyOffOff_clicked();
86    void on_fFadResetTriggerId_clicked();
87    void on_fFadSocket0_clicked();
88    void on_fFadSocket17_clicked();
89
90    void FadSetFileFormat(uint16_t fmt);
91
92    void on_fFadButtonFileFormatNone_clicked()  { FadSetFileFormat(0); }
93    void on_fFadButtonFileFormatDebug_clicked() { FadSetFileFormat(1); }
94    void on_fFadButtonFileFormatFits_clicked()  { FadSetFileFormat(2); }
95    void on_fFadButtonFileFormatRaw_clicked()   { FadSetFileFormat(3); }
96    void on_fFadButtonFileFormatZFits_clicked() { FadSetFileFormat(6); }
97
98    void on_fFadPrescalerCmd_valueChanged(int);
99    void on_fFadRunNumberCmd_valueChanged(int);
100    void on_fFadRoiCmd_valueChanged(int = 0);
101    void on_fFadRoiCh9Cmd_valueChanged(int) { on_fFadRoiCmd_valueChanged(); }
102
103    void FadDacCmd_valueChanged(uint16_t, uint16_t);
104
105    void on_fFadDac0Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 0); }
106    void on_fFadDac1Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 1); }
107    void on_fFadDac2Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 2); }
108    void on_fFadDac3Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 3); }
109    void on_fFadDac4Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 4); }
110    void on_fFadDac5Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 5); }
111    void on_fFadDac6Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 6); }
112    void on_fFadDac7Cmd_valueChanged(int v) { FadDacCmd_valueChanged(v, 7); }
113
114    void on_fDrsCalibStart_clicked();
115    void on_fDrsCalibReset_clicked();
116
117    void on_fDrsCalibStart2_clicked() { on_fDrsCalibStart_clicked(); }
118    void on_fDrsCalibReset2_clicked() { on_fDrsCalibReset_clicked(); }
119
120    // Tab: Adc
121    virtual void DisplayEventData() = 0;
122    void on_fAdcCrate_valueChanged(int)   { DisplayEventData(); }
123    void on_fAdcBoard_valueChanged(int)   { DisplayEventData(); }
124    void on_fAdcChip_valueChanged(int)    { DisplayEventData(); }
125    void on_fAdcChannel_valueChanged(int) { DisplayEventData(); }
126
127    // Tab: FTM
128    void on_fEnableTrigger_stateChanged(int);
129    void on_fEnableExt1_stateChanged(int);
130    void on_fEnableExt2_stateChanged(int);
131    void on_fEnableClockCond_stateChanged(int);
132    void on_fEnableVeto_stateChanged(int);
133
134    void on_fTriggerSeqPed_valueChanged(int)   { SetTriggerSequence(); }
135    void on_fTriggerSeqLPint_valueChanged(int) { SetTriggerSequence(); }
136    void on_fTriggerSeqLPext_valueChanged(int) { SetTriggerSequence(); }
137
138    void on_fPhysicsCoincidence_valueChanged(int);
139    void on_fPhysicsWindow_valueChanged(int);
140    void on_fCalibCoincidence_valueChanged(int);
141    void on_fCalibWindow_valueChanged(int);
142
143    void on_fTriggerInterval_valueChanged(int);
144    void on_fTriggerDelay_valueChanged(int);
145    void on_fTimeMarkerDelay_valueChanged(int);
146    void on_fDeadTime_valueChanged(int);
147/*
148    void on_fClockCondR0_valueChanged(int) { }
149    void on_fClockCondR1_valueChanged(int) { }
150    void on_fClockCondR8_valueChanged(int) { }
151    void on_fClockCondR9_valueChanged(int) { }
152    void on_fClockCondR11_valueChanged(int) { }
153    void on_fClockCondR13_valueChanged(int) { }
154    void on_fClockCondR14_valueChanged(int) { }
155    void on_fClockCondR15_valueChanged(int) { }
156*/
157    void on_fPrescalingVal_valueChanged(int);
158
159    void on_fClockCondFreq_activated(int);
160
161    void on_fLpIntIntensity_valueChanged(int);
162    void on_fLpExtIntensity_valueChanged(int);
163    void on_fLpIntGroup1_stateChanged(int);
164    void on_fLpExtGroup1_stateChanged(int);
165    void on_fLpIntGroup2_stateChanged(int);
166    void on_fLpExtGroup2_stateChanged(int);
167
168    // Tab: FTUs
169    void slot_fFtuLED_clicked();
170    void on_fFtuPing_toggled(bool);
171    void on_fFtuAllOn_clicked();
172    void on_fFtuAllOff_clicked();
173
174    // Tab: Feedback
175    void on_fFeedbackDevMin_valueChanged(int);
176    void on_fFeedbackDevMax_valueChanged(int);
177    void on_fFeedbackCmdMin_valueChanged(int);
178    void on_fFeedbackCmdMax_valueChanged(int);
179    void on_fFeedbackStart_clicked();
180    void on_fFeedbackStop_clicked();
181    void on_fFeedbackCalibrate_clicked();
182
183    // Tab: Bias
184    virtual void BiasHvChannelChanged() = 0;
185    virtual void BiasCamChannelChanged() = 0;
186    void on_fBiasHvBoard_valueChanged(int)   { BiasHvChannelChanged(); }
187    void on_fBiasHvChannel_valueChanged(int) { BiasHvChannelChanged(); }
188    void on_fBiasCamCrate_valueChanged(int)  { BiasCamChannelChanged(); }
189    void on_fBiasCamBoard_valueChanged(int)  { BiasCamChannelChanged(); }
190    void on_fBiasCamPatch_valueChanged(int)  { BiasCamChannelChanged(); }
191    void on_fBiasCamPixel_valueChanged(int)  { BiasCamChannelChanged(); }
192
193    void on_fBiasVoltDac_valueChanged(int);
194
195    void on_fBiasVoltMin_valueChanged(int); // FIXME: Could be set as slot in the designer
196    void on_fBiasVoltMax_valueChanged(int); // FIXME: Could be set as slot in the designer
197
198    void on_fBiasCurrentMin_valueChanged(int); // FIXME: Could be set as slot in the designer
199    void on_fBiasCurrentMax_valueChanged(int); // FIXME: Could be set as slot in the designer
200
201    void on_fBiasApplyChVolt_clicked();
202    void on_fBiasApplyChDac_clicked();
203    void on_fBiasApplyGlobalVolt_clicked();
204    void on_fBiasApplyGlobalDac_clicked();
205
206    void on_fBiasSetToZero_clicked();
207    void on_fBiasReset_clicked();
208
209    virtual void on_fBiasDispRefVolt_stateChanged(int) = 0;
210
211    // Tab: Rates
212    //virtual void UpdateThresholdIdx() = 0;
213    virtual void on_fPixelIdx_valueChanged(int) = 0;
214    //void on_fThresholdCrate_valueChanged(int) { UpdateThresholdIdx() ; }
215    //void on_fThresholdBoard_valueChanged(int) { UpdateThresholdIdx() ; }
216    //void on_fThresholdPatch_valueChanged(int) { UpdateThresholdIdx() ; }
217
218    virtual void on_fPixelEnable_stateChanged(int) = 0;
219    virtual void on_fThresholdVal_valueChanged(int) = 0;
220    //virtual void on_fThresholdIdx_valueChanged(int) = 0;
221
222    virtual void on_fBoardRatesEnabled_toggled(bool) = 0;
223
224    void on_fNoutof4Val_valueChanged(int);
225
226    void on_fRatesMin_valueChanged(int); // FIXME: Could be set as slot in the designer
227    void on_fRatesMax_valueChanged(int); // FIXME: Could be set as slot in the designer
228    void on_fPixelEnableAll_clicked();
229    void on_fPixelDisableAll_clicked();
230
231    virtual void on_fPixelDisableOthers_clicked() = 0;
232    virtual void on_fThresholdDisableOthers_clicked() = 0;
233    virtual void on_fThresholdEnablePatch_clicked() = 0;
234    virtual void on_fThresholdDisablePatch_clicked() = 0;
235
236    virtual void DisplayRates() = 0;
237    void on_fRatePatch1_valueChanged(int) { DisplayRates(); }
238    void on_fRatePatch2_valueChanged(int) { DisplayRates(); }
239    void on_fRateBoard1_valueChanged(int) { DisplayRates(); }
240    void on_fRateBoard2_valueChanged(int) { DisplayRates(); }
241
242    // Tab: RateScan
243
244    virtual void DisplayRateScan() = 0;
245    void on_fRateScanPatch1_valueChanged(int) { DisplayRateScan(); }
246    void on_fRateScanPatch2_valueChanged(int) { DisplayRateScan(); }
247    void on_fRateScanBoard1_valueChanged(int) { DisplayRateScan(); }
248    void on_fRateScanBoard2_valueChanged(int) { DisplayRateScan(); }
249
250    // Tab: Chat
251    void on_fChatSend_clicked();
252
253    // Tab: Commands
254    /// Needs access to DimNetwork thus it is implemented in the derived class
255    virtual void on_fDimCmdSend_clicked() = 0;
256
257    // Main menu
258    //    void on_fMenuLogSaveAs_triggered(bool)
259
260    virtual void slot_RootEventProcessed(TObject *, unsigned int, TCanvas *) = 0;
261    virtual void slot_RootUpdate() = 0;
262    virtual void slot_ChoosePixelThreshold(int) = 0;
263    virtual void slot_ChooseBiasChannel(int) = 0;
264    virtual void slot_CameraDoubleClick(int) = 0;
265    virtual void slot_CameraMouseMove(int) = 0;
266    void slot_TimeUpdate();
267};
268
269#endif
Note: See TracBrowser for help on using the repository browser.