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

Last change on this file since 11209 was 11200, checked in by tbretz, 14 years ago
Restructured the FAD gui; made widgets for run-number and ROI active.
File size: 4.5 KB
Line 
1#ifndef FACT_MainWindow
2#define FACT_MainWindow
3
4#include "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 // System status
33 void on_fShutdown_clicked();
34 void on_fShutdownAll_clicked();
35
36 // Status LEDs signals
37 void on_fStatusFTULed_clicked();
38 void on_fStatusFTMLed_clicked();
39 void on_fStatusFADLed_clicked();
40 void on_fStatusLoggerLed_clicked();
41 void on_fStatusChatLed_clicked();
42 //void on_fStatusFTMEnable_stateChanged(int state);
43
44 // Tab Widget
45 void on_fTabWidget_tabCloseRequested(int which);
46 virtual void on_fTabWidget_currentChanged(int) { }
47
48 // Tab: FAD
49 void on_fFadStartRun_clicked();
50 void on_fFadStopRun_clicked();
51 void on_fFadDrsOn_clicked();
52 void on_fFadDrsOff_clicked();
53 void on_fFadDwriteOn_clicked();
54 void on_fFadDwriteOff_clicked();
55 void on_fFadSingleTrigger_clicked();
56 void on_fFadTriggerLineOn_clicked();
57 void on_fFadTriggerLineOff_clicked();
58 void on_fFadContTriggerOn_clicked();
59 void on_fFadContTriggerOff_clicked();
60 void on_fFadBusyOn_clicked();
61 void on_fFadBusyOff_clicked();
62 void on_fFadStart_clicked();
63 void on_fFadStop_clicked();
64 void on_fFadAbort_clicked();
65 void on_fFadResetTriggerId_clicked();
66 void on_fFadSocket0_clicked();
67 void on_fFadSocket17_clicked();
68
69 void on_fFadRunNumberCmd_valueChanged(int);
70 void on_fFadRoiCmd_valueChanged(int);
71
72 // Tab: FTM
73 void on_fEnableTrigger_stateChanged(int);
74 void on_fEnableExt1_stateChanged(int);
75 void on_fEnableExt2_stateChanged(int);
76 void on_fEnableClockCond_stateChanged(int);
77 void on_fEnableVeto_stateChanged(int);
78
79 void on_fTriggerSeqPed_valueChanged(int) { SetTriggerSequence(); }
80 void on_fTriggerSeqLPint_valueChanged(int) { SetTriggerSequence(); }
81 void on_fTriggerSeqLPext_valueChanged(int) { SetTriggerSequence(); }
82
83 void on_fPhysicsCoincidence_valueChanged(int);
84 void on_fPhysicsWindow_valueChanged(int);
85 void on_fCalibCoincidence_valueChanged(int);
86 void on_fCalibWindow_valueChanged(int);
87
88 void on_fTriggerInterval_valueChanged(int);
89 void on_fTriggerDelay_valueChanged(int);
90 void on_fTimeMarkerDelay_valueChanged(int);
91 void on_fDeadTime_valueChanged(int);
92/*
93 void on_fClockCondR0_valueChanged(int) { }
94 void on_fClockCondR1_valueChanged(int) { }
95 void on_fClockCondR8_valueChanged(int) { }
96 void on_fClockCondR9_valueChanged(int) { }
97 void on_fClockCondR11_valueChanged(int) { }
98 void on_fClockCondR13_valueChanged(int) { }
99 void on_fClockCondR14_valueChanged(int) { }
100 void on_fClockCondR15_valueChanged(int) { }
101*/
102 void on_fPrescalingVal_valueChanged(int);
103
104 void on_fClockCondFreq_activated(int);
105
106 // Tab: FTUs
107 void slot_fFtuLED_clicked();
108 void on_fFtuPing_toggled(bool);
109 void on_fFtuAllOn_clicked();
110 void on_fFtuAllOff_clicked();
111
112 // Tab: Rates
113 virtual void on_fPixelEnable_stateChanged(int) { }
114 virtual void on_fThresholdVal_valueChanged(int) { }
115 virtual void on_fThresholdIdx_valueChanged(int) { }
116 virtual void on_fThresholdCrate_valueChanged(int) { }
117 virtual void on_fThresholdBoard_valueChanged(int) { }
118 virtual void on_fThresholdPatch_valueChanged(int) { }
119 virtual void on_fPixelIdx_valueChanged(int) { }
120
121 void on_fPixelEnableAll_clicked();
122 void on_fPixelDisableAll_clicked();
123
124 virtual void on_fPixelDisableOthers_clicked() { }
125 virtual void on_fThresholdDisableOthers_clicked() { }
126
127 virtual void on_fRatePatch1_valueChanged(int) { }
128 virtual void on_fRatePatch2_valueChanged(int) { }
129 virtual void on_fRateBoard1_valueChanged(int) { }
130 virtual void on_fRateBoard2_valueChanged(int) { }
131
132 // Tab: FADs
133 void slot_fFadLED_clicked();
134
135 // Tab: Chat
136 void on_fChatSend_clicked();
137
138 // Tab: Commands
139 /// Needs access to DimNetwork thus it is implemented in the derived class
140 virtual void on_fDimCmdSend_clicked() { }
141
142 // Main menu
143 // void on_fMenuLogSaveAs_triggered(bool)
144
145 virtual void slot_RootEventProcessed(TObject *, unsigned int, TCanvas *) { }
146 virtual void slot_RootUpdate() { }
147
148 void slot_TimeUpdate();
149};
150
151#endif
Note: See TracBrowser for help on using the repository browser.