CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TEcnaGui.cc
Go to the documentation of this file.
1 //----------Author's Name: B.Fabbro DSM/IRFU/SPP CEA-Saclay
2 //----------Copyright: Those valid for CEA sofware
3 //----------Modified: 13/04/2011
4 
6 #include <cstdlib>
7 
8 //--------------------------------------
9 // TEcnaGui.cc
10 // Class creation: 03 Dec 2002
11 // Documentation: see TEcnaGui.h
12 //--------------------------------------
13 
14 ClassImp(TEcnaGui)
15 //______________________________________________________________________________
16 //
17 
19 {
20  //destructor
21 
22 #define DEST
23 #ifdef DEST
24  // cout << "TEcnaGui> Entering destructor" << endl;
25  // cout << " fCnew = " << fCnew << ", fCdelete = " << fCdelete << endl;
26 
27  //.... general variables
28  //if ( fHistos != 0 ) {delete fHistos; fCdelete++;}
29 
30  //if ( fCnaParHistos != 0 ) {delete fCnaParHistos; fCdelete++;}
31  //if ( fCnaParPaths != 0 ) {delete fCnaParPaths; fCdelete++;}
32  //if ( fEcalNumbering != 0 ) {delete fEcalNumbering; fCdelete++;}
33  //if ( fEcal != 0 ) {delete fEcal; fCdelete++;}
34 
35  //.... general frames
36 
37  if ( fLayoutGeneral != 0 ) {delete fLayoutGeneral; fCdelete++;}
38  if ( fLayoutBottLeft != 0 ) {delete fLayoutBottLeft; fCdelete++;}
39  if ( fLayoutBottRight != 0 ) {delete fLayoutBottRight; fCdelete++;}
40  if ( fLayoutTopLeft != 0 ) {delete fLayoutTopLeft; fCdelete++;}
41  if ( fLayoutTopRight != 0 ) {delete fLayoutTopRight; fCdelete++;}
42  if ( fLayoutCenterYLeft != 0 ) {delete fLayoutCenterYLeft; fCdelete++;}
43  if ( fLayoutCenterYRight != 0 ) {delete fLayoutCenterYRight; fCdelete++;}
44  if ( fLayoutCenterXTop != 0 ) {delete fLayoutCenterXTop; fCdelete++;}
45 
46  if ( fVoidFrame != 0 ) {delete fVoidFrame; fCdelete++;}
47 
48  //..... specific frames + buttons + menus
49 
50  //++++++++++++++++++++++++++++++ Horizontal frame Analysis + First requested evt number + Run number
51  if ( fAnaNorsRunFrame != 0 ) {delete fAnaNorsRunFrame; fCdelete++;}
52  if ( fLayoutAnaNorsRunFrame != 0 ) {delete fLayoutAnaNorsRunFrame; fCdelete++;}
53 
54  //--------------------------------- Sub-Frame Analysis Name (Button+Entry Field)
55  if ( fAnaFrame != 0 ) {delete fAnaFrame; fCdelete++;}
56  if ( fAnaBut != 0 ) {delete fAnaBut; fCdelete++;}
57  if ( fLayoutAnaBut != 0 ) {delete fLayoutAnaBut; fCdelete++;}
58  if ( fEntryAnaNumber != 0 ) {delete fEntryAnaNumber; fCdelete++;}
59  if ( fAnaText != 0 ) {fAnaText->Delete(); fCdelete++;}
60  if ( fLayoutAnaField != 0 ) {delete fLayoutAnaField; fCdelete++;}
61 
62  //------------------- subframe first requested evt number
63  if ( fFevFrame != 0 ) {delete fFevFrame; fCdelete++;}
64  if ( fFevBut != 0 ) {delete fFevBut; fCdelete++;}
65  if ( fLayoutFevBut != 0 ) {delete fLayoutFevBut; fCdelete++;}
66  if ( fEntryFevNumber != 0 ) {delete fEntryFevNumber; fCdelete++;}
67  if ( fFevText != 0 ) {fFevText->Delete(); fCdelete++;}
68  if ( fLayoutFevFieldText != 0 ) {delete fLayoutFevFieldText; fCdelete++;}
69  if ( fLayoutFevFieldFrame != 0 ) {delete fLayoutFevFieldFrame; fCdelete++;}
70 
71  //-------------------------------- Sub-Frame Run number (Button+Entry Field)
72  if ( fRunFrame != 0 ) {delete fRunFrame; fCdelete++;}
73  if ( fRunBut != 0 ) {delete fRunBut; fCdelete++;}
74  if ( fLayoutRunBut != 0 ) {delete fLayoutRunBut; fCdelete++;}
75  if ( fEntryRunNumber != 0 ) {delete fEntryRunNumber; fCdelete++;}
76  if ( fRunText != 0 ) {fRunText->Delete(); fCdelete++;}
77  if ( fLayoutRunField != 0 ) {delete fLayoutRunField; fCdelete++;}
78 
79  //+++++++++++++++++++++++++++++ Horizontal frame Nb Of Samples + last requested events + Clean + Submit
80  if ( fFevLevStexFrame != 0 ) {delete fFevLevStexFrame; fCdelete++;}
81  if ( fLayoutFevLevStexFrame != 0 ) {delete fLayoutFevLevStexFrame; fCdelete++;}
82 
83  //------------------- Sub-Frame Nb of Required Samples (Button+Entry Field)
84  if ( fNorsFrame != 0 ) {delete fNorsFrame; fCdelete++;}
85  if ( fNorsBut != 0 ) {delete fNorsBut; fCdelete++;}
86  if ( fLayoutNorsBut != 0 ) {delete fLayoutNorsBut; fCdelete++;}
87  if ( fEntryNorsNumber != 0 ) {delete fEntryNorsNumber; fCdelete++;}
88  if ( fNorsText != 0 ) {fNorsText->Delete(); fCdelete++;}
89  if ( fLayoutNorsField != 0 ) {delete fLayoutNorsField; fCdelete++;}
90 
91  //------------------- subframe last requested evt number
92  if ( fLevFrame != 0 ) {delete fLevFrame; fCdelete++;}
93  if ( fLevBut != 0 ) {delete fLevBut; fCdelete++;}
94  if ( fLayoutLevBut != 0 ) {delete fLayoutLevBut; fCdelete++;}
95  if ( fEntryLevNumber != 0 ) {delete fEntryLevNumber; fCdelete++;}
96  if ( fLevText != 0 ) {fLevText->Delete(); fCdelete++;}
97  if ( fLayoutLevFieldText != 0 ) {delete fLayoutLevFieldText; fCdelete++;}
98  if ( fLayoutLevFieldFrame != 0 ) {delete fLayoutLevFieldFrame; fCdelete++;}
99 
100  //................................ Menu for Clean
101  if ( fMenuClean != 0 ) {delete fMenuClean; fCdelete++;}
102  if ( fMenuBarClean != 0 ) {fMenuBarClean->Delete(); fCdelete++;}
103  //................................ Menu for Submit jobs on batch system
104  if ( fMenuSubmit != 0 ) {delete fMenuSubmit; fCdelete++;}
105  if ( fMenuBarSubmit != 0 ) {fMenuBarSubmit->Delete(); fCdelete++;}
106 
107  //+++++++++++++++++++++++++++++++++++++++++++++++++ Horizontal Frame:Stex number + NbOfReqEvts
108  if ( fCompStRqFrame != 0 ) {delete fCompStRqFrame; fCdelete++;}
109  if ( fLayoutCompStRqFrame != 0 ) {delete fLayoutCompStRqFrame; fCdelete++;}
110 
111  //------------------- subframe stex number
112  if ( fStexFrame != 0 ) {delete fStexFrame; fCdelete++;}
113  if ( fStexBut != 0 ) {delete fStexBut; fCdelete++;}
114  if ( fLayoutStexBut != 0 ) {delete fLayoutStexBut; fCdelete++;}
115  if ( fEntryStexNumber != 0 ) {delete fEntryStexNumber; fCdelete++;}
116  if ( fStexText != 0 ) {fStexText->Delete(); fCdelete++;}
117  if ( fLayoutStexFieldText != 0 ) {delete fLayoutStexFieldText; fCdelete++;}
118  if ( fLayoutStexFieldFrame != 0 ) {delete fLayoutStexFieldFrame; fCdelete++;}
119 
120  //------------------- subframe number of requested evts
121  if ( fRevFrame != 0 ) {delete fRevFrame; fCdelete++;}
122  if ( fRevBut != 0 ) {delete fRevBut; fCdelete++;}
123  if ( fLayoutRevBut != 0 ) {delete fLayoutRevBut; fCdelete++;}
124  if ( fEntryRevNumber != 0 ) {delete fEntryRevNumber; fCdelete++;}
125  if ( fRevText != 0 ) {fRevText->Delete(); fCdelete++;}
126  if ( fLayoutRevFieldText != 0 ) {delete fLayoutRevFieldText; fCdelete++;}
127  if ( fLayoutRevFieldFrame != 0 ) {delete fLayoutRevFieldFrame; fCdelete++;}
128 
129  //+++++++++++++++++++++++ Horizontal Frame StexStin numbering + Nb Samp for calc + Calculations
130  if ( fCompStnbFrame != 0 ) {delete fCompStnbFrame; fCdelete++;}
131  if ( fLayoutCompStnbFrame != 0 ) {delete fLayoutCompStnbFrame; fCdelete++;}
132 
133  //............................ Stex Stin Numbering view (Button)
134  if ( fButStexNb != 0 ) {delete fButStexNb; fCdelete++;}
135  if ( fLayoutStexNbBut != 0 ) {delete fLayoutStexNbBut; fCdelete++;}
136  //------------------- subframe NbSampForCalc
137  if ( fNbSampForCalcFrame != 0 ) {delete fNbSampForCalcFrame; fCdelete++;}
138  if ( fNbSampForCalcBut != 0 ) {delete fNbSampForCalcBut; fCdelete++;}
139  if ( fLayoutNbSampForCalcBut != 0 ) {delete fLayoutNbSampForCalcBut; fCdelete++;}
140  if ( fEntryNbSampForCalcNumber != 0 ) {delete fEntryNbSampForCalcNumber; fCdelete++;}
141  if ( fNbSampForCalcText != 0 ) {fNbSampForCalcText->Delete(); fCdelete++;}
142  if ( fLayoutNbSampForCalcFieldText != 0 ) {delete fLayoutNbSampForCalcFieldText; fCdelete++;}
143  if ( fLayoutNbSampForCalcFieldFrame != 0 ) {delete fLayoutNbSampForCalcFieldFrame; fCdelete++;}
144  //................................ Menus for CALCULATIONS
145  if ( fMenuComput != 0 ) {delete fMenuComput; fCdelete++;}
146  if ( fMenuBarComput != 0 ) {fMenuBarComput->Delete(); fCdelete++;}
147 
148  //+++++++++++++++++++++++++++++++++++++++++++ Frame for quantities relative to the Stex
149  if ( fStexUpFrame != 0 ) {delete fStexUpFrame; fCdelete++;}
150 
151  //................................ Menus+Ymin+Ymax for the Stex ............................
152 
153  //...................................... Nb of evts in the data
154 
155  if ( fVmmD_NOE_ChNbFrame != 0 ) {delete fVmmD_NOE_ChNbFrame; fCdelete++;}
156 
157  if ( fVmaxD_NOE_ChNbFrame != 0 ) {delete fVmaxD_NOE_ChNbFrame; fCdelete++;}
158  if ( fVmaxD_NOE_ChNbBut != 0 ) {delete fVmaxD_NOE_ChNbBut; fCdelete++;}
159  if ( fLayoutVmaxD_NOE_ChNbBut != 0 ) {delete fLayoutVmaxD_NOE_ChNbBut; fCdelete++;}
160  if ( fEntryVmaxD_NOE_ChNbNumber != 0 ) {delete fEntryVmaxD_NOE_ChNbNumber; fCdelete++;}
161  if ( fVmaxD_NOE_ChNbText != 0 ) {fVmaxD_NOE_ChNbText->Delete(); fCdelete++;}
162  if ( fLayoutVmaxD_NOE_ChNbFieldText != 0 ) {delete fLayoutVmaxD_NOE_ChNbFieldText; fCdelete++;}
163  if ( fLayoutVmaxD_NOE_ChNbFrame != 0 ) {delete fLayoutVmaxD_NOE_ChNbFrame; fCdelete++;}
164 
165  if ( fVminD_NOE_ChNbFrame != 0 ) {delete fVminD_NOE_ChNbFrame; fCdelete++;}
166  if ( fVminD_NOE_ChNbBut != 0 ) {delete fVminD_NOE_ChNbBut; fCdelete++;}
167  if ( fLayoutVminD_NOE_ChNbBut != 0 ) {delete fLayoutVminD_NOE_ChNbBut; fCdelete++;}
168  if ( fEntryVminD_NOE_ChNbNumber != 0 ) {delete fEntryVminD_NOE_ChNbNumber; fCdelete++;}
169  if ( fVminD_NOE_ChNbText != 0 ) {fVminD_NOE_ChNbText->Delete(); fCdelete++;}
170  if ( fLayoutVminD_NOE_ChNbFieldText != 0 ) {delete fLayoutVminD_NOE_ChNbFieldText; fCdelete++;}
171  if ( fLayoutVminD_NOE_ChNbFrame != 0 ) {delete fLayoutVminD_NOE_ChNbFrame; fCdelete++;}
172 
173  if ( fMenuD_NOE_ChNb != 0 ) {delete fMenuD_NOE_ChNb; fCdelete++;}
174  if ( fMenuBarD_NOE_ChNb != 0 ) {fMenuBarD_NOE_ChNb->Delete(); fCdelete++;}
175  if ( fVminD_NOE_ChNbText != 0 ) {fVminD_NOE_ChNbText->Delete(); fCdelete++;}
176 
177  if ( fLayoutVmmD_NOE_ChNbFrame != 0 ) {delete fLayoutVmmD_NOE_ChNbFrame; fCdelete++;}
178 
179  //---------------------------------------------------
180  if ( fVmmD_Ped_ChNbFrame != 0 ) {delete fVmmD_Ped_ChNbFrame; fCdelete++;}
181 
182  if ( fVmaxD_Ped_ChNbFrame != 0 ) {delete fVmaxD_Ped_ChNbFrame; fCdelete++;}
183  if ( fVmaxD_Ped_ChNbBut != 0 ) {delete fVmaxD_Ped_ChNbBut; fCdelete++;}
184  if ( fLayoutVmaxD_Ped_ChNbBut != 0 ) {delete fLayoutVmaxD_Ped_ChNbBut; fCdelete++;}
185  if ( fVmaxD_Ped_ChNbText != 0 ) {fVmaxD_Ped_ChNbText->Delete(); fCdelete++;}
186  if ( fEntryVmaxD_Ped_ChNbNumber != 0 ) {delete fEntryVmaxD_Ped_ChNbNumber; fCdelete++;}
187  if ( fLayoutVmaxD_Ped_ChNbFieldText != 0 ) {delete fLayoutVmaxD_Ped_ChNbFieldText; fCdelete++;}
188  if ( fLayoutVmaxD_Ped_ChNbFrame != 0 ) {delete fLayoutVmaxD_Ped_ChNbFrame; fCdelete++;}
189 
190  if ( fVminD_Ped_ChNbFrame != 0 ) {delete fVminD_Ped_ChNbFrame; fCdelete++;}
191  if ( fVminD_Ped_ChNbBut != 0 ) {delete fVminD_Ped_ChNbBut; fCdelete++;}
192  if ( fLayoutVminD_Ped_ChNbBut != 0 ) {delete fLayoutVminD_Ped_ChNbBut; fCdelete++;}
193  if ( fVminD_Ped_ChNbText != 0 ) {fVminD_Ped_ChNbText->Delete(); fCdelete++;}
194  if ( fEntryVminD_Ped_ChNbNumber != 0 ) {delete fEntryVminD_Ped_ChNbNumber; fCdelete++;}
195  if ( fLayoutVminD_Ped_ChNbFieldText != 0 ) {delete fLayoutVminD_Ped_ChNbFieldText; fCdelete++;}
196  if ( fLayoutVminD_Ped_ChNbFrame != 0 ) {delete fLayoutVminD_Ped_ChNbFrame; fCdelete++;}
197 
198  if ( fMenuD_Ped_ChNb != 0 ) {delete fMenuD_Ped_ChNb; fCdelete++;}
199  if ( fMenuBarD_Ped_ChNb != 0 ) {fMenuBarD_Ped_ChNb->Delete(); fCdelete++;}
200  if ( fLayoutMenuBarD_Ped_ChNb != 0 ) {delete fLayoutMenuBarD_Ped_ChNb; fCdelete++;}
201 
202  if ( fLayoutVmmD_Ped_ChNbFrame != 0 ) {delete fLayoutVmmD_Ped_ChNbFrame; fCdelete++;}
203 
204  //----------------------------------------------------
205  if ( fVmmD_TNo_ChNbFrame != 0 ) {delete fVmmD_TNo_ChNbFrame; fCdelete++;}
206 
207  if ( fVmaxD_TNo_ChNbFrame != 0 ) {delete fVmaxD_TNo_ChNbFrame; fCdelete++;}
208  if ( fVmaxD_TNo_ChNbBut != 0 ) {delete fVmaxD_TNo_ChNbBut; fCdelete++;}
209  if ( fLayoutVmaxD_TNo_ChNbBut != 0 ) {delete fLayoutVmaxD_TNo_ChNbBut; fCdelete++;}
210  if ( fVmaxD_TNo_ChNbText != 0 ) {fVmaxD_TNo_ChNbText->Delete(); fCdelete++;}
211  if ( fEntryVmaxD_TNo_ChNbNumber != 0 ) {delete fEntryVmaxD_TNo_ChNbNumber; fCdelete++;}
212  if ( fLayoutVmaxD_TNo_ChNbFieldText != 0 ) {delete fLayoutVmaxD_TNo_ChNbFieldText; fCdelete++;}
213  if ( fLayoutVmaxD_TNo_ChNbFrame != 0 ) {delete fLayoutVmaxD_TNo_ChNbFrame; fCdelete++;}
214 
215  if ( fVminD_TNo_ChNbFrame != 0 ) {delete fVminD_TNo_ChNbFrame; fCdelete++;}
216  if ( fVminD_TNo_ChNbBut != 0 ) {delete fVminD_TNo_ChNbBut; fCdelete++;}
217  if ( fLayoutVminD_TNo_ChNbBut != 0 ) {delete fLayoutVminD_TNo_ChNbBut; fCdelete++;}
218  if ( fVminD_TNo_ChNbText != 0 ) {fVminD_TNo_ChNbText->Delete(); fCdelete++;}
219  if ( fEntryVminD_TNo_ChNbNumber != 0 ) {delete fEntryVminD_TNo_ChNbNumber; fCdelete++;}
220  if ( fLayoutVminD_TNo_ChNbFieldText != 0 ) {delete fLayoutVminD_TNo_ChNbFieldText; fCdelete++;}
221  if ( fLayoutVminD_TNo_ChNbFrame != 0 ) {delete fLayoutVminD_TNo_ChNbFrame; fCdelete++;}
222 
223  if ( fMenuD_TNo_ChNb != 0 ) {delete fMenuD_TNo_ChNb; fCdelete++;}
224  if ( fMenuBarD_TNo_ChNb != 0 ) {fMenuBarD_TNo_ChNb->Delete(); fCdelete++;}
225  if ( fLayoutMenuBarD_TNo_ChNb != 0 ) {delete fLayoutMenuBarD_TNo_ChNb; fCdelete++;}
226 
227  if ( fLayoutVmmD_TNo_ChNbFrame != 0 ) {delete fLayoutVmmD_TNo_ChNbFrame; fCdelete++;}
228 
229  //-----------------------------------------------------------
230  if ( fVmmD_MCs_ChNbFrame != 0 ) {delete fVmmD_MCs_ChNbFrame; fCdelete++;}
231 
232  if ( fVmaxD_MCs_ChNbFrame != 0 ) {delete fVmaxD_MCs_ChNbFrame; fCdelete++;}
233  if ( fVmaxD_MCs_ChNbBut != 0 ) {delete fVmaxD_MCs_ChNbBut; fCdelete++;}
234  if ( fLayoutVmaxD_MCs_ChNbBut != 0 ) {delete fLayoutVmaxD_MCs_ChNbBut; fCdelete++;}
235  if ( fVmaxD_MCs_ChNbText != 0 ) {fVmaxD_MCs_ChNbText->Delete(); fCdelete++;}
236  if ( fEntryVmaxD_MCs_ChNbNumber != 0 ) {delete fEntryVmaxD_MCs_ChNbNumber; fCdelete++;}
237  if ( fLayoutVmaxD_MCs_ChNbFieldText != 0 ) {delete fLayoutVmaxD_MCs_ChNbFieldText; fCdelete++;}
238  if ( fLayoutVmaxD_MCs_ChNbFrame != 0 ) {delete fLayoutVmaxD_MCs_ChNbFrame; fCdelete++;}
239 
240  if ( fVminD_MCs_ChNbFrame != 0 ) {delete fVminD_MCs_ChNbFrame; fCdelete++;}
241  if ( fVminD_MCs_ChNbBut != 0 ) {delete fVminD_MCs_ChNbBut; fCdelete++;}
242  if ( fLayoutVminD_MCs_ChNbBut != 0 ) {delete fLayoutVminD_MCs_ChNbBut; fCdelete++;}
243  if ( fVminD_MCs_ChNbText != 0 ) {fVminD_MCs_ChNbText->Delete(); fCdelete++;}
244  if ( fEntryVminD_MCs_ChNbNumber != 0 ) {delete fEntryVminD_MCs_ChNbNumber; fCdelete++;}
245  if ( fLayoutVminD_MCs_ChNbFieldText != 0 ) {delete fLayoutVminD_MCs_ChNbFieldText; fCdelete++;}
246  if ( fLayoutVminD_MCs_ChNbFrame != 0 ) {delete fLayoutVminD_MCs_ChNbFrame; fCdelete++;}
247 
248  if ( fMenuD_MCs_ChNb != 0 ) {delete fMenuD_MCs_ChNb; fCdelete++;}
249  if ( fMenuBarD_MCs_ChNb != 0 ) {fMenuBarD_MCs_ChNb->Delete(); fCdelete++;}
250  if ( fLayoutMenuBarD_MCs_ChNb != 0 ) {delete fLayoutMenuBarD_MCs_ChNb; fCdelete++;}
251 
252  if ( fLayoutVmmD_MCs_ChNbFrame != 0 ) {delete fLayoutVmmD_MCs_ChNbFrame; fCdelete++;}
253 
254  //............................................... Frame Sig + Menus Sig
255  if ( fStexHozFrame != 0 ) {delete fStexHozFrame; fCdelete++;}
256 
257  //-------------------------------------------------------------
258  if ( fVmmD_LFN_ChNbFrame != 0 ) {delete fVmmD_LFN_ChNbFrame; fCdelete++;}
259 
260  if ( fVmaxD_LFN_ChNbFrame != 0 ) {delete fVmaxD_LFN_ChNbFrame; fCdelete++;}
261  if ( fVmaxD_LFN_ChNbBut != 0 ) {delete fVmaxD_LFN_ChNbBut; fCdelete++;}
262  if ( fLayoutVmaxD_LFN_ChNbBut != 0 ) {delete fLayoutVmaxD_LFN_ChNbBut; fCdelete++;}
263  if ( fVmaxD_LFN_ChNbText != 0 ) {fVmaxD_LFN_ChNbText->Delete(); fCdelete++;}
264  if ( fEntryVmaxD_LFN_ChNbNumber != 0 ) {delete fEntryVmaxD_LFN_ChNbNumber; fCdelete++;}
265  if ( fLayoutVmaxD_LFN_ChNbFieldText != 0 ) {delete fLayoutVmaxD_LFN_ChNbFieldText; fCdelete++;}
266  if ( fLayoutVmaxD_LFN_ChNbFrame != 0 ) {delete fLayoutVmaxD_LFN_ChNbFrame; fCdelete++;}
267 
268  if ( fVminD_LFN_ChNbFrame != 0 ) {delete fVminD_LFN_ChNbFrame; fCdelete++;}
269  if ( fVminD_LFN_ChNbBut != 0 ) {delete fVminD_LFN_ChNbBut; fCdelete++;}
270  if ( fLayoutVminD_LFN_ChNbBut != 0 ) {delete fLayoutVminD_LFN_ChNbBut; fCdelete++;}
271  if ( fVminD_LFN_ChNbText != 0 ) {fVminD_LFN_ChNbText->Delete(); fCdelete++;}
272  if ( fEntryVminD_LFN_ChNbNumber != 0 ) {delete fEntryVminD_LFN_ChNbNumber; fCdelete++;}
273  if ( fLayoutVminD_LFN_ChNbFieldText != 0 ) {delete fLayoutVminD_LFN_ChNbFieldText; fCdelete++;}
274  if ( fLayoutVminD_LFN_ChNbFrame != 0 ) {delete fLayoutVminD_LFN_ChNbFrame; fCdelete++;}
275 
276  if ( fMenuD_LFN_ChNb != 0 ) {delete fMenuD_LFN_ChNb; fCdelete++;}
277  if ( fMenuBarD_LFN_ChNb != 0 ) {fMenuBarD_LFN_ChNb->Delete(); fCdelete++;}
278  if ( fLayoutMenuBarD_LFN_ChNb != 0 ) {delete fLayoutMenuBarD_LFN_ChNb; fCdelete++;}
279 
280  if ( fLayoutVmmD_LFN_ChNbFrame != 0 ) {delete fLayoutVmmD_LFN_ChNbFrame; fCdelete++;}
281 
282  //-------------------------------------------------------------
283  if ( fVmmD_HFN_ChNbFrame != 0 ) {delete fVmmD_HFN_ChNbFrame; fCdelete++;}
284 
285  if ( fVmaxD_HFN_ChNbFrame != 0 ) {delete fVmaxD_HFN_ChNbFrame; fCdelete++;}
286  if ( fVmaxD_HFN_ChNbBut != 0 ) {delete fVmaxD_HFN_ChNbBut; fCdelete++;}
287  if ( fLayoutVmaxD_HFN_ChNbBut != 0 ) {delete fLayoutVmaxD_HFN_ChNbBut; fCdelete++;}
288  if ( fVmaxD_HFN_ChNbText != 0 ) {fVmaxD_HFN_ChNbText->Delete(); fCdelete++;}
289  if ( fEntryVmaxD_HFN_ChNbNumber != 0 ) {delete fEntryVmaxD_HFN_ChNbNumber; fCdelete++;}
290  if ( fLayoutVmaxD_HFN_ChNbFieldText != 0 ) {delete fLayoutVmaxD_HFN_ChNbFieldText; fCdelete++;}
291  if ( fLayoutVmaxD_HFN_ChNbFrame != 0 ) {delete fLayoutVmaxD_HFN_ChNbFrame; fCdelete++;}
292 
293  if ( fVminD_HFN_ChNbFrame != 0 ) {delete fVminD_HFN_ChNbFrame; fCdelete++;}
294  if ( fVminD_HFN_ChNbBut != 0 ) {delete fVminD_HFN_ChNbBut; fCdelete++;}
295  if ( fLayoutVminD_HFN_ChNbBut != 0 ) {delete fLayoutVminD_HFN_ChNbBut; fCdelete++;}
296  if ( fVminD_HFN_ChNbText != 0 ) {fVminD_HFN_ChNbText->Delete(); fCdelete++;}
297  if ( fEntryVminD_HFN_ChNbNumber != 0 ) {delete fEntryVminD_HFN_ChNbNumber; fCdelete++;}
298  if ( fLayoutVminD_HFN_ChNbFieldText != 0 ) {delete fLayoutVminD_HFN_ChNbFieldText; fCdelete++;}
299  if ( fLayoutVminD_HFN_ChNbFrame != 0 ) {delete fLayoutVminD_HFN_ChNbFrame; fCdelete++;}
300 
301  if ( fMenuD_HFN_ChNb != 0 ) {delete fMenuD_HFN_ChNb; fCdelete++;}
302  if ( fMenuBarD_HFN_ChNb != 0 ) {fMenuBarD_HFN_ChNb->Delete(); fCdelete++;}
303  if ( fLayoutMenuBarD_HFN_ChNb != 0 ) {delete fLayoutMenuBarD_HFN_ChNb; fCdelete++;}
304 
305  if ( fLayoutVmmD_HFN_ChNbFrame != 0 ) {delete fLayoutVmmD_HFN_ChNbFrame; fCdelete++;}
306 
307  //-------------------------------------------------------------
308  if ( fVmmD_SCs_ChNbFrame != 0 ) {delete fVmmD_SCs_ChNbFrame; fCdelete++;}
309 
310  if ( fVmaxD_SCs_ChNbFrame != 0 ) {delete fVmaxD_SCs_ChNbFrame; fCdelete++;}
311  if ( fVmaxD_SCs_ChNbBut != 0 ) {delete fVmaxD_SCs_ChNbBut; fCdelete++;}
312  if ( fLayoutVmaxD_SCs_ChNbBut != 0 ) {delete fLayoutVmaxD_SCs_ChNbBut; fCdelete++;}
313  if ( fVmaxD_SCs_ChNbText != 0 ) {fVmaxD_SCs_ChNbText->Delete(); fCdelete++;}
314  if ( fEntryVmaxD_SCs_ChNbNumber != 0 ) {delete fEntryVmaxD_SCs_ChNbNumber; fCdelete++;}
315  if ( fLayoutVmaxD_SCs_ChNbFieldText != 0 ) {delete fLayoutVmaxD_SCs_ChNbFieldText; fCdelete++;}
316  if ( fLayoutVmaxD_SCs_ChNbFrame != 0 ) {delete fLayoutVmaxD_SCs_ChNbFrame; fCdelete++;}
317 
318  if ( fVminD_SCs_ChNbFrame != 0 ) {delete fVminD_SCs_ChNbFrame; fCdelete++;}
319  if ( fVminD_SCs_ChNbBut != 0 ) {delete fVminD_SCs_ChNbBut; fCdelete++;}
320  if ( fLayoutVminD_SCs_ChNbBut != 0 ) {delete fLayoutVminD_SCs_ChNbBut; fCdelete++;}
321  if ( fVminD_SCs_ChNbText != 0 ) {fVminD_SCs_ChNbText->Delete(); fCdelete++;}
322  if ( fEntryVminD_SCs_ChNbNumber != 0 ) {delete fEntryVminD_SCs_ChNbNumber; fCdelete++;}
323  if ( fLayoutVminD_SCs_ChNbFieldText != 0 ) {delete fLayoutVminD_SCs_ChNbFieldText; fCdelete++;}
324  if ( fLayoutVminD_SCs_ChNbFrame != 0 ) {delete fLayoutVminD_SCs_ChNbFrame; fCdelete++;}
325 
326  if ( fMenuD_SCs_ChNb != 0 ) {delete fMenuD_SCs_ChNb; fCdelete++;}
327  if ( fMenuBarD_SCs_ChNb != 0 ) {fMenuBarD_SCs_ChNb->Delete(); fCdelete++;}
328  if ( fLayoutMenuBarD_SCs_ChNb != 0 ) {delete fLayoutMenuBarD_SCs_ChNb; fCdelete++;}
329 
330  if ( fLayoutVmmD_SCs_ChNbFrame != 0 ) {delete fLayoutVmmD_SCs_ChNbFrame; fCdelete++;}
331  //-------------------------------------------------------------
332  if ( fLayoutStexHozFrame != 0 ) {delete fLayoutStexHozFrame; fCdelete++;}
333 
334  //----------------------------------------------------------------------------------------------
335 
336  //...................................... Covariances between Stins
337  if ( fVmmLHFccFrame != 0 ) {delete fVmmLHFccFrame; fCdelete++;}
338 
339  if ( fVmaxLHFccFrame != 0 ) {delete fVmaxLHFccFrame; fCdelete++;}
340  if ( fVmaxLHFccBut != 0 ) {delete fVmaxLHFccBut; fCdelete++;}
341  if ( fLayoutVmaxLHFccBut != 0 ) {delete fLayoutVmaxLHFccBut; fCdelete++;}
342  if ( fVmaxLHFccText != 0 ) {fVmaxLHFccText->Delete(); fCdelete++;}
343  if ( fEntryVmaxLHFccNumber != 0 ) {delete fEntryVmaxLHFccNumber; fCdelete++;}
344  if ( fLayoutVmaxLHFccFieldText != 0 ) {delete fLayoutVmaxLHFccFieldText; fCdelete++;}
345  if ( fLayoutVmaxLHFccFrame != 0 ) {delete fLayoutVmaxLHFccFrame; fCdelete++;}
346 
347  if ( fVminLHFccFrame != 0 ) {delete fVminLHFccFrame; fCdelete++;}
348  if ( fVminLHFccBut != 0 ) {delete fVminLHFccBut; fCdelete++;}
349  if ( fLayoutVminLHFccBut != 0 ) {delete fLayoutVminLHFccBut; fCdelete++;}
350  if ( fVminLHFccText != 0 ) {fVminLHFccText->Delete(); fCdelete++;}
351  if ( fEntryVminLHFccNumber != 0 ) {delete fEntryVminLHFccNumber; fCdelete++;}
352  if ( fLayoutVminLHFccFieldText != 0 ) {delete fLayoutVminLHFccFieldText; fCdelete++;}
353  if ( fLayoutVminLHFccFrame != 0 ) {delete fLayoutVminLHFccFrame; fCdelete++;}
354 
355  if ( fMenuLHFcc != 0 ) {delete fMenuLHFcc; fCdelete++;}
356  if ( fMenuBarLHFcc != 0 ) {fMenuBarLHFcc->Delete(); fCdelete++;}
357  if ( fLayoutMenuBarLHFcc != 0 ) {delete fLayoutMenuBarLHFcc; fCdelete++;}
358 
359  if ( fLayoutVmmLHFccFrame != 0 ) {delete fLayoutVmmLHFccFrame; fCdelete++;}
360 
361  //...................................... Low Freq Cor(c,c') for each pair of Stins
362  if ( fVmmLFccMosFrame != 0 ) {delete fVmmLFccMosFrame; fCdelete++;}
363 
364  if ( fVmaxLFccMosFrame != 0 ) {delete fVmaxLFccMosFrame; fCdelete++;}
365  if ( fVmaxLFccMosBut != 0 ) {delete fVmaxLFccMosBut; fCdelete++;}
366  if ( fLayoutVmaxLFccMosBut != 0 ) {delete fLayoutVmaxLFccMosBut; fCdelete++;}
367  if ( fVmaxLFccMosText != 0 ) {fVmaxLFccMosText->Delete(); fCdelete++;}
368  if ( fEntryVmaxLFccMosNumber != 0 ) {delete fEntryVmaxLFccMosNumber; fCdelete++;}
369  if ( fLayoutVmaxLFccMosFieldText != 0 ) {delete fLayoutVmaxLFccMosFieldText; fCdelete++;}
370  if ( fLayoutVmaxLFccMosFrame != 0 ) {delete fLayoutVmaxLFccMosFrame; fCdelete++;}
371 
372  if ( fVminLFccMosFrame != 0 ) {delete fVminLFccMosFrame; fCdelete++;}
373  if ( fVminLFccMosBut != 0 ) {delete fVminLFccMosBut; fCdelete++;}
374  if ( fLayoutVminLFccMosBut != 0 ) {delete fLayoutVminLFccMosBut; fCdelete++;}
375  if ( fVminLFccMosText != 0 ) {fVminLFccMosText->Delete(); fCdelete++;}
376  if ( fEntryVminLFccMosNumber != 0 ) {delete fEntryVminLFccMosNumber; fCdelete++;}
377  if ( fLayoutVminLFccMosFieldText != 0 ) {delete fLayoutVminLFccMosFieldText; fCdelete++;}
378  if ( fLayoutVminLFccMosFrame != 0 ) {delete fLayoutVminLFccMosFrame; fCdelete++;}
379 
380  if ( fMenuLFccMos != 0 ) {delete fMenuLFccMos; fCdelete++;}
381  if ( fMenuBarLFccMos != 0 ) {fMenuBarLFccMos->Delete(); fCdelete++;}
382  if ( fLayoutMenuBarLFccMos != 0 ) {delete fLayoutMenuBarLFccMos; fCdelete++;}
383 
384  if ( fLayoutVmmLFccMosFrame != 0 ) {delete fLayoutVmmLFccMosFrame; fCdelete++;}
385 
386  //...................................... High Freq Cor(c,c') for each pair of Stins
387  if ( fVmmHFccMosFrame != 0 ) {delete fVmmHFccMosFrame; fCdelete++;}
388 
389  if ( fVmaxHFccMosFrame != 0 ) {delete fVmaxHFccMosFrame; fCdelete++;}
390  if ( fVmaxHFccMosBut != 0 ) {delete fVmaxHFccMosBut; fCdelete++;}
391  if ( fLayoutVmaxHFccMosBut != 0 ) {delete fLayoutVmaxHFccMosBut; fCdelete++;}
392  if ( fVmaxHFccMosText != 0 ) {fVmaxHFccMosText->Delete(); fCdelete++;}
393  if ( fEntryVmaxHFccMosNumber != 0 ) {delete fEntryVmaxHFccMosNumber; fCdelete++;}
394  if ( fLayoutVmaxHFccMosFieldText != 0 ) {delete fLayoutVmaxHFccMosFieldText; fCdelete++;}
395  if ( fLayoutVmaxHFccMosFrame != 0 ) {delete fLayoutVmaxHFccMosFrame; fCdelete++;}
396 
397  if ( fVminHFccMosFrame != 0 ) {delete fVminHFccMosFrame; fCdelete++;}
398  if ( fVminHFccMosBut != 0 ) {delete fVminHFccMosBut; fCdelete++;}
399  if ( fLayoutVminHFccMosBut != 0 ) {delete fLayoutVminHFccMosBut; fCdelete++;}
400  if ( fVminHFccMosText != 0 ) {fVminHFccMosText->Delete(); fCdelete++;}
401  if ( fEntryVminHFccMosNumber != 0 ) {delete fEntryVminHFccMosNumber; fCdelete++;}
402  if ( fLayoutVminHFccMosFieldText != 0 ) {delete fLayoutVminHFccMosFieldText; fCdelete++;}
403  if ( fLayoutVminHFccMosFrame != 0 ) {delete fLayoutVminHFccMosFrame; fCdelete++;}
404 
405  if ( fMenuHFccMos != 0 ) {delete fMenuHFccMos; fCdelete++;}
406  if ( fMenuBarHFccMos != 0 ) {fMenuBarHFccMos->Delete(); fCdelete++;}
407  if ( fLayoutMenuBarHFccMos != 0 ) {delete fLayoutMenuBarHFccMos; fCdelete++;}
408 
409  if ( fLayoutVmmHFccMosFrame != 0 ) {delete fLayoutVmmHFccMosFrame; fCdelete++;}
410 
411  if ( fLayoutStexUpFrame != 0 ) {delete fLayoutStexUpFrame; fCdelete++;}
412 
413  //+++++++++++++++++++++++++++++++++++++++++ Horizontal frame Stin_A + Stin_B
414  if ( fStinSpFrame != 0 ) {delete fStinSpFrame; fCdelete++;}
415 
416  //----------------------------------- SubFrame Stin_A (Button + EntryField)
417  if ( fTxSubFrame != 0 ) {delete fTxSubFrame; fCdelete++;}
418 
419  if ( fStinAFrame != 0 ) {delete fStinAFrame; fCdelete++;}
420  if ( fStinABut != 0 ) {delete fStinABut; fCdelete++;}
421  if ( fLayoutStinABut != 0 ) {delete fLayoutStinABut; fCdelete++;}
422  if ( fEntryStinANumber != 0 ) {delete fEntryStinANumber; fCdelete++;}
423  if ( fStinAText != 0 ) {fStinAText->Delete(); fCdelete++;}
424  if ( fLayoutStinAField != 0 ) {delete fLayoutStinAField; fCdelete++;}
425 
426  //............................ Stin Crystal Numbering view (Button)
427  if ( fButChNb != 0 ) {delete fButChNb; fCdelete++;}
428  if ( fLayoutChNbBut != 0 ) {delete fLayoutChNbBut; fCdelete++;}
429 
430  //............................ Menus Stin_A
431  if ( fMenuCorssAll != 0 ) {delete fMenuCorssAll; fCdelete++;}
432  if ( fMenuBarCorssAll != 0 ) {fMenuBarCorssAll->Delete(); fCdelete++;}
433 
434  //if ( fMenuCovssAll != 0 ) {delete fMenuCovssAll; fCdelete++;}
435  //if ( fMenuBarCovssAll != 0 ) {fMenuBarCovssAll->Delete(); fCdelete++;}
436 
437  if ( fLayoutTxSubFrame != 0 ) {delete fLayoutTxSubFrame; fCdelete++;}
438 
439  //----------------------------------- SubFrame Stin_B (Button + EntryField)
440 
441  if ( fTySubFrame != 0 ) {delete fTySubFrame; fCdelete++;}
442 
443  if ( fStinBFrame != 0 ) {delete fStinBFrame; fCdelete++;}
444  if ( fStinBBut != 0 ) {delete fStinBBut; fCdelete++;}
445  if ( fLayoutStinBBut != 0 ) {delete fLayoutStinBBut; fCdelete++;}
446  if ( fEntryStinBNumber != 0 ) {delete fEntryStinBNumber; fCdelete++;}
447  if ( fStinBText != 0 ) {fStinBText->Delete(); fCdelete++;}
448  if ( fLayoutStinBField != 0 ) {delete fLayoutStinBField; fCdelete++;}
449 
450  if ( fLayoutTySubFrame != 0 ) {delete fLayoutTySubFrame; fCdelete++;}
451 
452  if ( fLayoutStinSpFrame != 0 ) {delete fLayoutStinSpFrame; fCdelete++;}
453 
454  //.................................. Menus for Horizontal frame (Stin_A + Stin_B)
455 
456  if ( fMenuLFCorcc != 0 ) {delete fMenuLFCorcc; fCdelete++;}
457  if ( fMenuBarLFCorcc != 0 ) {fMenuBarLFCorcc->Delete(); fCdelete++;}
458 
459  if ( fMenuHFCorcc != 0 ) {delete fMenuHFCorcc; fCdelete++;}
460  if ( fMenuBarHFCorcc != 0 ) {fMenuBarHFCorcc->Delete(); fCdelete++;}
461 
462  //++++++++++++++++++++++++ Horizontal frame channel number (Stin_A crystal number) + sample number
463  if ( fChSpFrame != 0 ) {delete fChSpFrame; fCdelete++;}
464 
465  //------------------------------------- SubFrame Channel (Button + EntryField)
466 
467  if ( fChSubFrame != 0 ) {delete fChSubFrame; fCdelete++;}
468 
469  if ( fChanFrame != 0 ) {delete fChanFrame; fCdelete++;}
470  if ( fChanBut != 0 ) {delete fChanBut; fCdelete++;}
471  if ( fLayoutChanBut != 0 ) {delete fLayoutChanBut; fCdelete++;}
472  if ( fEntryChanNumber != 0 ) {delete fEntryChanNumber; fCdelete++;}
473  if ( fChanText != 0 ) {fChanText->Delete(); fCdelete++;}
474  if ( fLayoutChanField != 0 ) {delete fLayoutChanField; fCdelete++;}
475 
476  //................................ Menus Stin_A crystal number
477  if ( fMenuCorss != 0 ) {delete fMenuCorss; fCdelete++;}
478  if ( fMenuBarCorss != 0 ) {fMenuBarCorss->Delete(); fCdelete++;}
479 
480  if ( fMenuCovss != 0 ) {delete fMenuCovss; fCdelete++;}
481  if ( fMenuBarCovss != 0 ) {fMenuBarCovss->Delete(); fCdelete++;}
482 
483  if ( fMenuD_MSp_SpNb != 0 ) {delete fMenuD_MSp_SpNb; fCdelete++;}
484  if ( fMenuBarD_MSp_SpNb != 0 ) {fMenuBarD_MSp_SpNb->Delete(); fCdelete++;}
485  if ( fMenuD_MSp_SpDs != 0 ) {delete fMenuD_MSp_SpDs; fCdelete++;}
486  if ( fMenuBarD_MSp_SpDs != 0 ) {fMenuBarD_MSp_SpDs->Delete(); fCdelete++;}
487 
488  if ( fMenuD_SSp_SpNb != 0 ) {delete fMenuD_SSp_SpNb; fCdelete++;}
489  if ( fMenuBarD_SSp_SpNb != 0 ) {fMenuBarD_SSp_SpNb->Delete(); fCdelete++;}
490  if ( fMenuD_SSp_SpDs != 0 ) {delete fMenuD_SSp_SpDs; fCdelete++;}
491  if ( fMenuBarD_SSp_SpDs != 0 ) {fMenuBarD_SSp_SpDs->Delete(); fCdelete++;}
492 
493  if ( fLayoutChSubFrame != 0 ) {delete fLayoutChSubFrame; fCdelete++;}
494 
495  //------------------------------------ SubFrame Sample (Button + EntryField)
496  if ( fSpSubFrame != 0 ) {delete fSpSubFrame; fCdelete++;}
497  if ( fSampFrame != 0 ) {delete fSampFrame; fCdelete++;}
498  if ( fSampBut != 0 ) {delete fSampBut; fCdelete++;}
499  if ( fLayoutSampBut != 0 ) {delete fLayoutSampBut; fCdelete++;}
500  if ( fEntrySampNumber != 0 ) {delete fEntrySampNumber; fCdelete++;}
501  if ( fSampText != 0 ) {fSampText->Delete(); fCdelete++;}
502  if ( fLayoutSampField != 0 ) {delete fLayoutSampField; fCdelete++;}
503  if ( fLayoutSpSubFrame != 0 ) {delete fLayoutSpSubFrame; fCdelete++;}
504 
505  //................................ Menus Sample number
506 
507  // (no menu in this SubFrame)
508 
509  if ( fLayoutChSpFrame != 0 ) {delete fLayoutChSpFrame; fCdelete++;}
510 
511  //++++++++++++++++++++++++++++++++++++ Menu Event Distribution
512  if ( fMenuAdcProj != 0 ) {delete fMenuAdcProj; fCdelete++;}
513  if ( fMenuBarAdcProj != 0 ) {fMenuBarAdcProj->Delete(); fCdelete++;}
514  if ( fLayoutMenuBarAdcProj != 0 ) {delete fLayoutMenuBarAdcProj; fCdelete++;}
515 
516  //++++++++++++++++++++++++++++++++++++ Frame: Run List (Rul) (Button + EntryField)
517  if ( fRulFrame != 0 ) {delete fRulFrame; fCdelete++;}
518  if ( fRulBut != 0 ) {delete fRulBut; fCdelete++;}
519  if ( fLayoutRulBut != 0 ) {delete fLayoutRulBut; fCdelete++;}
520  if ( fEntryRulNumber != 0 ) {delete fEntryRulNumber; fCdelete++;}
521  if ( fRulText != 0 ) {fRulText->Delete(); fCdelete++;}
522  if ( fLayoutRulFieldText != 0 ) {delete fLayoutRulFieldText; fCdelete++;}
523  if ( fLayoutRulFieldFrame != 0 ) {delete fLayoutRulFieldFrame; fCdelete++;}
524 
525  //................................ Menus for time evolution
526  if ( fMenuHistory != 0 ) {delete fMenuHistory; fCdelete++;}
527  if ( fMenuBarHistory != 0 ) {fMenuBarHistory->Delete(); fCdelete++;}
528 
529  //++++++++++++++++++++++++++++++++++++ LinLog Frame
530  if ( fLinLogFrame != 0 ) {delete fLinLogFrame; fCdelete++;}
531 
532  //---------------------------------- Lin/Log X
533  if ( fButLogx != 0 ) {delete fButLogx; fCdelete++;}
534  if ( fLayoutLogxBut != 0 ) {delete fLayoutLogxBut; fCdelete++;}
535  //---------------------------------- Lin/Log Y
536  if ( fButLogy != 0 ) {delete fButLogy; fCdelete++;}
537  if ( fLayoutLogyBut != 0 ) {delete fLayoutLogyBut; fCdelete++;}
538  //---------------------------------- Proj Y
539  if ( fButProjy != 0 ) {delete fButProjy; fCdelete++;}
540  if ( fLayoutProjyBut != 0 ) {delete fLayoutProjyBut; fCdelete++;}
541 
542  //++++++++++++++++++++++++++++++++++++ Frame: General Title (Gent) (Button + EntryField)
543  if ( fGentFrame != 0 ) {delete fGentFrame; fCdelete++;}
544  if ( fGentBut != 0 ) {delete fGentBut; fCdelete++;}
545  if ( fLayoutGentBut != 0 ) {delete fLayoutGentBut; fCdelete++;}
546  if ( fEntryGentNumber != 0 ) {delete fEntryGentNumber; fCdelete++;}
547  if ( fGentText != 0 ) {fGentText->Delete(); fCdelete++;}
548  if ( fLayoutGentFieldText != 0 ) {delete fLayoutGentFieldText; fCdelete++;}
549  if ( fLayoutGentFieldFrame != 0 ) {delete fLayoutGentFieldFrame; fCdelete++;}
550 
551  //++++++++++++++++++++++++++++++++++++ Color + EXIT BUTTON
552  if ( fColorExitFrame != 0 ) {delete fColorExitFrame; fCdelete++;}
553  if ( fLayoutColorExitFrame != 0 ) {delete fLayoutColorExitFrame; fCdelete++;}
554 
555  //---------------------------------- Color Palette
556  if ( fButColPal != 0 ) {delete fButColPal; fCdelete++;}
557  if ( fLayoutColPalBut != 0 ) {delete fLayoutColPalBut; fCdelete++;}
558  //---------------------------------- Exit
559  if ( fButExit != 0 ) {delete fButExit; fCdelete++;}
560  if ( fLayoutExitBut != 0 ) {delete fLayoutExitBut; fCdelete++;}
561 
562  //++++++++++++++++++++++++++++++++++++ Last Frame
563  if ( fLastFrame != 0 ) {delete fLastFrame; fCdelete++;}
564 
565  //--------------------------------- Clone Last Canvas (Button)
566  if ( fButClone != 0 ) {delete fButClone; fCdelete++;}
567  if ( fLayoutCloneBut != 0 ) {delete fLayoutCloneBut; fCdelete++;}
568 
569  //--------------------------------- Root version (Button)
570  if ( fButRoot != 0 ) {delete fButRoot; fCdelete++;}
571  if ( fLayoutRootBut != 0 ) {delete fLayoutRootBut; fCdelete++;}
572 
573  //--------------------------------- Help (Button)
574  if ( fButHelp != 0 ) {delete fButHelp; fCdelete++;}
575  if ( fLayoutHelpBut != 0 ) {delete fLayoutHelpBut; fCdelete++;}
576 
577  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
578 
579  if ( fCnew != fCdelete )
580  {
581  cout << "*TEcnaGui> WRONG MANAGEMENT OF ALLOCATIONS: fCnew = "
582  << fCnew << ", fCdelete = " << fCdelete << endl;
583  }
584  else
585  {
586  //cout << "*TEcnaGui> BRAVO! GOOD MANAGEMENT OF ALLOCATIONS: fCnew = "
587  // << fCnew << ", fCdelete = " << fCdelete << endl;
588  }
589 
590 #endif // DEST
591 
592 #define MGRA
593 #ifndef MGRA
594  if ( fCnewRoot != fCdeleteRoot )
595  {
596  cout << "*TEcnaGui> WRONG MANAGEMENT OF ROOT ALLOCATIONS: fCnewRoot = "
597  << fCnewRoot << ", fCdeleteRoot = " << fCdeleteRoot << endl;
598  }
599  else
600  {
601  cout << "*TEcnaGui> BRAVO! GOOD MANAGEMENT OF ROOT ALLOCATIONS:"
602  << " fCnewRoot = " << fCnewRoot <<", fCdeleteRoot = "
603  << fCdeleteRoot << endl;
604  }
605 #endif // MGRA
606 
607  // cout << "TEcnaGui> Leaving destructor" << endl;
608  // cout << " fCnew = " << fCnew << ", fCdelete = " << fCdelete << endl;
609 
610  // cout << "[Info Management] CLASS: TEcnaGui. DESTROY OBJECT: this = " << this << endl;
611 
612 }
613 // end of destructor
614 
615 //===================================================================
616 //
617 // Constructors
618 //
619 //===================================================================
620 
622 {
623  Init();
624 }
625 
626 TEcnaGui::TEcnaGui(TEcnaObject* pObjectManager, const TString SubDet, const TGWindow *p, UInt_t w, UInt_t h):
627 TGMainFrame(p, w, h)
628 {
629  // cout << "[Info Management] CLASS: TEcnaGui. CREATE OBJECT: this = " << this << endl;
630 
631  // cout << "TEcnaGui> Entering constructor with arguments" << endl;
632  // cout << " fCnew = " << fCnew << ", fCdelete = " << fCdelete << endl;
633 
634  fObjectManager = (TEcnaObject*)pObjectManager;
635  Long_t i_this = (Long_t)this;
636  pObjectManager->RegisterPointer("TEcnaGui", i_this);
637 
638  Int_t MaxCar = fgMaxCar;
639  fSubDet.Resize(MaxCar);
640  fSubDet = SubDet.Data();
641 
642  //............................ fCnaParCout
643  fCnaParCout = 0;
644  Long_t iCnaParCout = pObjectManager->GetPointerValue("TEcnaParCout");
645  if( iCnaParCout == 0 )
646  {fCnaParCout = new TEcnaParCout(pObjectManager); /*fCnew++*/}
647  else
648  {fCnaParCout = (TEcnaParCout*)iCnaParCout;}
649 
650  //fCnaParPaths = 0; fCnaParPaths = new TEcnaParPaths(); //fCnew++;
651  //fCnaParPaths->GetPaths();
652  //if( fCnaParPaths->GetPaths() == kTRUE )
653  // {
654  //fCnaParPaths->GetCMSSWParameters();
655 
656  //............................ fCnaParPaths
657  fCnaParPaths = 0;
658  Long_t iCnaParPaths = pObjectManager->GetPointerValue("TEcnaParPaths");
659  if( iCnaParPaths == 0 )
660  {fCnaParPaths = new TEcnaParPaths(pObjectManager); /*fCnew++*/}
661  else
662  {fCnaParPaths = (TEcnaParPaths*)iCnaParPaths;}
663 
666 
667  //............................ fEcal => to be changed in fParEcal
668  fEcal = 0;
669  Long_t iParEcal = pObjectManager->GetPointerValue("TEcnaParEcal");
670  if( iParEcal == 0 )
671  {fEcal = new TEcnaParEcal(pObjectManager, SubDet.Data()); /*fCnew++*/}
672  else
673  {fEcal = (TEcnaParEcal*)iParEcal;}
674 
675  //............................ fEcalNumbering
676  fEcalNumbering = 0;
677  Long_t iEcalNumbering = pObjectManager->GetPointerValue("TEcnaNumbering");
678  if( iEcalNumbering == 0 )
679  {fEcalNumbering = new TEcnaNumbering(pObjectManager, SubDet.Data()); /*fCnew++*/}
680  else
681  {fEcalNumbering = (TEcnaNumbering*)iEcalNumbering;}
682 
683  //............................ fCnaParHistos
684  fCnaParHistos = 0;
685  Long_t iCnaParHistos = pObjectManager->GetPointerValue("TEcnaParHistos");
686  if( iCnaParHistos == 0 )
687  {fCnaParHistos = new TEcnaParHistos(pObjectManager, SubDet.Data()); /*fCnew++*/}
688  else
689  {fCnaParHistos = (TEcnaParHistos*)iCnaParHistos;}
690 
691  //............................ fCnaWrite
692  fCnaWrite = 0;
693  Long_t iCnaWrite = pObjectManager->GetPointerValue("TEcnaWrite");
694  if( iCnaWrite == 0 )
695  {fCnaWrite = new TEcnaWrite(pObjectManager, SubDet.Data()); /*fCnew++*/}
696  else
697  {fCnaWrite = (TEcnaWrite*)iCnaWrite;}
698 
699  //............................ fHistos
700  //fHistos = 0;
701  //fHistos = new TEcnaHistos(fSubDet.Data(), fCnaParPaths, fCnaParCout,
702  // fEcal, fCnaParHistos, fEcalNumbering, fCnaWrite); fCnew++;
703 
704  fHistos = 0;
705  Long_t iHistos = pObjectManager->GetPointerValue("TEcnaHistos");
706  if( iHistos == 0 )
707  {fHistos = new TEcnaHistos(pObjectManager, SubDet.Data()); /*fCnew++*/}
708  else
709  {fHistos = (TEcnaHistos*)iHistos;}
710 
711  //fMyRootFile = 0;
712 
713  Init();
714 }
715 
717 {
718  //========================= GENERAL INITIALISATION
719  fCnew = 0;
720  fCdelete = 0;
721  fCnewRoot = 0;
722  fCdeleteRoot = 0;
723 
724 
725  Int_t fgMaxCar = (Int_t)512;
726  fTTBELL = '\007';
727 
728  //........................ init View and Cna parameters
729 
730  //............................................................................
731 
732  if( fSubDet == "EB" ){fStexName = "SM"; fStinName = "tower";}
733  if( fSubDet == "EE" ){fStexName = "Dee"; fStinName = "SC";}
734 
735  //................. Init Keys
736  InitKeys();
737 
738  //................ Init CNA Command and error numbering
739  fCnaCommand = 0;
740  fCnaError = 0;
741  //................ Init Confirm flags
742  fConfirmSubmit = 0;
743  fConfirmRunNumber = 0;
744  fConfirmCalcScc = 0;
745 
746  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Init GUI DIALOG BOX pointers %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
747 
748  fLayoutGeneral = 0;
749  fLayoutBottLeft = 0;
750  fLayoutBottRight = 0;
751  fLayoutTopLeft = 0;
752  fLayoutTopRight = 0;
753  fLayoutCenterYLeft = 0;
754  fLayoutCenterYRight = 0;
755 
756  fVoidFrame = 0;
757 
758  //+++++++++++++++++++++++++++++++++ Horizontal frame Analysis + 1st requested evt number + Run number
759  fAnaNorsRunFrame = 0;
761  //--------------------------------- Sub-Frame Analysis Name (Button+Entry Field)
762  fAnaFrame = 0;
763  fAnaBut = 0;
764  fLayoutAnaBut = 0;
765  fAnaText = 0;
766  fEntryAnaNumber = 0;
767  fLayoutAnaField = 0;
768  //--------------------------------- SubFrame: first requested evt number
769  fFevFrame = 0;
770  fFevBut = 0;
771  fLayoutFevBut = 0;
772  fFevText = 0;
773  fEntryFevNumber = 0;
776  //-------------------------------- Sub-Frame Run number (Button+Entry Field)
777  fRunFrame = 0;
778  fRunBut = 0;
779  fLayoutRunBut = 0;
780  fRunText = 0;
781  fEntryRunNumber = 0;
782  fLayoutRunField = 0;
783 
784  //+++++++++++++++++++++++++ Horizontal frame Nb Of Samples + Last requested evt number + Clean + submit
785  fFevLevStexFrame = 0;
787  //-------------------------------- Sub-Frame: Nb Of Requesred Samples (Button+Entry Field)
788  fNorsFrame = 0;
789  fNorsBut = 0;
790  fLayoutNorsBut = 0;
791  fNorsText = 0;
792  fEntryNorsNumber = 0;
793  fLayoutNorsField = 0;
794  //---------------------------- SubFrame: last requested event number
795  fLevFrame = 0;
796  fLevBut = 0;
797  fLayoutLevBut = 0;
798  fLevText = 0;
799  fEntryLevNumber = 0;
802  //................................ Menu for Clean
803  fMenuClean = 0;
804  fMenuBarClean = 0;
805  //................................ Menu for SUBMIT
806  fMenuSubmit = 0;
807  fMenuBarSubmit = 0;
808 
809  //+++++++++++++++++++++++++++++++++++ Horizontal frame StexStin number + Nb of Req evts
810  fCompStRqFrame = 0;
812 
813  //---------------------------- SubFrame: Stex number
814  fStexFrame = 0;
815  fStexBut = 0;
816  fLayoutStexBut = 0;
817  fStexText = 0;
818  fEntryStexNumber = 0;
821 
822  //---------------------------- SubFrame: number of requested events
823  fRevFrame = 0;
824  fRevBut = 0;
825  fLayoutRevBut = 0;
826  fRevText = 0;
827  fEntryRevNumber = 0;
830 
831  //+++++++++++++++++++++++++++++++++++ Horizontal frame StexStin numbering + Nb of samp for Calc + Calculations
832  fCompStnbFrame = 0;
834 
835  //................................ Stex Stin Numbering view (Button)
836  fButStexNb = 0;
837  fLayoutStexNbBut = 0;
838 
839  //---------------------------- SubFrame: NbSampForCalc
841  fNbSampForCalcBut = 0;
843  fNbSampForCalcText = 0;
847 
848  //................................ Menu for Calculations
849  fMenuComput = 0;
850  fMenuBarComput = 0;
851 
852  //=====================================================================================
853 
854  //+++++++++++++++++++++++++++++++++++++++++++ Frame for quantities relative to the Stex
855  fStexUpFrame = 0;
856 
857  //................................ Menus+Ymin+Ymax for the Stex ............................
858 
859  //...................................... Nb of evts in the data
861 
863  fVmaxD_NOE_ChNbBut = 0;
869 
871  fVminD_NOE_ChNbBut = 0;
877 
878  fMenuD_NOE_ChNb = 0;
879  fMenuBarD_NOE_ChNb = 0;
881 
883 
884  //-------------------------------------------------------------
886 
888  fVmaxD_Ped_ChNbBut = 0;
894 
896  fVminD_Ped_ChNbBut = 0;
902 
903  fMenuD_Ped_ChNb = 0;
904  fMenuBarD_Ped_ChNb = 0;
906 
908 
909  //-------------------------------------------------------------
911 
913  fVmaxD_TNo_ChNbBut = 0;
918 
920  fVminD_TNo_ChNbBut = 0;
926 
927  fMenuD_TNo_ChNb = 0;
928  fMenuBarD_TNo_ChNb = 0;
931 
933 
934  //-------------------------------------------------------------
936 
938  fVmaxD_MCs_ChNbBut = 0;
944 
946  fVminD_MCs_ChNbBut = 0;
952 
953  fMenuD_MCs_ChNb = 0;
954  fMenuBarD_MCs_ChNb = 0;
957 
958  //............................................... Frame Sig + Menus Sig
959  fStexHozFrame = 0;
960 
961  //-------------------------------------------------------------
963 
965  fVmaxD_LFN_ChNbBut = 0;
971 
973  fVminD_LFN_ChNbBut = 0;
979 
980  fMenuD_LFN_ChNb = 0;
981  fMenuBarD_LFN_ChNb = 0;
983 
985 
986  //-------------------------------------------------------------
988 
990  fVmaxD_HFN_ChNbBut = 0;
996 
998  fVminD_HFN_ChNbBut = 0;
1000  fVminD_HFN_ChNbText = 0;
1004 
1005  fMenuD_HFN_ChNb = 0;
1006  fMenuBarD_HFN_ChNb = 0;
1008 
1010 
1011  //-------------------------------------------------------------
1012  fVmmD_SCs_ChNbFrame = 0;
1013 
1015  fVmaxD_SCs_ChNbBut = 0;
1017  fVmaxD_SCs_ChNbText = 0;
1021 
1023  fVminD_SCs_ChNbBut = 0;
1025  fVminD_SCs_ChNbText = 0;
1029 
1030  fMenuD_SCs_ChNb = 0;
1031  fMenuBarD_SCs_ChNb = 0;
1033 
1035 
1036  //----------------------------------------------------------------------------------
1037 
1038  //...................................... Low Freq Cor(c,c') for each pair of Stins
1039  fVmmLFccMosFrame = 0;
1040 
1041  fVmaxLFccMosFrame = 0;
1042  fVmaxLFccMosBut = 0;
1044  fVmaxLFccMosText = 0;
1048 
1049  fVminLFccMosFrame = 0;
1050  fVminLFccMosBut = 0;
1052  fVminLFccMosText = 0;
1056 
1057  fMenuLFccMos = 0;
1058  fMenuBarLFccMos = 0;
1060 
1062 
1063  //...................................... High Freq Cor(c,c') for each pair of Stins
1064  fVmmHFccMosFrame = 0;
1065 
1066  fVmaxHFccMosFrame = 0;
1067  fVmaxHFccMosBut = 0;
1069  fVmaxHFccMosText = 0;
1073 
1074  fVminHFccMosFrame = 0;
1075  fVminHFccMosBut = 0;
1077  fVminHFccMosText = 0;
1081 
1082  fMenuHFccMos = 0;
1083  fMenuBarHFccMos = 0;
1085 
1087 
1088  //...................................... LF and HF Cor(c,c')
1089  fVmmLHFccFrame = 0;
1090 
1091  fVmaxLHFccFrame = 0;
1092  fVmaxLHFccBut = 0;
1093  fLayoutVmaxLHFccBut = 0;
1094  fVmaxLHFccText = 0;
1098 
1099  fVminLHFccFrame = 0;
1100  fVminLHFccBut = 0;
1101  fLayoutVminLHFccBut = 0;
1102  fVminLHFccText = 0;
1106 
1107  fMenuLHFcc = 0;
1108  fMenuBarLHFcc = 0;
1109  fLayoutMenuBarLHFcc = 0;
1110 
1112 
1113  fLayoutStexHozFrame = 0;
1114 
1115  fLayoutStexUpFrame = 0;
1116 
1117  //+++++++++++++++++++++++++++++++++++++++++ Horizontal frame Stin_A + Stin_B
1118  fStinSpFrame = 0;
1119  fLayoutStinSpFrame = 0;
1120 
1121  //----------------------------------- SubFrame Stin_A (Button + EntryField)
1122 
1123  fTxSubFrame = 0;
1124  fLayoutTxSubFrame = 0;
1125 
1126  fStinAFrame = 0;
1127  fStinABut = 0;
1128  fLayoutStinABut = 0;
1129 
1130  fStinAText = 0;
1131  fEntryStinANumber = 0;
1132  fLayoutStinAField = 0;
1133 
1134  //............................ Stin Crystal Numbering view (Button)
1135  fButChNb = 0;
1136  fLayoutChNbBut = 0;
1137 
1138  //............................ Menus Stin_A
1139  fMenuCorssAll = 0;
1140  fMenuBarCorssAll = 0;
1141 
1142  //fMenuCovssAll = 0;
1143  //fMenuBarCovssAll = 0;
1144 
1145  //----------------------------------- SubFrame Stin_B (Button + EntryField)
1146  fTySubFrame = 0;
1147  fLayoutTySubFrame = 0;
1148 
1149  fStinBFrame = 0;
1150  fStinBBut = 0;
1151  fLayoutStinBBut = 0;
1152 
1153  fStinBText = 0;
1154  fEntryStinBNumber = 0;
1155  fLayoutStinBField = 0;
1156 
1157  //.................................. Menus for Horizontal frame (Stin_A + Stin_B)
1158  fMenuBarLFCorcc = 0;
1159  fMenuLFCorcc = 0;
1160 
1161  fMenuBarHFCorcc = 0;
1162  fMenuHFCorcc = 0;
1163 
1164  //++++++++++++++++++++++++ Horizontal frame channel number (Stin_A crystal number) + sample number
1165  fChSpFrame = 0;
1166  fLayoutChSpFrame = 0;
1167 
1168  //------------------------------------- SubFrame Channel (Button + EntryField)
1169  fChanFrame = 0;
1170  fChanBut = 0;
1171  fChanText = 0;
1172  fEntryChanNumber = 0;
1173  fLayoutChanBut = 0;
1174  fLayoutChanField = 0;
1175 
1176  fChSubFrame = 0;
1177  fLayoutChSubFrame = 0;
1178 
1179  //................................ Menus Stin_A crystal number
1180  fMenuCorss = 0;
1181  fMenuBarCorss = 0;
1182 
1183  fMenuCovss = 0;
1184  fMenuBarCovss = 0;
1185 
1186  fMenuD_MSp_SpNb = 0;
1187  fMenuBarD_MSp_SpNb = 0;
1188  fMenuD_MSp_SpDs = 0;
1189  fMenuBarD_MSp_SpDs = 0;
1190 
1191  fMenuD_SSp_SpNb = 0;
1192  fMenuBarD_SSp_SpNb = 0;
1193  fMenuD_SSp_SpDs = 0;
1194  fMenuBarD_SSp_SpDs = 0;
1195 
1196  //------------------------------------ SubFrame Sample (Button + EntryField)
1197  fSampFrame = 0;
1198  fSampBut = 0;
1199 
1200  fSampText = 0;
1201  fEntrySampNumber = 0;
1202  fLayoutSampBut = 0;
1203  fLayoutSampField = 0;
1204 
1205  fSpSubFrame = 0;
1206  fLayoutSpSubFrame = 0;
1207 
1208  //................................ Menus Sample number
1209 
1210  // (no menu in this SubFrame)
1211 
1212  //++++++++++++++++++++++++++++++++++++ Frame: Run List (Rul) (Button + EntryField)
1213  fRulFrame = 0;
1214  fRulBut = 0;
1215  fLayoutRulBut = 0;
1216  fRulText = 0;
1217  fEntryRulNumber = 0;
1218  fLayoutRulFieldText = 0;
1220 
1221  //................................ Menus for time evolution
1222  fMenuHistory = 0;
1223  fMenuBarHistory = 0;
1224 
1225  //++++++++++++++++++++++++++++++++++++ Menu Event Distribution
1226  fMenuAdcProj = 0;
1227  fMenuBarAdcProj = 0;
1229 
1230  //++++++++++++++++++++++++++++++++++++ LinLog + Color Palette Frame
1231  fLinLogFrame = 0;
1232 
1233  //---------------------------------- Lin/Log X
1234  fButLogx = 0;
1235  fLayoutLogxBut = 0;
1236  //---------------------------------- Lin/Log Y
1237  fButLogy = 0;
1238  fLayoutLogyBut = 0;
1239  //---------------------------------- Proj Y
1240  fButProjy = 0;
1241  fLayoutProjyBut = 0;
1242 
1243  //++++++++++++++++++++++++++++++++++++ Frame: General Title (Gent) (Button + EntryField)
1244  fGentFrame = 0;
1245  fGentBut = 0;
1246  fLayoutGentBut = 0;
1247  fGentText = 0;
1248  fEntryGentNumber = 0;
1251 
1252  //++++++++++++++++++++++++++++++++++++ Color + Exit
1253  //---------------------------------- Color Palette
1254  fButColPal = 0;
1255  fLayoutColPalBut = 0;
1256  //---------------------------------- Exit
1257  fButExit = 0;
1258  fLayoutExitBut = 0;
1259 
1260  //++++++++++++++++++++++++++++++++++++ Last Frame
1261  fLastFrame = 0;
1262 
1263  //--------------------------------- Clone Last Canvas (Button)
1264  fButClone = 0;
1265  fLayoutCloneBut = 0;
1266 
1267  //--------------------------------- Root version (Button)
1268  fButRoot = 0;
1269  fLayoutRootBut = 0;
1270 
1271  //--------------------------------- Help (Button)
1272  fButHelp = 0;
1273  fLayoutHelpBut = 0;
1274 
1275  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%% end of init GUI DIALOG BOX pointers %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1276 
1277  //........ Init Buttons codes with input widgets:
1278  // run, channel, sample
1279 
1280  fAnaButC = 1;
1281  fRunButC = 2;
1282 
1283  //.................. Init codes Menu bars (all the numbers must be different)
1284 
1285  fMenuSubmit8nmC = 2011;
1286  fMenuSubmit1nhC = 2012;
1287  fMenuSubmit8nhC = 2013;
1288  fMenuSubmit1ndC = 2014;
1289  fMenuSubmit1nwC = 2015;
1290 
1291  fMenuCleanSubC = 3011;
1292  fMenuCleanJobC = 3012;
1293  fMenuCleanPythC = 3013;
1294  fMenuCleanAllC = 3014;
1295 
1296  fMenuComputStdC = 3111;
1297  fMenuComputSccC = 3112;
1298  fMenuComputSttC = 3113;
1299 
1300  fMenuD_NOE_ChNbFullC = 600101;
1301  fMenuD_NOE_ChNbSameC = 600102;
1302  fMenuD_NOE_ChNbAsciiFileC = 600104;
1303 
1304  fMenuD_Ped_ChNbFullC = 123051;
1305  fMenuD_Ped_ChNbSameC = 123052;
1306  fMenuD_Ped_ChNbAsciiFileC = 123054;
1307 
1308  fMenuD_TNo_ChNbFullC = 123061;
1309  fMenuD_TNo_ChNbSameC = 123062;
1310  fMenuD_TNo_ChNbSamePC = 123063;
1311  fMenuD_TNo_ChNbAsciiFileC = 123064;
1312 
1313  fMenuD_MCs_ChNbFullC = 123071;
1314  fMenuD_MCs_ChNbSameC = 123072;
1315  fMenuD_MCs_ChNbSamePC = 123073;
1316  fMenuD_MCs_ChNbAsciiFileC = 123074;
1317 
1318  fMenuD_LFN_ChNbFullC = 800051;
1319  fMenuD_LFN_ChNbSameC = 800052;
1320  fMenuD_LFN_ChNbSamePC = 800053;
1321  fMenuD_LFN_ChNbAsciiFileC = 800054;
1322 
1323  fMenuD_HFN_ChNbFullC = 800061;
1324  fMenuD_HFN_ChNbSameC = 800062;
1325  fMenuD_HFN_ChNbSamePC = 800063;
1326  fMenuD_HFN_ChNbAsciiFileC = 800064;
1327 
1328  fMenuD_SCs_ChNbFullC = 800071;
1329  fMenuD_SCs_ChNbSameC = 800072;
1330  fMenuD_SCs_ChNbSamePC = 800073;
1331  fMenuD_SCs_ChNbAsciiFileC = 800074;
1332 
1333  fMenuLFccColzC = 70010;
1334  fMenuLFccLegoC = 70011;
1335  fMenuHFccColzC = 70020;
1336  fMenuHFccLegoC = 70021;
1337 
1338  fMenuLFccMosColzC = 70110;
1339  fMenuLFccMosLegoC = 70111;
1340  fMenuHFccMosColzC = 70120;
1341  fMenuHFccMosLegoC = 70121;
1342 
1343  fMenuD_NOE_ChNbHocoVecoC = 524051;
1344  fMenuD_Ped_ChNbHocoVecoC = 524052;
1345  fMenuD_TNo_ChNbHocoVecoC = 524053;
1346  fMenuD_MCs_ChNbHocoVecoC = 524054;
1347  fMenuD_LFN_ChNbHocoVecoC = 524055;
1348  fMenuD_HFN_ChNbHocoVecoC = 524056;
1349  fMenuD_SCs_ChNbHocoVecoC = 524057;
1350 
1351  fStinAButC = 90009;
1352  fStinBButC = 90010;
1353 
1354  fChanButC = 6;
1355  fSampButC = 7;
1356 
1357  fMenuCorssAllColzC = 10;
1358  fMenuCovssAllColzC = 11;
1359 
1360  fMenuCorssColzC = 221;
1361  fMenuCorssBoxC = 222;
1362  fMenuCorssTextC = 223;
1363  fMenuCorssContzC = 224;
1364  fMenuCorssLegoC = 225;
1365  fMenuCorssSurf1C = 226;
1366  fMenuCorssSurf2C = 227;
1367  fMenuCorssSurf3C = 228;
1368  fMenuCorssSurf4C = 229;
1369  fMenuCorssAsciiFileC = 220;
1370 
1371  fMenuCovssColzC = 231;
1372  fMenuCovssBoxC = 232;
1373  fMenuCovssTextC = 233;
1374  fMenuCovssContzC = 234;
1375  fMenuCovssLegoC = 235;
1376  fMenuCovssSurf1C = 236;
1377  fMenuCovssSurf2C = 237;
1378  fMenuCovssSurf3C = 238;
1379  fMenuCovssSurf4C = 239;
1380  fMenuCovssAsciiFileC = 230;
1381 
1388 
1395 
1396  fMenuLFCorccColzC = 51;
1397  fMenuLFCorccLegoC = 52;
1398 
1399  fMenuHFCorccColzC = 61;
1400  fMenuHFCorccLegoC = 62;
1401 
1406 
1409 
1413 
1417 
1421 
1425 
1429 
1430  //...................... Init Button codes: Root version, Help, Exit
1431  fButStexNbC = 90;
1432  fButChNbC = 91;
1433  fButCloneC = 95;
1434  fButRootC = 96;
1435  fButHelpC = 97;
1436  fButExitC = 98;
1437 
1438  //=================================== LIN/LOG + Y proj + Color palette flags
1439  Int_t MaxCar = fgMaxCar;
1440  fMemoScaleX.Resize(MaxCar);
1441  fMemoScaleX = "LIN";
1442 
1443  MaxCar = fgMaxCar;
1444  fMemoScaleY.Resize(MaxCar);
1445  fMemoScaleY = "LIN";
1446 
1447  MaxCar = fgMaxCar;
1448  fMemoProjY.Resize(MaxCar);
1449  fMemoProjY = "normal";
1450 
1451  MaxCar = fgMaxCar;
1452  fMemoColPal.Resize(MaxCar);
1453  fMemoColPal = "ECCNAColor";
1454 
1455  //=================================== Init option codes =================================
1456 
1457  MaxCar = fgMaxCar;
1458  fOptPlotFull.Resize(MaxCar);
1459  fOptPlotFull = "ONLYONE";
1460 
1461  MaxCar = fgMaxCar;
1462  fOptPlotSame.Resize(MaxCar);
1463  fOptPlotSame = "SAME";
1464 
1465  MaxCar = fgMaxCar;
1466  fOptPlotSameP.Resize(MaxCar);
1467  fOptPlotSameP = "SAME n";
1468 
1469  MaxCar = fgMaxCar;
1470  fOptPlotSameInStin.Resize(MaxCar);
1471  fOptPlotSameInStin = "SAME in Stin";
1472 
1473  MaxCar = fgMaxCar;
1474  fOptAscii.Resize(MaxCar);
1475  fOptAscii = "ASCII";
1476 
1477 } // end of Init()
1478 
1479 
1480 
1481 //================================================================================================
1482 
1483 //-------------------------------------------------------------------------
1484 //
1485 //
1486 // B O X M A K I N G
1487 //
1488 //
1489 //-------------------------------------------------------------------------
1490 
1492 {
1493  // Gui box making
1494 
1495  //fCnaP = (TGWindow *)p;
1496  //fCnaW = w;
1497  //fCnaH = h;
1498 
1499  //......................... Background colors
1500 
1501  //TColor* my_color = new TColor();
1502  //Color_t orange = (Color_t)my_color->GetColor("#FF6611"); // orange
1503 
1504  Pixel_t SubDetColor = GetBackground();
1505 
1506  if( fSubDet == "EB" ){SubDetColor = GetBackground();}
1507  if( fSubDet == "EE" ){SubDetColor = GetBackground();}
1508 
1509  // Bool_t GlobFont = kFALSE;
1510 
1511  //Pixel_t BkgColMainWindow = (Pixel_t)SubDetColor;
1512  //Pixel_t BkgColChSpFrame = (Pixel_t)SubDetColor;
1513  //Pixel_t BkgColStexUpFrame = (Pixel_t)SubDetColor;
1514 
1515  // Pixel_t BkgColButExit = (Pixel_t)555888;
1516 
1517  // enum ELayoutHints {
1518  // kLHintsNoHints = 0,
1519  // kLHintsLeft = BIT(0),
1520  // kLHintsCenterX = BIT(1),
1521  // kLHintsRight = BIT(2),
1522  // kLHintsTop = BIT(3),
1523  // kLHintsCenterY = BIT(4),
1524  // kLHintsBottom = BIT(5),
1525  // kLHintsExpandX = BIT(6),
1526  // kLHintsExpandY = BIT(7),
1527  // kLHintsNormal = (kLHintsLeft | kLHintsTop)
1528  // bits 8-11 used by ETableLayoutHints
1529  // };
1530 
1531  fLayoutGeneral = new TGLayoutHints (kLHintsCenterX | kLHintsCenterY); fCnew++;
1532  fLayoutBottLeft = new TGLayoutHints (kLHintsLeft | kLHintsBottom); fCnew++;
1533  fLayoutTopLeft = new TGLayoutHints (kLHintsLeft | kLHintsTop); fCnew++;
1534  fLayoutBottRight = new TGLayoutHints (kLHintsRight | kLHintsBottom); fCnew++;
1535  fLayoutTopRight = new TGLayoutHints (kLHintsRight | kLHintsTop); fCnew++;
1536  fLayoutCenterYLeft = new TGLayoutHints (kLHintsLeft | kLHintsCenterY); fCnew++;
1537  fLayoutCenterYRight = new TGLayoutHints (kLHintsRight | kLHintsCenterY); fCnew++;
1538  fLayoutCenterXTop = new TGLayoutHints (kLHintsCenterX | kLHintsTop); fCnew++;
1539 
1540  fVoidFrame = new TGCompositeFrame(this,60,20, kVerticalFrame, kSunkenFrame); fCnew++;
1541  AddFrame(fVoidFrame, fLayoutGeneral);
1542 
1543  //......................... Pads border
1544  Int_t xB1 = 0;
1545 
1546  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1547  //
1548  // SECTOR 1: Submit, File Parameters, Calculations, ...
1549  //
1550  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1551 
1552  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1553  //
1554  // Horizontal frame Analysis + First requested evt number + Run number
1555  //
1556  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1557  fAnaNorsRunFrame = new TGCompositeFrame(this,60,20,kHorizontalFrame,
1558  GetDefaultFrameBackground()); fCnew++;
1559 
1560  //=================================== ANALYSIS NAME (type of analysis)
1561  TString xAnaButText = " Analysis ";
1562  Int_t typ_of_ana_buf_lenght = 80;
1563  fAnaFrame = new TGCompositeFrame(fAnaNorsRunFrame,60,20, kHorizontalFrame,
1564  kSunkenFrame); fCnew++;
1565  //..................... Button
1566  fAnaBut = new TGTextButton(fAnaFrame, xAnaButText, fAnaButC); fCnew++;
1567  fAnaBut->Connect("Clicked()","TEcnaGui", this, "DoButtonAna()");
1568  // fAnaBut->Resize(typ_of_ana_buf_lenght, fAnaBut->GetDefaultHeight());
1569  fAnaBut->SetToolTipText("Click here to register the analysis name written on the right");
1570  fAnaBut->SetBackgroundColor(SubDetColor);
1571  //fAnaBut->SetFont("courier", GlobFont);
1572  fLayoutAnaBut =
1573  new TGLayoutHints(kLHintsLeft | kLHintsTop, xB1,xB1,xB1,xB1); fCnew++;
1574  fAnaFrame->AddFrame(fAnaBut, fLayoutAnaBut);
1575  //...................... Entry field
1576  fEntryAnaNumber = new TGTextBuffer(); fCnew++;
1577  fAnaText = new TGTextEntry(fAnaFrame, fEntryAnaNumber); fCnew++;
1578  fAnaText->SetToolTipText
1579  ("Click and enter the analysis name (code for type of analysis)");
1580  fAnaText->Resize(typ_of_ana_buf_lenght, fAnaText->GetDefaultHeight());
1582  fAnaText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonAna()");
1583  fLayoutAnaField =
1584  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1585  fAnaFrame->AddFrame(fAnaText, fLayoutAnaField);
1586 
1587  //=================================== FIRST REQUESTED EVENT NUMBER
1588  TString xFirstReqEvtNumberButText = " 1st event# ";
1589  Int_t first_evt_buf_lenght = 65;
1590  fFevFrame =
1591  new TGCompositeFrame(fAnaNorsRunFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1592 
1593  fFevBut= new TGTextButton(fFevFrame, xFirstReqEvtNumberButText); fCnew++;
1594  fFevBut->Connect("Clicked()","TEcnaGui", this, "DoButtonFev()");
1595  fFevBut->SetToolTipText
1596  ("Click here to register the number of the first requested event number");
1597  fFevBut->SetBackgroundColor(SubDetColor);
1598  fLayoutFevBut =
1599  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1600  fFevFrame->AddFrame(fFevBut, fLayoutFevBut);
1601 
1602  fEntryFevNumber = new TGTextBuffer(); fCnew++;
1603  fFevText = new TGTextEntry(fFevFrame, fEntryFevNumber); fCnew++;
1604  fFevText->SetToolTipText("Click and enter the first requested event number");
1605  fFevText->Resize(first_evt_buf_lenght, fFevText->GetDefaultHeight());
1607  fFevText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonFev()");
1609  new TGLayoutHints(kLHintsBottom | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1611 
1612  //=================================== RUN
1613  TString xRunButText = " Run ";
1614  Int_t run_buf_lenght = 65;
1615  fRunFrame = new TGCompositeFrame(fAnaNorsRunFrame,0,0,
1616  kHorizontalFrame, kSunkenFrame); fCnew++;
1617  fRunBut = new TGTextButton(fRunFrame, xRunButText, fRunButC); fCnew++;
1618  fRunBut->Connect("Clicked()","TEcnaGui", this, "DoButtonRun()");
1619  fRunBut->SetToolTipText("Click here to register the run number");
1620  fRunBut->SetBackgroundColor(SubDetColor);
1621  // fRunBut->SetFont("helvetica", GlobFont);
1622  fLayoutRunBut =
1623  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
1624  fRunFrame->AddFrame(fRunBut, fLayoutRunBut);
1625  fEntryRunNumber = new TGTextBuffer(); fCnew++;
1626  fRunText = new TGTextEntry(fRunFrame, fEntryRunNumber); fCnew++;
1627  fRunText->SetToolTipText("Click and enter the run number");
1628  fRunText->Resize(run_buf_lenght, fRunText->GetDefaultHeight());
1630  fRunText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonRun()");
1631  fLayoutRunField =
1632  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1633  fRunFrame->AddFrame(fRunText, fLayoutRunField);
1634 
1635  //-------------------------- display frame ana + Fev + Run
1639  fLayoutAnaNorsRunFrame = new TGLayoutHints(kLHintsTop | kLHintsExpandX,
1640  xB1, xB1, xB1, xB1); fCnew++;
1641 
1643 
1644  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1645  //
1646  // Horizontal frame Nb Of Samples + last requested evt number + Clean + Submit
1647  //
1648  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1649  fFevLevStexFrame = new TGCompositeFrame(this,60,20,kHorizontalFrame,
1650  GetDefaultFrameBackground()); fCnew++;
1651 
1652  //=================================== Number Of Requested Samples
1653  TString xNorsButText = "Nb Samp in File";
1654  Int_t nors_buf_lenght = 45;
1655  fNorsFrame = new TGCompositeFrame(fFevLevStexFrame,0,0, kHorizontalFrame,
1656  kSunkenFrame); fCnew++;
1657  //..................... Button
1658  fNorsBut = new TGTextButton(fNorsFrame, xNorsButText, fNorsButC); fCnew++;
1659  fNorsBut->Connect("Clicked()","TEcnaGui", this, "DoButtonNors()");
1660  //fNorsBut->Resize(nors_buf_lenght, fNorsBut->GetDefaultHeight());
1661  fNorsBut->SetToolTipText("Click here to register the value written on the right");
1662  fNorsBut->SetBackgroundColor(SubDetColor);
1663  //fNorsBut->SetFont("courier", GlobFont);
1664  fLayoutNorsBut =
1665  new TGLayoutHints(kLHintsLeft | kLHintsTop, xB1,xB1,xB1,xB1); fCnew++;
1666  fNorsFrame->AddFrame(fNorsBut, fLayoutNorsBut);
1667  //...................... Entry field
1668  fEntryNorsNumber = new TGTextBuffer(); fCnew++;
1669  fNorsText = new TGTextEntry(fNorsFrame, fEntryNorsNumber); fCnew++;
1670  fNorsText->SetToolTipText("Click and enter the number of required samples");
1671  fNorsText->Resize(nors_buf_lenght, fNorsText->GetDefaultHeight());
1673  fNorsText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonNors()");
1675  new TGLayoutHints(kLHintsTop | kLHintsCenterX, xB1,xB1,xB1,xB1); fCnew++;
1677 
1678  //=================================== LAST REQUESTED EVENT NUMBER
1679  TString xLastReqEvtButText = " Last event# ";
1680  Int_t last_evt_buf_lenght = 65;
1681  fLevFrame =
1682  new TGCompositeFrame(fFevLevStexFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1683 
1684  fLevBut = new TGTextButton(fLevFrame, xLastReqEvtButText); fCnew++;
1685  fLevBut->Connect("Clicked()","TEcnaGui", this, "DoButtonLev()");
1686  fLevBut->SetToolTipText("Click here to register the last requested event number");
1687  fLevBut->SetBackgroundColor(SubDetColor);
1688  fLayoutLevBut =
1689  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1690  fLevFrame->AddFrame(fLevBut, fLayoutLevBut);
1691 
1692  fEntryLevNumber = new TGTextBuffer(); fCnew++;
1693  fLevText = new TGTextEntry(fLevFrame, fEntryLevNumber); fCnew++;
1694  fLevText->SetToolTipText("Click and enter the last requested event number");
1695  fLevText->Resize(last_evt_buf_lenght, fLevText->GetDefaultHeight());
1697  fLevText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonLev()");
1699  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1701 
1702  //----------------------------------- Clean
1703  TString xMenuBarClean = "Clean ";
1704 
1705  fMenuClean = new TGPopupMenu(gClient->GetRoot()); fCnew++;
1706  fMenuClean->AddEntry("Submission scripts",fMenuCleanSubC);
1707  fMenuClean->AddEntry("LSFJOB reports",fMenuCleanJobC);
1708  fMenuClean->AddEntry("Python files",fMenuCleanPythC);
1709  fMenuClean->AddEntry("All",fMenuCleanAllC);
1710 
1711  fMenuClean->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
1712  fMenuBarClean = new TGMenuBar(fFevLevStexFrame , 1, 1, kHorizontalFrame); fCnew++;
1713  fMenuBarClean->AddPopup(xMenuBarClean, fMenuClean, fLayoutTopLeft);
1714 
1715  //--------------------------------- SUBMIT IN BATCH MODE
1716  TString xMenuBarSubmit = " Submit ";
1717  fMenuSubmit = new TGPopupMenu(gClient->GetRoot()); fCnew++;
1718 
1719  fMenuSubmit->AddEntry(" -q 8nm ",fMenuSubmit8nmC);
1720  fMenuSubmit->AddEntry(" -q 1nh ",fMenuSubmit1nhC);
1721  fMenuSubmit->AddEntry(" -q 8nh ",fMenuSubmit8nhC);
1722  fMenuSubmit->AddEntry(" -q 1nd ",fMenuSubmit1ndC);
1723  fMenuSubmit->AddEntry(" -q 1nw ",fMenuSubmit1nwC);
1724 
1725  fMenuSubmit->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
1726  fMenuBarSubmit = new TGMenuBar(fFevLevStexFrame, 1, 1, kHorizontalFrame); fCnew++;
1727  fMenuBarSubmit->AddPopup(xMenuBarSubmit, fMenuSubmit, fLayoutTopLeft);
1728 
1729  //-------------------------- display frame Nors + Lev + Clean + Submit
1734 
1735  fLayoutFevLevStexFrame = new TGLayoutHints(kLHintsTop | kLHintsExpandX,
1736  xB1, xB1, xB1, xB1); fCnew++;
1737 
1739 
1740 
1741  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1742  //
1743  // Horizontal Frame: StexNumber + Nb of Requested events
1744  //
1745  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1746  fCompStRqFrame = new TGCompositeFrame(this,60,20,kHorizontalFrame,
1747  GetDefaultFrameBackground()); fCnew++;
1748 
1749  //----------------------------------- STEX NUMBER
1750  TString xSumoButText;
1751  if( fSubDet == "EB" ){xSumoButText = " SM# (0=EB) ";}
1752  if( fSubDet == "EE" ){xSumoButText = " Dee# (0=EE) ";}
1753 
1754  Int_t stex_number_buf_lenght = 36;
1755  fStexFrame =
1756  new TGCompositeFrame(fCompStRqFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1757 
1758  fStexBut = new TGTextButton(fStexFrame, xSumoButText); fCnew++;
1759  fStexBut->Connect("Clicked()","TEcnaGui", this, "DoButtonStex()");
1760  fStexBut->SetToolTipText("Click here to register the number written on the right");
1761  fStexBut->SetBackgroundColor(SubDetColor);
1762  //fStexBut->SetFont("courier", GlobFont);
1763  fLayoutStexBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1764  fStexFrame->AddFrame(fStexBut, fLayoutStexBut);
1765 
1766  fEntryStexNumber = new TGTextBuffer(); fCnew++;
1767  fStexText = new TGTextEntry(fStexFrame, fEntryStexNumber); fCnew++;
1768 
1769  TString xStexNumber;
1770  if( fSubDet == "EB" ){xStexNumber = "Click and enter the SM number";}
1771  if( fSubDet == "EE" ){xStexNumber = "Click and enter the Dee number";}
1772  fStexText->SetToolTipText(xStexNumber);
1773  fStexText->Resize(stex_number_buf_lenght, fStexText->GetDefaultHeight());
1775  fStexText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonStex()");
1776 
1778  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1780 
1781  //=================================== NUMBER OF REQUESTED EVENTS
1782  TString xNbOfReqEvtButText = " Nb of events ";
1783  Int_t nbof_evt_buf_lenght = 65;
1784  fRevFrame =
1785  new TGCompositeFrame(fCompStRqFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1786 
1787  fRevBut = new TGTextButton(fRevFrame, xNbOfReqEvtButText); fCnew++;
1788  fRevBut->Connect("Clicked()","TEcnaGui", this, "DoButtonRev()");
1789  fRevBut->SetToolTipText("Click here to register the requested number of events");
1790  fRevBut->SetBackgroundColor(SubDetColor);
1791  fLayoutRevBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1792  fRevFrame->AddFrame(fRevBut, fLayoutRevBut);
1793 
1794  fEntryRevNumber = new TGTextBuffer(); fCnew++;
1795  fRevText = new TGTextEntry(fRevFrame, fEntryRevNumber); fCnew++;
1796  fRevText->SetToolTipText("Click and enter the requested number of events");
1797  fRevText->Resize(nbof_evt_buf_lenght, fRevText->GetDefaultHeight());
1799  fRevText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonRev()");
1801  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1803 
1804  //-------------------------- display frame stex number + Nb of req evts
1807 
1808  fLayoutCompStRqFrame = new TGLayoutHints(kLHintsTop | kLHintsExpandX,
1809  xB1, xB1, xB1, xB1); fCnew++;
1811  AddFrame(fVoidFrame, fLayoutGeneral);
1812 
1813 
1814  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1815  //
1816  // Horizontal Frame: StexStin numbering + NbSampForCalc + Calculations
1817  //
1818  //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1819  fCompStnbFrame = new TGCompositeFrame(this,60,20,kHorizontalFrame,
1820  GetDefaultFrameBackground()); fCnew++;
1821 
1822 
1823  // ---------------------------------STEX STIN NUMBERING VIEW BUTTON
1824  //............ Button texts and lenghts of the input widgets
1825  TString xStexNbButText;
1826  if( fSubDet == "EB" ){xStexNbButText = "SM Tower Numbering";}
1827  if( fSubDet == "EE" ){xStexNbButText = "Dee SC Numbering";}
1828  fButStexNb = new TGTextButton(fCompStnbFrame, xStexNbButText, fButStexNbC); fCnew++;
1829  fButStexNb->Connect("Clicked()","TEcnaGui", this, "DoButtonStexNb()");
1830  fButStexNb->SetBackgroundColor(SubDetColor);
1831 
1832  //----------------------------------- Nb Of Samples For Calculations
1833  TString xNbSampForCalcButText = "Nb Samp Calc";
1834  Int_t nb_of_samp_calc_buf_lenght = 28;
1836  new TGCompositeFrame(fCompStnbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1837 
1838  fNbSampForCalcBut = new TGTextButton(fNbSampForCalcFrame, xNbSampForCalcButText); fCnew++;
1839  fNbSampForCalcBut->Connect("Clicked()","TEcnaGui", this, "DoButtonNbSampForCalc()");
1840  fNbSampForCalcBut->SetToolTipText("Click here to register the number written on the right");
1841  fNbSampForCalcBut->SetBackgroundColor(SubDetColor);
1842  //fNbSampForCalcBut->SetFont("courier", GlobFont);
1843  fLayoutNbSampForCalcBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1845 
1846  fEntryNbSampForCalcNumber = new TGTextBuffer(); fCnew++;
1848 
1849  TString xNbSampForCalcNumber = "Click and enter the nb of samples for calculations";
1850  fNbSampForCalcText->SetToolTipText(xNbSampForCalcNumber);
1851  fNbSampForCalcText->Resize(nb_of_samp_calc_buf_lenght, fNbSampForCalcText->GetDefaultHeight());
1853  fNbSampForCalcText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonNbSampForCalc()");
1854 
1856  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1858 
1859  //--------------------------------- Calculations Menu
1860  TString xMenuBarComput = "Calculations ";
1861  fMenuComput = new TGPopupMenu(gClient->GetRoot()); fCnew++;
1862  fMenuComput->AddEntry("Standard ( Pedestals, Noises, Cor(s,s') )",fMenuComputStdC);
1863  fMenuComput->AddEntry("Standard + |Cor(t,t')| (long time)",fMenuComputSttC);
1864  fMenuComput->AddEntry("Standard + |Cor(t,t')| + |Cor(c,c')| (long time + big file)",fMenuComputSccC);
1865 
1866  fMenuComput->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
1867  fMenuBarComput = new TGMenuBar(fCompStnbFrame , 1, 1, kHorizontalFrame); fCnew++;
1868  fMenuBarComput->AddPopup(xMenuBarComput, fMenuComput, fLayoutTopLeft);
1869 
1870  //-------------------------- display frame stexstin numbering + Nb samp for calc + Calculations
1874 
1875  fLayoutCompStnbFrame = new TGLayoutHints(kLHintsTop | kLHintsExpandX,
1876  xB1, xB1, xB1, xB1); fCnew++;
1878  AddFrame(fVoidFrame, fLayoutGeneral);
1879 
1880  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1881  //
1882  // SECTOR 2: Stex's if SM # 0 or Stas's if SM =0
1883  //
1884  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1885  Int_t minmax_buf_lenght = 45;
1886 
1887  fStexUpFrame = new TGCompositeFrame
1888  (this,60,20,kVerticalFrame, GetDefaultFrameBackground()); fCnew++;
1889  TString xYminButText = " Ymin ";
1890  TString xYmaxButText = " Ymax ";
1891  //########################################### Composite frame number of events found in the data
1892  fVmmD_NOE_ChNbFrame = new TGCompositeFrame
1893  (fStexUpFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1894  //...................................... Menu number of events found in the data
1895 
1896  //...................................... Frame for Ymax
1897  fVmaxD_NOE_ChNbFrame = new TGCompositeFrame
1898  (fVmmD_NOE_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1899  //...................................... Button Max + Entry field
1900  fVmaxD_NOE_ChNbBut = new TGTextButton(fVmaxD_NOE_ChNbFrame, xYmaxButText); fCnew++;
1901  fVmaxD_NOE_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_NOE_ChNb()");
1902  fVmaxD_NOE_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
1903  fVmaxD_NOE_ChNbBut->SetBackgroundColor(SubDetColor);
1905  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1907  fEntryVmaxD_NOE_ChNbNumber = new TGTextBuffer(); fCnew++;
1909  new TGTextEntry(fVmaxD_NOE_ChNbFrame, fEntryVmaxD_NOE_ChNbNumber); fCnew++;
1910  fVmaxD_NOE_ChNbText->SetToolTipText("Click and enter ymax");
1911  fVmaxD_NOE_ChNbText->Resize(minmax_buf_lenght, fVmaxD_NOE_ChNbText->GetDefaultHeight());
1913  fVmaxD_NOE_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_NOE_ChNb()");
1914 
1916  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1919  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1921 
1922  //...................................... Frame for Ymin
1923  fVminD_NOE_ChNbFrame = new TGCompositeFrame
1924  (fVmmD_NOE_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1925  //...................................... Button Min + Entry field
1926  fVminD_NOE_ChNbBut = new TGTextButton(fVminD_NOE_ChNbFrame, xYminButText); fCnew++;
1927  fVminD_NOE_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_NOE_ChNb()");
1928  fVminD_NOE_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
1929  fVminD_NOE_ChNbBut->SetBackgroundColor(SubDetColor);
1931  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1933  fEntryVminD_NOE_ChNbNumber = new TGTextBuffer(); fCnew++;
1935  new TGTextEntry(fVminD_NOE_ChNbFrame, fEntryVminD_NOE_ChNbNumber); fCnew++;
1936  fVminD_NOE_ChNbText->SetToolTipText("Click and enter ymin");
1937  fVminD_NOE_ChNbText->Resize(minmax_buf_lenght, fVminD_NOE_ChNbText->GetDefaultHeight());
1939  fVminD_NOE_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_NOE_ChNb()");
1941  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1944  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1946 
1947  //...................................... MenuBar strings
1948  TString xHistoChannels = "1D Histo";
1949  TString xHistoChannelsSame = "1D Histo SAME" ;
1950  TString xHistoChannelsSameP = "1D Histo SAME n";
1951  TString xHistoProjection = "1D Histo Projection";
1952  TString xHistoProjectionSame = "1D Histo Projection SAME";
1953  TString xHistoProjectionSameP = "1D Histo Projection SAME n";
1954  TString xHocoVecoViewSorS = "2D, Histo";
1955  if( fSubDet == "EB" ){xHocoVecoViewSorS = "2D, Histo (eta,phi)";}
1956  if( fSubDet == "EE" ){xHocoVecoViewSorS = "2D, Histo (IX,IY)";}
1957  TString xAsciiFileStex = "1D Histo, write in ASCII file";
1958 
1959  //...................................... Frame
1960  TString xMenuD_NOE_ChNb = "Numbers of events ";
1961  fMenuD_NOE_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
1962  fMenuD_NOE_ChNb->AddEntry(xHistoChannels,fMenuD_NOE_ChNbFullC);
1963  fMenuD_NOE_ChNb->AddEntry(xHistoChannelsSame,fMenuD_NOE_ChNbSameC);
1964  fMenuD_NOE_ChNb->AddSeparator();
1965  fMenuD_NOE_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_NOE_ChNbHocoVecoC);
1966  fMenuD_NOE_ChNb->AddSeparator();
1967  fMenuD_NOE_ChNb->AddEntry(xAsciiFileStex,fMenuD_NOE_ChNbAsciiFileC);
1968  fMenuD_NOE_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
1969  fMenuBarD_NOE_ChNb = new TGMenuBar(fVmmD_NOE_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
1970 
1971  //fMenuBarD_NOE_ChNb->SetMinWidth(200); // <= N'A STRICTEMENT AUCUN EFFET.
1972 
1973  fMenuBarD_NOE_ChNb->AddPopup(xMenuD_NOE_ChNb, fMenuD_NOE_ChNb, fLayoutGeneral);
1974  fLayoutMenuBarD_NOE_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1977  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
1979 
1980  //............................. Expectation values + Sigmas Vertical frame
1981  fStexHozFrame =
1982  new TGCompositeFrame(fStexUpFrame,60,20,kVerticalFrame,
1983  GetDefaultFrameBackground()); fCnew++;
1984 
1985  //########################################### Composite frame ev of ev (pedestals)
1986  fVmmD_Ped_ChNbFrame = new TGCompositeFrame
1987  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1988 
1989  //...................................... Menu ev of ev
1990 
1991  //...................................... Frame for Ymax
1992  fVmaxD_Ped_ChNbFrame = new TGCompositeFrame
1993  (fVmmD_Ped_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
1994  //...................................... Button Max + Entry field
1995  fVmaxD_Ped_ChNbBut = new TGTextButton(fVmaxD_Ped_ChNbFrame, xYmaxButText); fCnew++;
1996  fVmaxD_Ped_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_Ped_ChNb()");
1997  fVmaxD_Ped_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
1998  fLayoutVmaxD_Ped_ChNbBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
1999  fVmaxD_Ped_ChNbBut->SetBackgroundColor(SubDetColor);
2001  fEntryVmaxD_Ped_ChNbNumber = new TGTextBuffer(); fCnew++;
2003  fVmaxD_Ped_ChNbText->SetToolTipText("Click and enter ymax");
2004  fVmaxD_Ped_ChNbText->Resize(minmax_buf_lenght, fVmaxD_Ped_ChNbText->GetDefaultHeight());
2006  fVmaxD_Ped_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_Ped_ChNb()");
2008  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2011  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2013 
2014  //...................................... Frame for Ymin
2015  fVminD_Ped_ChNbFrame = new TGCompositeFrame
2016  (fVmmD_Ped_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2017  //...................................... Button Min + Entry field
2018  fVminD_Ped_ChNbBut = new TGTextButton(fVminD_Ped_ChNbFrame, xYminButText); fCnew++;
2019  fVminD_Ped_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_Ped_ChNb()");
2020  fVminD_Ped_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2021  fVminD_Ped_ChNbBut->SetBackgroundColor(SubDetColor);
2023  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2025 
2026  fEntryVminD_Ped_ChNbNumber = new TGTextBuffer(); fCnew++;
2028  fVminD_Ped_ChNbText->SetToolTipText("Click and enter ymin");
2029  fVminD_Ped_ChNbText->Resize(minmax_buf_lenght, fVminD_Ped_ChNbText->GetDefaultHeight());
2031  fVminD_Ped_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_Ped_ChNb()");
2033  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2036  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2038 
2039  //...................................... Frame
2040  TString xMenuD_Ped_ChNb = " Pedestals ";
2041  fMenuD_Ped_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2042  fMenuD_Ped_ChNb->AddEntry(xHistoChannels,fMenuD_Ped_ChNbFullC);
2043  fMenuD_Ped_ChNb->AddEntry(xHistoChannelsSame,fMenuD_Ped_ChNbSameC);
2044  fMenuD_Ped_ChNb->AddSeparator();
2045  fMenuD_Ped_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_Ped_ChNbHocoVecoC);
2046  fMenuD_Ped_ChNb->AddSeparator();
2047  fMenuD_Ped_ChNb->AddEntry(xAsciiFileStex,fMenuD_Ped_ChNbAsciiFileC);
2048  fMenuD_Ped_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2049  fMenuBarD_Ped_ChNb = new TGMenuBar(fVmmD_Ped_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2050  fMenuBarD_Ped_ChNb->AddPopup(xMenuD_Ped_ChNb, fMenuD_Ped_ChNb, fLayoutGeneral);
2051  fLayoutMenuBarD_Ped_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2053 
2055  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2057 
2058  //########################################### Composite frame for TOTAL NOISE
2059  fVmmD_TNo_ChNbFrame = new TGCompositeFrame
2060  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2061 
2062  //...................................... Menu ev of sig
2063  //...................................... Frame for Ymax
2064  fVmaxD_TNo_ChNbFrame = new TGCompositeFrame
2065  (fVmmD_TNo_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2066  //...................................... Button Max + Entry field
2067  fVmaxD_TNo_ChNbBut = new TGTextButton(fVmaxD_TNo_ChNbFrame, xYmaxButText); fCnew++;
2068  fVmaxD_TNo_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_TNo_ChNb()");
2069  fVmaxD_TNo_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2070  fVmaxD_TNo_ChNbBut->SetBackgroundColor(SubDetColor);
2072  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2074  fEntryVmaxD_TNo_ChNbNumber = new TGTextBuffer(); fCnew++;
2076  fVmaxD_TNo_ChNbText->SetToolTipText("Click and enter ymax");
2077  fVmaxD_TNo_ChNbText->Resize(minmax_buf_lenght, fVmaxD_TNo_ChNbText->GetDefaultHeight());
2079  fVmaxD_TNo_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_TNo_ChNb()");
2081  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2084  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2086 
2087  //...................................... Frame for Ymin
2088  fVminD_TNo_ChNbFrame = new TGCompositeFrame
2089  (fVmmD_TNo_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2090  //...................................... Button Min + Entry field
2091  fVminD_TNo_ChNbBut = new TGTextButton(fVminD_TNo_ChNbFrame, xYminButText); fCnew++;
2092  fVminD_TNo_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_TNo_ChNb()");
2093  fVminD_TNo_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2094  fVminD_TNo_ChNbBut->SetBackgroundColor(SubDetColor);
2096  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2098 
2099  fEntryVminD_TNo_ChNbNumber = new TGTextBuffer(); fCnew++;
2101  fVminD_TNo_ChNbText->SetToolTipText("Click and enter ymin");
2102  fVminD_TNo_ChNbText->Resize(minmax_buf_lenght, fVminD_TNo_ChNbText->GetDefaultHeight());
2104  fVminD_TNo_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_TNo_ChNb()");
2106  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2109  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2111 
2112  //...................................... Frame
2113  TString xMenuD_TNo_ChNb = " Total Noise ";
2114  fMenuD_TNo_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2115  fMenuD_TNo_ChNb->AddEntry(xHistoChannels,fMenuD_TNo_ChNbFullC);
2116  fMenuD_TNo_ChNb->AddEntry(xHistoChannelsSame,fMenuD_TNo_ChNbSameC);
2117  fMenuD_TNo_ChNb->AddEntry(xHistoChannelsSameP,fMenuD_TNo_ChNbSamePC);
2118  fMenuD_TNo_ChNb->AddSeparator();
2119  fMenuD_TNo_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_TNo_ChNbHocoVecoC);
2120  fMenuD_TNo_ChNb->AddSeparator();
2121  fMenuD_TNo_ChNb->AddEntry(xAsciiFileStex,fMenuD_TNo_ChNbAsciiFileC);
2122  fMenuD_TNo_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2123  fMenuBarD_TNo_ChNb = new TGMenuBar(fVmmD_TNo_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2124  fMenuBarD_TNo_ChNb->AddPopup(xMenuD_TNo_ChNb, fMenuD_TNo_ChNb, fLayoutGeneral);
2125  fLayoutMenuBarD_TNo_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2127 
2129  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2131 
2132  //########################################### Composite frame for LOW FREQUENCY NOISE
2133  fVmmD_LFN_ChNbFrame = new TGCompositeFrame
2134  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2135 
2136  //...................................... Menu sig of ev (LOW FREQUENCY NOISE)
2137  //...................................... Frame for Ymax
2138  fVmaxD_LFN_ChNbFrame = new TGCompositeFrame
2139  (fVmmD_LFN_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2140  //...................................... Button Max + Entry field
2141  fVmaxD_LFN_ChNbBut = new TGTextButton(fVmaxD_LFN_ChNbFrame, xYmaxButText); fCnew++;
2142  fVmaxD_LFN_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_LFN_ChNb()");
2143  fVmaxD_LFN_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2144  fVmaxD_LFN_ChNbBut->SetBackgroundColor(SubDetColor);
2146  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2148  fEntryVmaxD_LFN_ChNbNumber = new TGTextBuffer(); fCnew++;
2150  fVmaxD_LFN_ChNbText->SetToolTipText("Click and enter ymax");
2151  fVmaxD_LFN_ChNbText->Resize(minmax_buf_lenght, fVmaxD_LFN_ChNbText->GetDefaultHeight());
2153  fVmaxD_LFN_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_LFN_ChNb()");
2155  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2158  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2160 
2161  //...................................... Frame for Ymin
2162  fVminD_LFN_ChNbFrame = new TGCompositeFrame
2163  (fVmmD_LFN_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2164  //...................................... Button Min + Entry field
2165  fVminD_LFN_ChNbBut = new TGTextButton(fVminD_LFN_ChNbFrame, xYminButText); fCnew++;
2166  fVminD_LFN_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_LFN_ChNb()");
2167  fVminD_LFN_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2168  fVminD_LFN_ChNbBut->SetBackgroundColor(SubDetColor);
2170  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2172  fEntryVminD_LFN_ChNbNumber = new TGTextBuffer(); fCnew++;
2174  fVminD_LFN_ChNbText->SetToolTipText("Click and enter ymin");
2175  fVminD_LFN_ChNbText->Resize(minmax_buf_lenght, fVminD_LFN_ChNbText->GetDefaultHeight());
2177  fVminD_LFN_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_LFN_ChNb()");
2179  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2182  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2184 
2185  //...................................... Frame
2186  TString xMenuD_LFN_ChNb = " Low Frequency Noise ";
2187  fMenuD_LFN_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2188  fMenuD_LFN_ChNb->AddEntry(xHistoChannels,fMenuD_LFN_ChNbFullC);
2189  fMenuD_LFN_ChNb->AddEntry(xHistoChannelsSame,fMenuD_LFN_ChNbSameC);
2190  fMenuD_LFN_ChNb->AddEntry(xHistoChannelsSameP,fMenuD_LFN_ChNbSamePC);
2191  fMenuD_LFN_ChNb->AddSeparator();
2192  fMenuD_LFN_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_LFN_ChNbHocoVecoC);
2193  fMenuD_LFN_ChNb->AddSeparator();
2194  fMenuD_LFN_ChNb->AddEntry(xAsciiFileStex,fMenuD_LFN_ChNbAsciiFileC);
2195  fMenuD_LFN_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2196  fMenuBarD_LFN_ChNb = new TGMenuBar(fVmmD_LFN_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2197  fMenuBarD_LFN_ChNb->AddPopup(xMenuD_LFN_ChNb, fMenuD_LFN_ChNb, fLayoutGeneral);
2198  fLayoutMenuBarD_LFN_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2201  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2203 
2204  //########################################### Composite frame for HIGH FREQUENCY NOISE
2205  fVmmD_HFN_ChNbFrame = new TGCompositeFrame
2206  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2207 
2208  //...................................... Menu sig of sig (HIGH FREQUENCY NOISE)
2209  //...................................... Frame for Ymax
2210  fVmaxD_HFN_ChNbFrame = new TGCompositeFrame
2211  (fVmmD_HFN_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2212  //...................................... Button Max + Entry field
2213  fVmaxD_HFN_ChNbBut = new TGTextButton(fVmaxD_HFN_ChNbFrame, xYmaxButText); fCnew++;
2214  fVmaxD_HFN_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_HFN_ChNb()");
2215  fVmaxD_HFN_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2216  fVmaxD_HFN_ChNbBut->SetBackgroundColor(SubDetColor);
2218  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2220  fEntryVmaxD_HFN_ChNbNumber = new TGTextBuffer(); fCnew++;
2222  fVmaxD_HFN_ChNbText->SetToolTipText("Click and enter ymax");
2223  fVmaxD_HFN_ChNbText->Resize(minmax_buf_lenght, fVmaxD_HFN_ChNbText->GetDefaultHeight());
2225  fVmaxD_HFN_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_HFN_ChNb()");
2227  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2230  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2232 
2233  //...................................... Frame for Ymin
2234  fVminD_HFN_ChNbFrame = new TGCompositeFrame
2235  (fVmmD_HFN_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2236  //...................................... Button Min + Entry field
2237  fVminD_HFN_ChNbBut = new TGTextButton(fVminD_HFN_ChNbFrame, xYminButText); fCnew++;
2238  fVminD_HFN_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_HFN_ChNb()");
2239  fVminD_HFN_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2240  fVminD_HFN_ChNbBut->SetBackgroundColor(SubDetColor);
2242  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2244  fEntryVminD_HFN_ChNbNumber = new TGTextBuffer(); fCnew++;
2246  fVminD_HFN_ChNbText->SetToolTipText("Click and enter ymin");
2247  fVminD_HFN_ChNbText->Resize(minmax_buf_lenght, fVminD_HFN_ChNbText->GetDefaultHeight());
2249  fVminD_HFN_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_HFN_ChNb()");
2251  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2254  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2256 
2257  //...................................... Frame
2258  TString xMenuD_HFN_ChNb = " High Frequency Noise ";
2259  fMenuD_HFN_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2260  fMenuD_HFN_ChNb->AddEntry(xHistoChannels,fMenuD_HFN_ChNbFullC);
2261  fMenuD_HFN_ChNb->AddEntry(xHistoChannelsSame,fMenuD_HFN_ChNbSameC);
2262  fMenuD_HFN_ChNb->AddEntry(xHistoChannelsSameP,fMenuD_HFN_ChNbSamePC);
2263  fMenuD_HFN_ChNb->AddSeparator();
2264  fMenuD_HFN_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_HFN_ChNbHocoVecoC);
2265  fMenuD_HFN_ChNb->AddSeparator();
2266  fMenuD_HFN_ChNb->AddEntry(xAsciiFileStex,fMenuD_HFN_ChNbAsciiFileC);
2267  fMenuD_HFN_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2268  fMenuBarD_HFN_ChNb = new TGMenuBar(fVmmD_HFN_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2269  fMenuBarD_HFN_ChNb->AddPopup(xMenuD_HFN_ChNb, fMenuD_HFN_ChNb, fLayoutGeneral);
2270  fLayoutMenuBarD_HFN_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2272 
2274  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2276 
2277  //########################################### Composite frame for MEAN COR(s,s')
2278  fVmmD_MCs_ChNbFrame = new TGCompositeFrame
2279  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2280 
2281  //...................................... Menu ev of Corss
2282 
2283  //...................................... Frame
2284  fVmaxD_MCs_ChNbFrame = new TGCompositeFrame
2285  (fVmmD_MCs_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2286  //...................................... Button Max + Entry field
2287  fVmaxD_MCs_ChNbBut = new TGTextButton(fVmaxD_MCs_ChNbFrame, xYmaxButText); fCnew++;
2288  fVmaxD_MCs_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_MCs_ChNb()");
2289  fVmaxD_MCs_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2290  fVmaxD_MCs_ChNbBut->SetBackgroundColor(SubDetColor);
2292  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2294  fEntryVmaxD_MCs_ChNbNumber = new TGTextBuffer(); fCnew++;
2296  fVmaxD_MCs_ChNbText->SetToolTipText("Click and enter ymax");
2297  fVmaxD_MCs_ChNbText->Resize(minmax_buf_lenght, fVmaxD_MCs_ChNbText->GetDefaultHeight());
2299  fVmaxD_MCs_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_MCs_ChNb()");
2301  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2304  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2306 
2307  //...................................... Frame for Ymin
2308  fVminD_MCs_ChNbFrame = new TGCompositeFrame
2309  (fVmmD_MCs_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2310  //...................................... Button Min + Entry field
2311  fVminD_MCs_ChNbBut = new TGTextButton(fVminD_MCs_ChNbFrame, xYminButText); fCnew++;
2312  fVminD_MCs_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_MCs_ChNb()");
2313  fVminD_MCs_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2314  fVminD_MCs_ChNbBut->SetBackgroundColor(SubDetColor);
2316  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2318  fEntryVminD_MCs_ChNbNumber = new TGTextBuffer(); fCnew++;
2320  fVminD_MCs_ChNbText->SetToolTipText("Click and enter ymin");
2321  fVminD_MCs_ChNbText->Resize(minmax_buf_lenght, fVminD_MCs_ChNbText->GetDefaultHeight());
2323  fVminD_MCs_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_MCs_ChNb()");
2325  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2328  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2330 
2331  //...................................... Frame for Mean cor(s,s')
2332  TString xMenuD_MCs_ChNb = " Mean cor(s,s') ";
2333  fMenuD_MCs_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2334  fMenuD_MCs_ChNb->AddEntry(xHistoChannels,fMenuD_MCs_ChNbFullC);
2335  fMenuD_MCs_ChNb->AddEntry(xHistoChannelsSame,fMenuD_MCs_ChNbSameC);
2336  fMenuD_MCs_ChNb->AddEntry(xHistoChannelsSameP,fMenuD_MCs_ChNbSamePC);
2337  fMenuD_MCs_ChNb->AddSeparator();
2338  fMenuD_MCs_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_MCs_ChNbHocoVecoC);
2339  fMenuD_MCs_ChNb->AddSeparator();
2340  fMenuD_MCs_ChNb->AddEntry(xAsciiFileStex,fMenuD_MCs_ChNbAsciiFileC);
2341  fMenuD_MCs_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2342  fMenuBarD_MCs_ChNb = new TGMenuBar(fVmmD_MCs_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2343  fMenuBarD_MCs_ChNb->AddPopup(xMenuD_MCs_ChNb, fMenuD_MCs_ChNb, fLayoutGeneral);
2344  fLayoutMenuBarD_MCs_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2346 
2348  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2350 
2351  //########################################### Composite frame for SIG OF COR(s,s')
2352  fVmmD_SCs_ChNbFrame = new TGCompositeFrame
2353  (fStexHozFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2354 
2355  //...................................... Menu sig of Corss
2356  //...................................... Frame for Ymax
2357  fVmaxD_SCs_ChNbFrame = new TGCompositeFrame
2358  (fVmmD_SCs_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2359  //...................................... Button Max + Entry field
2360  fVmaxD_SCs_ChNbBut = new TGTextButton(fVmaxD_SCs_ChNbFrame, xYmaxButText); fCnew++;
2361  fVmaxD_SCs_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxD_SCs_ChNb()");
2362  fVmaxD_SCs_ChNbBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2363  fVmaxD_SCs_ChNbBut->SetBackgroundColor(SubDetColor);
2365  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2367  fEntryVmaxD_SCs_ChNbNumber = new TGTextBuffer(); fCnew++;
2369  fVmaxD_SCs_ChNbText->SetToolTipText("Click and enter ymax");
2370  fVmaxD_SCs_ChNbText->Resize(minmax_buf_lenght, fVmaxD_SCs_ChNbText->GetDefaultHeight());
2372  fVmaxD_SCs_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxD_SCs_ChNb()");
2374  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2377  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2379 
2380  //...................................... Frame for Ymin
2381  fVminD_SCs_ChNbFrame = new TGCompositeFrame
2382  (fVmmD_SCs_ChNbFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2383  //...................................... Button Min + Entry field
2384  fVminD_SCs_ChNbBut = new TGTextButton(fVminD_SCs_ChNbFrame, xYminButText); fCnew++;
2385  fVminD_SCs_ChNbBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminD_SCs_ChNb()");
2386  fVminD_SCs_ChNbBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2387  fVminD_SCs_ChNbBut->SetBackgroundColor(SubDetColor);
2389  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2391  fEntryVminD_SCs_ChNbNumber = new TGTextBuffer(); fCnew++;
2393  fVminD_SCs_ChNbText->SetToolTipText("Click and enter ymin");
2394  fVminD_SCs_ChNbText->Resize(minmax_buf_lenght, fVminD_SCs_ChNbText->GetDefaultHeight());
2396  fVminD_SCs_ChNbText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminD_SCs_ChNb()");
2398  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2401  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2403 
2404  //...................................... Frame
2405  TString xMenuD_SCs_ChNb = " Sigma of cor(s,s') ";
2406  fMenuD_SCs_ChNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2407  fMenuD_SCs_ChNb->AddEntry(xHistoChannels,fMenuD_SCs_ChNbFullC);
2408  fMenuD_SCs_ChNb->AddEntry(xHistoChannelsSame,fMenuD_SCs_ChNbSameC);
2409  fMenuD_SCs_ChNb->AddEntry(xHistoChannelsSameP,fMenuD_SCs_ChNbSamePC);
2410  fMenuD_SCs_ChNb->AddSeparator();
2411  fMenuD_SCs_ChNb->AddEntry(xHocoVecoViewSorS,fMenuD_SCs_ChNbHocoVecoC);
2412  fMenuD_SCs_ChNb->AddSeparator();
2413  fMenuD_SCs_ChNb->AddEntry(xAsciiFileStex,fMenuD_SCs_ChNbAsciiFileC);
2414  fMenuD_SCs_ChNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2415  fMenuBarD_SCs_ChNb = new TGMenuBar(fVmmD_SCs_ChNbFrame, 1, 1, kHorizontalFrame); fCnew++;
2416  fMenuBarD_SCs_ChNb->AddPopup(xMenuD_SCs_ChNb, fMenuD_SCs_ChNb, fLayoutGeneral);
2417  fLayoutMenuBarD_SCs_ChNb = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2419 
2421  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2423 
2424  //######################################################################################################"
2425 
2426  //------------------------------------------- subframe
2428  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1, xB1, xB1, xB1); fCnew++;
2430  AddFrame(fVoidFrame, fLayoutGeneral);
2431 
2432  //########################################### Composite frame corcc in Stins
2433  fVmmLHFccFrame = new TGCompositeFrame
2434  (fStexUpFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2435 
2436  //............ Menu Low and High Frequency correlations between channels for each Stin of Stex
2437  //...................................... Frame for Ymax
2438  fVmaxLHFccFrame = new TGCompositeFrame
2439  (fVmmLHFccFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2440  //...................................... Button Max + Entry field
2441  fVmaxLHFccBut = new TGTextButton(fVmaxLHFccFrame, xYmaxButText); fCnew++;
2442  fVmaxLHFccBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxLHFcc()");
2443  fVmaxLHFccBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2444  fVmaxLHFccBut->SetBackgroundColor(SubDetColor);
2446  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2448  fEntryVmaxLHFccNumber = new TGTextBuffer(); fCnew++;
2449  fVmaxLHFccText = new TGTextEntry(fVmaxLHFccFrame, fEntryVmaxLHFccNumber); fCnew++;
2450  fVmaxLHFccText->SetToolTipText("Click and enter ymax");
2451  fVmaxLHFccText->Resize(minmax_buf_lenght, fVmaxLHFccText->GetDefaultHeight());
2453  fVmaxLHFccText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxLHFcc()");
2454 
2456  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2459  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2461 
2462  //...................................... Frame for Ymin
2463  fVminLHFccFrame = new TGCompositeFrame
2464  (fVmmLHFccFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2465  //...................................... Button Min + Entry field
2466  fVminLHFccBut = new TGTextButton(fVminLHFccFrame, xYminButText); fCnew++;
2467  fVminLHFccBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminLHFcc()");
2468  fVminLHFccBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2469  fVminLHFccBut->SetBackgroundColor(SubDetColor);
2471  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2473  fEntryVminLHFccNumber = new TGTextBuffer(); fCnew++;
2474  fVminLHFccText = new TGTextEntry(fVminLHFccFrame, fEntryVminLHFccNumber); fCnew++;
2475  fVminLHFccText->SetToolTipText("Click and enter ymin");
2476  fVminLHFccText->Resize(minmax_buf_lenght, fVminLHFccText->GetDefaultHeight());
2478  fVminLHFccText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminLHFcc()");
2480  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2483  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2485 
2486  //........................................... Frame
2487  TString xMenuLHFcc = "GeoView LF,HF Cor(c,c') (expert)";
2488  TString xLFccViewSorS;
2489  if( fSubDet == "EB" ){xLFccViewSorS = "Low Frequency Cor(c,c'), tower place -> Cor matrix";}
2490  if( fSubDet == "EE" ){xLFccViewSorS = "Low Frequency Cor(c,c'), SC place -> Cor matrix";}
2491  TString xHFccViewSorS;
2492  if( fSubDet == "EB" ){xHFccViewSorS = "High Frequency Cor(c,c'), tower place -> Cor matrix";}
2493  if( fSubDet == "EE" ){xHFccViewSorS = "High Frequency Cor(c,c'), SC place -> Cor matrix";}
2494 
2495  fMenuLHFcc = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2496  fMenuLHFcc->AddEntry(xLFccViewSorS,fMenuLFccColzC);
2497  fMenuLHFcc->AddEntry(xHFccViewSorS,fMenuHFccColzC);
2498  fMenuLHFcc->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2499  fMenuBarLHFcc = new TGMenuBar(fVmmLHFccFrame, 1, 1, kHorizontalFrame); fCnew++;
2500  fMenuBarLHFcc->AddPopup(xMenuLHFcc, fMenuLHFcc, fLayoutGeneral);
2501  fLayoutMenuBarLHFcc = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2504  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2506 
2507  //################################# Composite frame Low Freq Cor(c,c') for each pair of Stins
2508  fVmmLFccMosFrame = new TGCompositeFrame
2509  (fStexUpFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2510 
2511  //...................................... Menu correlations between Stins
2512  //...................................... Frame
2513  fVmaxLFccMosFrame = new TGCompositeFrame
2514  (fVmmLFccMosFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2515  //...................................... Button Max + Entry field
2516  fVmaxLFccMosBut = new TGTextButton(fVmaxLFccMosFrame, xYmaxButText); fCnew++;
2517  fVmaxLFccMosBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxLFccMos()");
2518  fVmaxLFccMosBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2519  fVmaxLFccMosBut->SetBackgroundColor(SubDetColor);
2521  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2523  fEntryVmaxLFccMosNumber = new TGTextBuffer(); fCnew++;
2524  fVmaxLFccMosText = new TGTextEntry(fVmaxLFccMosFrame, fEntryVmaxLFccMosNumber); fCnew++;
2525  fVmaxLFccMosText->SetToolTipText("Click and enter ymax");
2526  fVmaxLFccMosText->Resize(minmax_buf_lenght, fVmaxLFccMosText->GetDefaultHeight());
2528  fVmaxLFccMosText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxLFccMos()");
2529 
2531  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2534  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2536 
2537  //...................................... Frame for Ymin
2538  fVminLFccMosFrame = new TGCompositeFrame
2539  (fVmmLFccMosFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2540  //...................................... Button Min + Entry field
2541  fVminLFccMosBut = new TGTextButton(fVminLFccMosFrame, xYminButText); fCnew++;
2542  fVminLFccMosBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminLFccMos()");
2543  fVminLFccMosBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2544  fVminLFccMosBut->SetBackgroundColor(SubDetColor);
2546  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2548  fEntryVminLFccMosNumber = new TGTextBuffer(); fCnew++;
2549  fVminLFccMosText = new TGTextEntry(fVminLFccMosFrame, fEntryVminLFccMosNumber); fCnew++;
2550  fVminLFccMosText->SetToolTipText("Click and enter ymin");
2551  fVminLFccMosText->Resize(minmax_buf_lenght, fVminLFccMosText->GetDefaultHeight());
2553  fVminLFccMosText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminLFccMos()");
2555  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2558  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2560 
2561  //...................................... Frame
2562  TString xMenuLFccMos;
2563  if( fSubDet == "EB" ){xMenuLFccMos = "Mean LF |Cor(c,c')| in (tow,tow')";}
2564  if( fSubDet == "EE" ){xMenuLFccMos = "Mean LF |Cor(c,c')| in (SC,SC')";}
2565 
2566  fMenuLFccMos = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2567  fMenuLFccMos->AddEntry("2D, COLZ ",fMenuLFccMosColzC);
2568  fMenuLFccMos->AddEntry("3D, LEGO2Z" ,fMenuLFccMosLegoC);
2569  fMenuLFccMos->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2570  fMenuBarLFccMos = new TGMenuBar(fVmmLFccMosFrame, 1, 1, kHorizontalFrame); fCnew++;
2571  fMenuBarLFccMos->AddPopup(xMenuLFccMos, fMenuLFccMos, fLayoutGeneral);
2572  fLayoutMenuBarLFccMos = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2575  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2577 
2578  //################################# Composite frame High Freq Cor(c,c') for each pair of Stins
2579  fVmmHFccMosFrame = new TGCompositeFrame
2580  (fStexUpFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2581 
2582  //...................................... Menu correlations between Stins
2583  //...................................... Frame
2584  fVmaxHFccMosFrame = new TGCompositeFrame
2585  (fVmmHFccMosFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2586  //...................................... Button Max + Entry field
2587  fVmaxHFccMosBut = new TGTextButton(fVmaxHFccMosFrame, xYmaxButText); fCnew++;
2588  fVmaxHFccMosBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVmaxHFccMos()");
2589  fVmaxHFccMosBut->SetToolTipText("Click here to register ymax for the display of the quantity");
2590  fVmaxHFccMosBut->SetBackgroundColor(SubDetColor);
2592  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2594  fEntryVmaxHFccMosNumber = new TGTextBuffer(); fCnew++;
2595  fVmaxHFccMosText = new TGTextEntry(fVmaxHFccMosFrame, fEntryVmaxHFccMosNumber); fCnew++;
2596  fVmaxHFccMosText->SetToolTipText("Click and enter ymax");
2597  fVmaxHFccMosText->Resize(minmax_buf_lenght, fVmaxHFccMosText->GetDefaultHeight());
2599  fVmaxHFccMosText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVmaxHFccMos()");
2600 
2602  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2605  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2607 
2608  //...................................... Frame for Ymin
2609  fVminHFccMosFrame = new TGCompositeFrame
2610  (fVmmHFccMosFrame,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
2611  //...................................... Button Min + Entry field
2612  fVminHFccMosBut = new TGTextButton(fVminHFccMosFrame, xYminButText); fCnew++;
2613  fVminHFccMosBut->Connect("Clicked()","TEcnaGui", this, "DoButtonVminHFccMos()");
2614  fVminHFccMosBut->SetToolTipText("Click here to register ymin for the display of the quantity");
2615  fVminHFccMosBut->SetBackgroundColor(SubDetColor);
2617  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2619  fEntryVminHFccMosNumber = new TGTextBuffer(); fCnew++;
2620  fVminHFccMosText = new TGTextEntry(fVminHFccMosFrame, fEntryVminHFccMosNumber); fCnew++;
2621  fVminHFccMosText->SetToolTipText("Click and enter ymin");
2622  fVminHFccMosText->Resize(minmax_buf_lenght, fVminHFccMosText->GetDefaultHeight());
2624  fVminHFccMosText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonVminHFccMos()");
2626  new TGLayoutHints(kLHintsBottom | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2629  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2631 
2632  //...................................... Frame
2633  TString xMenuHFccMos;
2634  if( fSubDet == "EB" ){xMenuHFccMos = "Mean HF |Cor(c,c')| in (tow,tow')";}
2635  if( fSubDet == "EE" ){xMenuHFccMos = "Mean HF |Cor(c,c')| in (SC,SC')";}
2636 
2637  fMenuHFccMos = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2638  fMenuHFccMos->AddEntry("2D, COLZ ",fMenuHFccMosColzC);
2639  fMenuHFccMos->AddEntry("3D, LEGO2Z" ,fMenuHFccMosLegoC);
2640  fMenuHFccMos->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2641  fMenuBarHFccMos = new TGMenuBar(fVmmHFccMosFrame, 1, 1, kHorizontalFrame); fCnew++;
2642  fMenuBarHFccMos->AddPopup(xMenuHFccMos, fMenuHFccMos, fLayoutGeneral);
2643  fLayoutMenuBarHFccMos = new TGLayoutHints(kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2646  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1); fCnew++;
2648 
2649 
2650  //======================================= "Stex" frame =====================================
2652  new TGLayoutHints(kLHintsTop | kLHintsCenterX, xB1, xB1, xB1, xB1); fCnew++;
2653  AddFrame(fStexUpFrame, fLayoutStexUpFrame);
2654 
2655  AddFrame(fVoidFrame, fLayoutGeneral);
2656 
2657  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2658  //
2659  // SECTOR 3: Stin's
2660  //
2661  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2662 
2663  //-------------------------------- Stin A & Stin B FRAME
2664  fStinSpFrame =
2665  new TGCompositeFrame(this,60,20,kHorizontalFrame,
2666  GetDefaultFrameBackground()); fCnew++;
2667 
2668  TString xStinAButText = "?";
2669  TString xStinBButText = "?";
2670  Int_t Stin_buf_lenght = 10;
2671 
2672  if ( fSubDet == "EB" )
2673  {xStinAButText = " Tower# [1,68] "; xStinBButText = " Tower'# [1,68] "; Stin_buf_lenght = 50;}
2674  if ( fSubDet == "EE" && ( fKeyStexNumber == 1 || fKeyStexNumber == 3 ) )
2675  {xStinAButText = "SC# for const. [150,298] "; xStinBButText = "SC'# for const. [150,298] "; Stin_buf_lenght = 50;}
2676  if ( fSubDet == "EE" && ( fKeyStexNumber == 2 || fKeyStexNumber == 4 ) )
2677  {xStinAButText = "SC# for const. [ 1,149] "; xStinBButText = "SC'# for const. [ 1,149] "; Stin_buf_lenght = 50;}
2678 
2679  //============================= STIN A =====================================
2680  TString xStinNumberText;
2681  if ( fSubDet == "EB" )
2682  {xStinNumberText = "Click here to register the tower number written on the right";}
2683  if ( fSubDet == "EE" )
2684  {xStinNumberText = "Click here to register the SC number written on the right";}
2685 
2686  TString xStinNumberValue;
2687  if ( fSubDet == "EB" )
2688  {xStinNumberValue = "Click and enter the tower number";}
2689  if ( fSubDet == "EE" )
2690  {xStinNumberValue = "Click and enter the SC number";}
2691 
2692  fTxSubFrame = new TGCompositeFrame
2693  (fStinSpFrame,60,20,kVerticalFrame, GetDefaultFrameBackground()); fCnew++;
2694 
2695  fStinAFrame = new TGCompositeFrame
2696  (fTxSubFrame,60,20,kHorizontalFrame,kSunkenFrame); fCnew++;
2697 
2698  fStinABut = new TGTextButton(fStinAFrame, xStinAButText, fStinAButC); fCnew++;
2699  fStinABut->Connect("Clicked()","TEcnaGui", this, "DoButtonStinA()");
2700  fStinABut->SetToolTipText(xStinNumberText);
2701  fStinABut->Resize(Stin_buf_lenght, fStinABut->GetDefaultHeight());
2702  fStinABut->SetBackgroundColor(SubDetColor);
2703  fLayoutStinABut =
2704  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2706 
2707  fEntryStinANumber = new TGTextBuffer(); fCnew++;
2708  fStinAText = new TGTextEntry(fStinAFrame, fEntryStinANumber); fCnew++;
2709  fStinAText->SetToolTipText(xStinNumberValue);
2710  fStinAText->Resize(Stin_buf_lenght, fStinAText->GetDefaultHeight());
2711 
2712  Int_t StinAValue = 0;
2713  if( fSubDet == "EB"){StinAValue = fKeyStinANumber;}
2714  if( fSubDet == "EE" && fKeyStexNumber != 0 )
2716  DisplayInEntryField(fStinAText,StinAValue);
2717 
2718  fStinAText->Connect("ReturnPressed()", "TEcnaGui",this, "DoButtonStinA()");
2720  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1 ); fCnew++;
2723 
2724  //========================== STIN A CRYSTAL NUMBERING VIEW
2725  TString xChNbButText;
2726  if ( fSubDet == "EB" ){xChNbButText = "Tower Xtal Numbering ";}
2727  if ( fSubDet == "EE" ){xChNbButText = " SC Xtal Numbering ";}
2728 
2729  fButChNb = new TGTextButton(fTxSubFrame, xChNbButText, fButChNbC); fCnew++;
2730  fButChNb->Connect("Clicked()","TEcnaGui", this, "DoButtonChNb()");
2731  fButChNb->SetBackgroundColor(SubDetColor);
2732  fLayoutChNbBut =
2733  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
2734  fTxSubFrame->AddFrame(fButChNb, fLayoutChNbBut);
2735 
2736  //---------------- menus relative to the Stin A subframe
2737 
2738  //===================== Menus relative to the Stin A ======================
2739  TString xMenuBarCorGlob;
2740  if ( fSubDet == "EB" ){xMenuBarCorGlob = " GeoView Cor(s,s') (expert)";}
2741  if ( fSubDet == "EE" ){xMenuBarCorGlob = " GeoView Cor(s,s') (expert)";}
2742 
2743  TString xMenuBarCovGlob;
2744  if ( fSubDet == "EB" ){xMenuBarCovGlob = " GeoView Cov(s,s') (expert)";}
2745  if ( fSubDet == "EE" ){xMenuBarCovGlob = " GeoView Cov(s,s') (expert)";}
2746 
2747  //................. Menu correlations between samples for all the channels. Global view
2748  fMenuCorssAll = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2749  fMenuCorssAll->AddEntry(" Cor(s,s'), Xtal place -> Cor matrix",fMenuCorssAllColzC);
2750  fMenuCorssAll->AddEntry(" Cov(s,s'), Xtal place -> Cov matrix",fMenuCovssAllColzC);
2751  fMenuCorssAll->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2752  fMenuBarCorssAll = new TGMenuBar(fTxSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2753  fMenuBarCorssAll->AddPopup(xMenuBarCorGlob, fMenuCorssAll, fLayoutGeneral);
2755 
2756  //................. Menu covariances between samples for all the channels. Global view
2757  //fMenuCovssAll = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2758  //fMenuCovssAll->AddEntry(" Cov(s,s'), Xtal place -> Cov matrix",fMenuCovssAllColzC);
2759  //fMenuCovssAll->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2760  //fMenuBarCovssAll = new TGMenuBar(fTxSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2761  //fMenuBarCovssAll->AddPopup(xMenuBarCovGlob, fMenuCovssAll, fLayoutGeneral);
2762  //fTxSubFrame->AddFrame(fMenuBarCovssAll, fLayoutTopLeft);
2763 
2764  //------------------ Add Stin A frame to the subframe
2766  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
2768 
2769  //============================= STIN B =====================================
2770  fTySubFrame = new TGCompositeFrame
2771  (fStinSpFrame,60,20,kVerticalFrame, GetDefaultFrameBackground()); fCnew++;
2772 
2773  fStinBFrame = new TGCompositeFrame
2774  (fTySubFrame,60,20,kHorizontalFrame,kSunkenFrame); fCnew++;
2775 
2776  fStinBBut =
2777  new TGTextButton(fStinBFrame, xStinBButText, fStinBButC); fCnew++;
2778  fStinBBut->Connect("Clicked()","TEcnaGui", this, "DoButtonStinB()");
2779  fStinBBut->SetToolTipText(xStinNumberText);
2780  fStinBBut->Resize(Stin_buf_lenght, fStinBBut->GetDefaultHeight());
2781  fStinBBut->SetBackgroundColor(SubDetColor);
2782  fLayoutStinBBut = new TGLayoutHints(kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2784 
2785  fEntryStinBNumber = new TGTextBuffer(); fCnew++;
2786  fStinBText = new TGTextEntry(fStinBFrame, fEntryStinBNumber); fCnew++;
2787  fStinBText->SetToolTipText(xStinNumberValue);
2788  fStinBText->Resize(Stin_buf_lenght, fStinBText->GetDefaultHeight());
2789 
2790  Int_t StinBValue = 0;
2791  if( fSubDet == "EB"){StinBValue = fKeyStinBNumber;}
2792  if( fSubDet == "EE" && fKeyStexNumber != 0 )
2794  DisplayInEntryField(fStinBText, StinBValue);
2795 
2796  fStinBText->Connect("ReturnPressed()", "TEcnaGui",this, "DoButtonStinB()");
2798  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1 ); fCnew++;
2801 
2802  //---------------- menus relative to the Stin B subframe
2803 
2804  // (no such menus )
2805 
2806  //------------------ Add Stin B subframe to the frame
2807  fLayoutTySubFrame = new TGLayoutHints
2808  (kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
2809 
2811 
2812  //---------------------- composite frame (Stin X, Stin Y)
2813  fLayoutStinSpFrame = new TGLayoutHints
2814  (kLHintsTop | kLHintsCenterX, xB1, xB1, xB1, xB1); fCnew++;
2815  AddFrame(fStinSpFrame, fLayoutStinSpFrame);
2816 
2817  //------------------ menus relatives to the Horizontal frame (Stin_A + Stin_B)
2818  TString xMenuBarLFCorcc;
2819  if ( fSubDet == "EB" ){xMenuBarLFCorcc = " Low Frequency Cor(Xtal tower, Xtal tower')";}
2820  if ( fSubDet == "EE" ){xMenuBarLFCorcc = " Low Frequency Cor(Xtal SC, Xtal SC')";}
2821 
2822  TString xMenuBarHFCorcc;
2823  if ( fSubDet == "EB" ){xMenuBarHFCorcc = " High Frequency Cor(Xtal tower, Xtal tower')";}
2824  if ( fSubDet == "EE" ){xMenuBarHFCorcc = " High Frequency Cor(Xtal SC, Xtal SC')";}
2825 
2826  //...................... Menu LF correlations between channels
2827  fMenuLFCorcc = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2828  fMenuLFCorcc->AddEntry("2D, COLZ",fMenuLFCorccColzC);
2829  fMenuLFCorcc->AddSeparator();
2830  fMenuLFCorcc->AddEntry("3D, LEGO2Z",fMenuLFCorccLegoC);
2831  fMenuLFCorcc->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2832  fMenuBarLFCorcc = new TGMenuBar(this, 1, 1, kHorizontalFrame); fCnew++;
2833  fMenuBarLFCorcc->AddPopup(xMenuBarLFCorcc, fMenuLFCorcc, fLayoutTopRight);
2834  AddFrame(fMenuBarLFCorcc, fLayoutGeneral);
2835 
2836  //...................... Menu HF correlations between channels
2837  fMenuHFCorcc = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2838  fMenuHFCorcc->AddEntry("2D, COLZ",fMenuHFCorccColzC);
2839  fMenuHFCorcc->AddSeparator();
2840  fMenuHFCorcc->AddEntry("3D, LEGO2Z",fMenuHFCorccLegoC);
2841  fMenuHFCorcc->Connect("Activated(Int_t)", "TEcnaGui", this,"HandleMenu(Int_t)");
2842  fMenuBarHFCorcc = new TGMenuBar(this, 1, 1, kHorizontalFrame); fCnew++;
2843  fMenuBarHFCorcc->AddPopup(xMenuBarHFCorcc, fMenuHFCorcc, fLayoutTopRight);
2844  AddFrame(fMenuBarHFCorcc, fLayoutGeneral);
2845 
2846  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2847  //
2848  // SECTOR 4: Channels, Samples
2849  //
2850  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2851 
2852  fChSpFrame = new TGCompositeFrame(this,60,20,kHorizontalFrame,
2853  GetDefaultFrameBackground()); fCnew++;
2854 
2855  TString xChanButText;
2856  if ( fSubDet == "EB" ){xChanButText = " Channel# in tower [0,24] ";}
2857  if ( fSubDet == "EE" ){xChanButText = " Crystal# in SC [1,25] ";}
2858 
2859  TString xSampButText = " Sample# [1,10] ";
2860 
2861  Int_t chan_buf_lenght = 50;
2862  Int_t samp_buf_lenght = 50;
2863 
2864  TString xMenuBarCorss = " Correlations between samples";
2865  TString xMenuBarCovss = " Covariances between samples";
2866  TString xMenuBarEvs = " Sample means";
2867  TString xMenuBarSigs = " Sample sigmas";
2868 
2869  //=================================== CHANNEL (CRYSTAL)
2870  fChSubFrame = new TGCompositeFrame
2871  (fChSpFrame,60,20,kVerticalFrame, GetDefaultFrameBackground()); fCnew++;
2872 
2873  fChanFrame = new TGCompositeFrame
2874  (fChSubFrame,60,20,kHorizontalFrame,kSunkenFrame); fCnew++;
2875 
2876  fChanBut =
2877  new TGTextButton(fChanFrame, xChanButText, fChanButC); fCnew++;
2878  fChanBut->Connect("Clicked()","TEcnaGui", this, "DoButtonChan()");
2879  fChanBut->SetToolTipText("Click here to register the channel number written to the right");
2880  fChanBut->Resize(chan_buf_lenght, fChanBut->GetDefaultHeight());
2881  fChanBut->SetBackgroundColor(SubDetColor);
2882  fLayoutChanBut = new TGLayoutHints(kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2883  fChanFrame->AddFrame(fChanBut, fLayoutChanBut);
2884 
2885  fEntryChanNumber = new TGTextBuffer(); fCnew++;
2886  fChanText = new TGTextEntry(fChanFrame, fEntryChanNumber); fCnew++;
2887  fChanText->SetToolTipText("Click and enter the channel number");
2888  fChanText->Resize(chan_buf_lenght, fChanText->GetDefaultHeight());
2889 
2890  Int_t xReadChanNumber = 0;
2891  if( fSubDet == "EB" ){xReadChanNumber = 0;} // offset = 0 (EB: electronic channel number)
2892  if( fSubDet == "EE" ){xReadChanNumber = 1;} // offset = +1 (EE: xtal number for construction)
2893  DisplayInEntryField(fChanText, xReadChanNumber);
2894 
2895  fChanText->Connect("ReturnPressed()", "TEcnaGui",this, "DoButtonChan()");
2897  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1 ); fCnew++;
2900 
2901  //--------------------- Menus relative to the channel SubFrame -------------
2902  //...................... Menu correlations between samples
2903 
2904  fMenuCorss = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2905  fMenuCorss->AddEntry("2D, COLZ", fMenuCorssColzC);
2906  fMenuCorss->AddEntry("2D, BOX", fMenuCorssBoxC);
2907  fMenuCorss->AddEntry("2D, TEXT", fMenuCorssTextC);
2908  fMenuCorss->AddEntry("2D, CONTZ",fMenuCorssContzC);
2909  fMenuCorss->AddSeparator();
2910  fMenuCorss->AddEntry("3D, LEGO2Z",fMenuCorssLegoC);
2911  fMenuCorss->AddEntry("3D, SURF1Z",fMenuCorssSurf1C);
2912  fMenuCorss->AddEntry("3D, SURF2Z",fMenuCorssSurf2C);
2913  fMenuCorss->AddEntry("3D, SURF3Z",fMenuCorssSurf3C);
2914  fMenuCorss->AddEntry("3D, SURF4" ,fMenuCorssSurf4C);
2915  fMenuCorss->AddSeparator();
2916  fMenuCorss->AddEntry("2D, Write in ASCII file",fMenuCorssAsciiFileC);
2917  fMenuCorss->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2918  fMenuBarCorss = new TGMenuBar(fChSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2919  fMenuBarCorss->AddPopup(xMenuBarCorss, fMenuCorss, fLayoutTopLeft);
2921 
2922  //...................... Menu covariances between samples
2923 
2924  fMenuCovss = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2925  fMenuCovss->AddEntry("2D, COLZ", fMenuCovssColzC);
2926  fMenuCovss->AddEntry("2D, BOX", fMenuCovssBoxC);
2927  fMenuCovss->AddEntry("2D, TEXT", fMenuCovssTextC);
2928  fMenuCovss->AddEntry("2D, CONTZ",fMenuCovssContzC);
2929  fMenuCovss->AddSeparator();
2930  fMenuCovss->AddEntry("3D, LEGO2Z",fMenuCovssLegoC);
2931  fMenuCovss->AddEntry("3D, SURF1Z",fMenuCovssSurf1C);
2932  fMenuCovss->AddEntry("3D, SURF2Z",fMenuCovssSurf2C);
2933  fMenuCovss->AddEntry("3D, SURF3Z",fMenuCovssSurf3C);
2934  fMenuCovss->AddEntry("3D, SURF4" ,fMenuCovssSurf4C);
2935  fMenuCovss->AddSeparator();
2936  fMenuCovss->AddEntry("2D, Write in ASCII file",fMenuCovssAsciiFileC);
2937  fMenuCovss->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2938  fMenuBarCovss = new TGMenuBar(fChSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2939  fMenuBarCovss->AddPopup(xMenuBarCovss, fMenuCovss, fLayoutTopLeft);
2941 
2942  //...................... Menu expectation values of the samples
2943 
2944  fMenuD_MSp_SpNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2945  fMenuD_MSp_SpNb->AddEntry("1D Histo ",fMenuD_MSp_SpNbLineFullC);
2946  fMenuD_MSp_SpNb->AddEntry("1D Histo SAME",fMenuD_MSp_SpNbLineSameC);
2947  fMenuD_MSp_SpNb->AddEntry("1D Histo 25 Xtals",fMenuD_MSp_SpNbLineAllStinC);
2948  fMenuD_MSp_SpNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2949  fMenuBarD_MSp_SpNb = new TGMenuBar(fChSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2950  fMenuBarD_MSp_SpNb->AddPopup(xMenuBarEvs, fMenuD_MSp_SpNb, fLayoutTopLeft);
2952 
2953  //...................... Menu sigmas/variances of the samples
2954 
2955  fMenuD_SSp_SpNb = new TGPopupMenu(gClient->GetRoot()); fCnew++;
2956  fMenuD_SSp_SpNb->AddEntry("1D Histo ",fMenuD_SSp_SpNbLineFullC);
2957  fMenuD_SSp_SpNb->AddEntry("1D Histo SAME",fMenuD_SSp_SpNbLineSameC);
2958  fMenuD_SSp_SpNb->AddEntry("1D Histo 25 Xtals",fMenuD_SSp_SpNbLineAllStinC);
2959  fMenuD_SSp_SpNb->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
2960  fMenuBarD_SSp_SpNb = new TGMenuBar(fChSubFrame, 1, 1, kHorizontalFrame); fCnew++;
2961  fMenuBarD_SSp_SpNb->AddPopup(xMenuBarSigs, fMenuD_SSp_SpNb, fLayoutTopLeft);
2963 
2964  //------------------ Add Channel subframe to the frame
2965  fLayoutChSubFrame = new TGLayoutHints
2966  (kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
2968 
2969  //=================================== SAMPLE
2970  fSpSubFrame = new TGCompositeFrame
2971  (fChSpFrame,60,20,kVerticalFrame, GetDefaultFrameBackground()); fCnew++;
2972 
2973  fSampFrame = new TGCompositeFrame
2974  (fSpSubFrame,60,20,kHorizontalFrame, kSunkenFrame); fCnew++;
2975 
2976  fSampBut = new TGTextButton(fSampFrame, xSampButText, fSampButC); fCnew++;
2977  fSampBut->Connect("Clicked()","TEcnaGui", this, "DoButtonSamp()");
2978  fSampBut->SetToolTipText("Click here to register the sample number written to the right");
2979  fSampBut->Resize(samp_buf_lenght, fSampBut->GetDefaultHeight());
2980  fSampBut->SetBackgroundColor(SubDetColor);
2981  fLayoutSampBut =
2982  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
2983  fSampFrame->AddFrame(fSampBut, fLayoutSampBut);
2984 
2985  fEntrySampNumber = new TGTextBuffer(); fCnew++;
2986  fSampText = new TGTextEntry(fSampFrame, fEntrySampNumber); fCnew++;
2987  fSampText->SetToolTipText("Click and enter the sample number");
2988  fSampText->Resize(samp_buf_lenght, fSampText->GetDefaultHeight());
2989  Int_t xKeySampNumber = fKeySampNumber+1;
2990  DisplayInEntryField(fSampText, xKeySampNumber);
2991  fSampText->Connect("ReturnPressed()", "TEcnaGui",this, "DoButtonSamp()");
2993  new TGLayoutHints(kLHintsTop | kLHintsRight, xB1,xB1,xB1,xB1 ); fCnew++;
2995 
2997 
2998  fLayoutSpSubFrame = new TGLayoutHints
2999  (kLHintsTop | kLHintsRight, xB1, xB1, xB1, xB1); fCnew++;
3001 
3002  //---------------------- composite frame (channel/sample+menus)
3003  fLayoutChSpFrame = new TGLayoutHints
3004  (kLHintsTop | kLHintsCenterX, xB1, xB1, xB1, xB1); fCnew++;
3005  AddFrame(fChSpFrame, fLayoutChSpFrame);
3006 
3007  //====================== Menu histogram of the distribution
3008  // for a given (channel, sample)
3009  fMenuAdcProj = new TGPopupMenu(gClient->GetRoot()); fCnew++;
3010  fMenuAdcProj->AddEntry("1D Histo ",fMenuAdcProjSampLineFullC);
3011  fMenuAdcProj->AddEntry("1D Histo SAME",fMenuAdcProjSampLineSameC);
3012  fMenuAdcProj->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
3013 
3014  fMenuBarAdcProj = new TGMenuBar(this, 1, 1, kHorizontalFrame); fCnew++;
3015 
3016  TString xEvtDistrib;
3017  xEvtDistrib = "ADC sample values for (Xtal, Sample)";
3018 
3019  fMenuBarAdcProj->AddPopup(xEvtDistrib, fMenuAdcProj, fLayoutGeneral);
3020 
3022  new TGLayoutHints(kLHintsCenterX, xB1,xB1,xB1,xB1); fCnew++;
3024 
3025  AddFrame(fVoidFrame, fLayoutGeneral);
3026 
3027  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3028  //
3029  // SECTOR 5: Time Evolution / history plots
3030  //
3031  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3032  TString xRunListButText = " List of run file name for history plots ";
3033  Int_t run_list_buf_lenght = 170;
3034 
3035  fRulFrame = new TGCompositeFrame(this,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
3036 
3037  fRulBut= new TGTextButton(fRulFrame, xRunListButText); fCnew++;
3038  fRulBut->Connect("Clicked()","TEcnaGui", this, "DoButtonRul()");
3039  fRulBut->SetToolTipText
3040  ("Click here to register the name of the file \n containing the run list (written on the right)");
3041  fRulBut->SetBackgroundColor(SubDetColor);
3042  fLayoutRulBut =
3043  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3044  fRulFrame->AddFrame(fRulBut, fLayoutRulBut);
3045 
3046  fEntryRulNumber = new TGTextBuffer(); fCnew++;
3047  fRulText = new TGTextEntry(fRulFrame, fEntryRulNumber); fCnew++;
3048  fRulText->SetToolTipText("Click and enter the name of the file \n containing the run list");
3049  fRulText->Resize(run_list_buf_lenght, fRulText->GetDefaultHeight());
3050  fRulText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonRul()");
3052  new TGLayoutHints(kLHintsBottom | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3054 
3056  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3057  AddFrame(fRulFrame, fLayoutRulFieldFrame);
3058 
3059  //...................... Menu history plot (evolution in time)
3060  TString xMenuBarHistory = " Menu for history plots";
3061  fMenuHistory = new TGPopupMenu(gClient->GetRoot()); fCnew++;
3062  fMenuHistory->AddEntry("1D, Pedestals ",fMenuH_Ped_DatePolmFullC);
3063  fMenuHistory->AddEntry("1D, Pedestals SAME",fMenuH_Ped_DatePolmSameC);
3064  fMenuHistory->AddSeparator();
3065  fMenuHistory->AddEntry("1D, Total Noise ",fMenuH_TNo_DatePolmFullC);
3066  fMenuHistory->AddEntry("1D, Total Noise SAME",fMenuH_TNo_DatePolmSameC);
3067  fMenuHistory->AddEntry("1D, Total Noise SAME n",fMenuH_TNo_DatePolmSamePC);
3068  fMenuHistory->AddSeparator();
3069  fMenuHistory->AddEntry("1D, Low Frequency Noise ",fMenuH_LFN_DatePolmFullC);
3070  fMenuHistory->AddEntry("1D, Low Frequency Noise SAME",fMenuH_LFN_DatePolmSameC);
3071  fMenuHistory->AddEntry("1D, Low Frequency Noise SAME n",fMenuH_LFN_DatePolmSamePC);
3072  fMenuHistory->AddSeparator();
3073  fMenuHistory->AddEntry("1D, High Frequency Noise ",fMenuH_HFN_DatePolmFullC);
3074  fMenuHistory->AddEntry("1D, High Frequency Noise SAME",fMenuH_HFN_DatePolmSameC);
3075  fMenuHistory->AddEntry("1D, High Frequency Noise SAME n",fMenuH_HFN_DatePolmSamePC);
3076  fMenuHistory->AddSeparator();
3077  fMenuHistory->AddEntry("1D, Mean cor(s,s') ",fMenuH_MCs_DatePolmFullC);
3078  fMenuHistory->AddEntry("1D, Mean cor(s,s') SAME",fMenuH_MCs_DatePolmSameC);
3079  fMenuHistory->AddEntry("1D, Mean cor(s,s') SAME n",fMenuH_MCs_DatePolmSamePC);
3080  fMenuHistory->AddSeparator();
3081  fMenuHistory->AddEntry("1D, Sigma of cor(s,s') ",fMenuH_SCs_DatePolmFullC);
3082  fMenuHistory->AddEntry("1D, Sigma of cor(s,s') SAME",fMenuH_SCs_DatePolmSameC);
3083  fMenuHistory->AddEntry("1D, Sigma of cor(s,s') SAME n",fMenuH_SCs_DatePolmSamePC);
3084 
3085  fMenuHistory->Connect("Activated(Int_t)", "TEcnaGui", this, "HandleMenu(Int_t)");
3086  fMenuBarHistory = new TGMenuBar(this , 1, 1, kHorizontalFrame); fCnew++;
3087  fMenuBarHistory->AddPopup(xMenuBarHistory, fMenuHistory, fLayoutTopLeft);
3088  AddFrame(fMenuBarHistory, fLayoutTopLeft);
3089 
3090  AddFrame(fVoidFrame, fLayoutGeneral);
3091 
3092  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3093  //
3094  // SECTOR 6: Last Buttons
3095  //
3096  //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3097 
3098  //GContext_t norm = GetDefaultGC()();
3099  //FontStruct_t font = GetDefaultFontStruct();
3100 
3101  //========================== LinLog frame: buttons: LinX/LogX, LinY/LogY, Projection on Y Axis
3102 
3103  fLinLogFrame = new TGCompositeFrame(this,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
3104 
3105 
3106  //-------------------------- Lin X <-> Log X
3107  TString xLogxButText = " LOG X ";
3108  fButLogx = new TGCheckButton(fLinLogFrame, xLogxButText, fButLogxC); fCnew++;
3109  fButLogx->Connect("Clicked()","TEcnaGui", this, "DoButtonLogx()");
3110  fButLogx->SetBackgroundColor(SubDetColor);
3111  fLayoutLogxBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3112  fLinLogFrame->AddFrame(fButLogx, fLayoutLogxBut);
3113 
3114  //-------------------------- Lin Y <-> Log Y
3115  TString xLogyButText = " LOG Y ";
3116  fButLogy = new TGCheckButton(fLinLogFrame, xLogyButText, fButLogyC); fCnew++;
3117  fButLogy->Connect("Clicked()","TEcnaGui", this, "DoButtonLogy()");
3118  fButLogy->SetBackgroundColor(SubDetColor);
3119  fLayoutLogyBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3120  fLinLogFrame->AddFrame(fButLogy, fLayoutLogyBut);
3121 
3122  //-------------------------- Projection
3123  TString xProjyButText = " Y projection ";
3124  fButProjy = new TGCheckButton(fLinLogFrame, xProjyButText, fButProjyC); fCnew++;
3125  fButProjy->Connect("Clicked()","TEcnaGui", this, "DoButtonProjy()");
3126  fButProjy->SetBackgroundColor(SubDetColor);
3127  fLayoutProjyBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3129 
3130  AddFrame(fVoidFrame, fLayoutBottRight);
3131  AddFrame(fLinLogFrame, fLayoutGeneral);
3132 
3133  //======================================== GENERAL TITLE FOR THE PLOTS
3134  TString xGenTitleButText = " General title for plots ";
3135  Int_t gen_title_buf_lenght = 220;
3136 
3137  fGentFrame = new TGCompositeFrame(this,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
3138 
3139  fGentBut= new TGTextButton(fGentFrame, xGenTitleButText); fCnew++;
3140  fGentBut->Connect("Clicked()","TEcnaGui", this, "DoButtonGent()");
3141  fGentBut->SetToolTipText
3142  ("Click here to register the general title (written on the right)");
3143  fGentBut->SetBackgroundColor(SubDetColor);
3144  fLayoutGentBut =
3145  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3146  fGentFrame->AddFrame(fGentBut, fLayoutGentBut);
3147 
3148  fEntryGentNumber = new TGTextBuffer(); fCnew++;
3149  fGentText = new TGTextEntry(fGentFrame, fEntryGentNumber); fCnew++;
3150  fGentText->SetToolTipText("Click and enter the general title");
3151  fGentText->Resize(gen_title_buf_lenght, fGentText->GetDefaultHeight());
3153  fGentText->Connect("ReturnPressed()", "TEcnaGui", this, "DoButtonGent()");
3155  new TGLayoutHints(kLHintsBottom | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3157 
3159  new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1,xB1,xB1,xB1); fCnew++;
3160  AddFrame(fGentFrame, fLayoutGentFieldFrame);
3161  AddFrame(fVoidFrame);
3162 
3163  //========================== Color Palette + EXIT
3164  fColorExitFrame = new TGCompositeFrame(this,60,20, kHorizontalFrame,
3165  GetDefaultFrameBackground()); fCnew++;
3166 
3167  //-------------------------- Black/Red/Blue <-> Rainbow
3168  TString xColPalButText = " Colors ";
3169  fButColPal = new TGCheckButton(fColorExitFrame, xColPalButText, fButColPalC); fCnew++;
3170  fButColPal->Connect("Clicked()","TEcnaGui", this, "DoButtonColPal()");
3171  fButColPal->SetBackgroundColor(SubDetColor);
3172  fLayoutColPalBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3174 
3175  //-------------------------- Exit
3176  TString xExitButText = " Exit ";
3177  fButExit = new TGTextButton(fColorExitFrame, xExitButText, fButExitC); fCnew++;
3178  fButExit->Connect("Clicked()","TEcnaGui", this, "DoButtonExit()");
3179  fButExit->SetBackgroundColor(SubDetColor);
3180  fLayoutExitBut = new TGLayoutHints(kLHintsTop | kLHintsRight, xB1, xB1, xB1, xB1); fCnew++;
3182 
3183  fLayoutColorExitFrame = new TGLayoutHints(kLHintsTop | kLHintsExpandX,
3184  xB1, xB1, xB1, xB1); fCnew++;
3185 
3186  //AddFrame(fVoidFrame, fLayoutBottRight);
3188 
3189  //========================== Last frame: buttons: ROOT version, Help
3190 
3191  fLastFrame = new TGCompositeFrame(this,60,20, kHorizontalFrame, kSunkenFrame); fCnew++;
3192 
3193  //-------------------------- Clone Last Canvas
3194  TString xCloneButText = " Clone Last Canvas ";
3195  fButClone = new TGTextButton(fLastFrame, xCloneButText, fButCloneC); fCnew++;
3196  fButClone->Connect("Clicked()","TEcnaGui", this, "DoButtonClone()");
3197  fButClone->SetBackgroundColor(SubDetColor);
3198  fLayoutCloneBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3199  fLastFrame->AddFrame(fButClone, fLayoutCloneBut);
3200 
3201  //-------------------------- ROOT version
3202  TString xRootButText = " ROOT Version ";
3203  fButRoot = new TGTextButton(fLastFrame, xRootButText, fButRootC); fCnew++;
3204  fButRoot->Connect("Clicked()","TEcnaGui", this, "DoButtonRoot()");
3205  fButRoot->SetBackgroundColor(SubDetColor);
3206  fLayoutRootBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3207  fLastFrame->AddFrame(fButRoot, fLayoutRootBut);
3208 
3209  //-------------------------- HELP
3210  TString xHelpButText = " Help ";
3211  fButHelp = new TGTextButton(fLastFrame, xHelpButText, fButHelpC); fCnew++;
3212  fButHelp->Connect("Clicked()","TEcnaGui", this, "DoButtonHelp()");
3213  fButHelp->SetBackgroundColor(SubDetColor);
3214  fLayoutHelpBut = new TGLayoutHints(kLHintsTop | kLHintsLeft, xB1, xB1, xB1, xB1); fCnew++;
3215  fLastFrame->AddFrame(fButHelp, fLayoutHelpBut);
3216 
3217  AddFrame(fLastFrame, fLayoutGeneral);
3218 
3219  //................................. Window
3220 
3221  MapSubwindows();
3222  Layout();
3223 
3224  if( fSubDet == "EB" ){SetWindowName("CMS Ecal Correlated Noise Analysis <EB>");}
3225  if( fSubDet == "EE" ){SetWindowName("CMS Ecal Correlated Noise Analysis <EE>");}
3226 
3227  SetBackgroundColor(SubDetColor);
3228  SetIconName("CNA");
3229  MapWindow();
3230  // } // end of if( fCnaParPaths-GetPaths() == kTRUE )
3231 }
3232 // end of constructor with arguments
3233 
3234 //###################################################################
3235 //
3236 // M E T H O D S
3237 //
3238 //###################################################################
3239 
3240 //===============================================================
3241 //
3242 // Buttons
3243 //
3244 //===============================================================
3245 
3246 //----------------------------------------------------------------------
3247 //void TEcnaGui::DoButtonPyf()
3248 //{
3251 
3252 // //........................... get info from the entry field
3253 // char* listchain = (char*)fPyfText->GetBuffer()->GetString();
3254 // fKeyPyf = listchain;
3255 
3256 // fCnaCommand++;
3257 // cout << " *TEcnaGui [" << fCnaCommand
3258 // << "]> Registration of file name for python file source sector -> "
3259 // << fKeyPyf.Data() << endl;
3260 //}
3261 //----------------------------------------------------------------------
3263 {
3264 //Registration of the type of the analysis
3265 
3266  char* bufferchain;
3267  bufferchain = (char*)fAnaText->GetBuffer()->GetString();
3268 
3269  fKeyAnaType = bufferchain;
3270 
3271  fCnaCommand++;
3272  cout << " *TEcnaGui [" << fCnaCommand
3273  << "]> Registration of analysis name -> "
3274  << fKeyAnaType << endl;
3275 }
3276 
3277 //----------------------------------------------------------------------
3279 {
3280 //Registration of the number of samples (ROOT file)
3281 
3282  char* bufferchain;
3283  bufferchain = (char*)fNorsText->GetBuffer()->GetString();
3284  fKeyNbOfSamplesString = bufferchain;
3285  fKeyNbOfSamples = atoi(bufferchain);
3286 
3287  if ( !(fKeyNbOfSamples >= 1 && fKeyNbOfSamples <= fEcal->MaxSampADC()) )
3288  {
3289  fCnaError++;
3290  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===>"
3291  << " Number of required samples for reading ROOT file = " << fKeyNbOfSamples
3292  << ": OUT OF RANGE, " << endl
3293  << " forced to the default value (="
3294  << fEcal->MaxSampADC() << ")." << fTTBELL << endl;
3297  }
3298 
3299  //................... Update of Sample Button Text according to the number of sample
3300  TString xSampButText = " Sample [?,?] ";
3301 
3302  if( fKeyNbOfSamples == 1 ){xSampButText = " Sample [1,1] ";}
3303  if( fKeyNbOfSamples == 2 ){xSampButText = " Sample [1,2] ";}
3304  if( fKeyNbOfSamples == 3 ){xSampButText = " Sample [1,3] ";}
3305  if( fKeyNbOfSamples == 4 ){xSampButText = " Sample [1,4] ";}
3306  if( fKeyNbOfSamples == 5 ){xSampButText = " Sample [1,5] ";}
3307  if( fKeyNbOfSamples == 6 ){xSampButText = " Sample [1,6] ";}
3308  if( fKeyNbOfSamples == 7 ){xSampButText = " Sample [1,7] ";}
3309  if( fKeyNbOfSamples == 8 ){xSampButText = " Sample [1,8] ";}
3310  if( fKeyNbOfSamples == 9 ){xSampButText = " Sample [1,9] ";}
3311  if( fKeyNbOfSamples == 10 ){xSampButText = " Sample [1,10] ";}
3312 
3313  fSampBut->SetText(xSampButText);
3314 
3315  fCnaCommand++;
3316  cout << " *TEcnaGui [" << fCnaCommand
3317  << "]> Registration of number of samples in ROOT file -> "
3318  << fKeyNbOfSamples << endl;
3319 }
3320 //----------------------------------------------------------------------
3322 {
3323 //Registration of the number of samples (ROOT file)
3324 
3325  char* bufferchain;
3326  bufferchain = (char*)fNbSampForCalcText->GetBuffer()->GetString();
3327  fKeyNbOfSampForCalcString = bufferchain;
3328  fKeyNbOfSampForCalc = atoi(bufferchain);
3329 
3331  {
3332  fCnaError++;
3333  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===>"
3334  << " Number of required samples for calculations = " << fKeyNbOfSampForCalc
3335  << ": OUT OF RANGE, " << endl
3336  << " forced to the default value (="
3337  << fKeyNbOfSamples << ")." << fTTBELL << endl;
3340  }
3341  fCnaCommand++;
3342  cout << " *TEcnaGui [" << fCnaCommand
3343  << "]> Registration of number of samples for calculations -> "
3344  << fKeyNbOfSampForCalc << endl;
3345 }
3346 
3347 //----------------------------------------------------------------------
3349 {
3350 //Register run number
3351 
3352  //........................... get info from the entry field
3353  char* bufferchain = (char*)fRunText->GetBuffer()->GetString();
3354  fKeyRunNumberString = bufferchain;
3355  fKeyRunNumber = atoi(bufferchain);
3356  fCnaCommand++;
3357  cout << " *TEcnaGui [" << fCnaCommand
3358  << "]> Registration of run number -> "
3359  << fKeyRunNumber << endl;
3360 }
3361 //-------------------------------------------------------------------
3362 
3364 {
3365 //Registration of the first requested event number
3366 
3367  char* bufferchain;
3368  bufferchain = (char*)fFevText->GetBuffer()->GetString();
3369  fKeyFirstReqEvtNumberString = bufferchain;
3370  fKeyFirstReqEvtNumber = atoi(bufferchain);
3371 
3372  if ( fKeyFirstReqEvtNumber <= 0)
3373  {
3374  fCnaError++;
3375  cout << " !TEcnaGui (" << fCnaError << ") *ERROR* ===> "
3376  << " First event number = " << fKeyFirstReqEvtNumber
3377  << ": negative. " << endl
3378  << fTTBELL << endl;
3379  }
3380 
3381  fCnaCommand++;
3382  cout << " *TEcnaGui [" << fCnaCommand
3383  << "]> Registration of first requested event number -> "
3384  << fKeyFirstReqEvtNumber << endl;
3385 }
3386 //-------------------------------------------------------------------
3388 {
3389 //Registration of the last requested event number
3390 
3391  char* bufferchain;
3392  bufferchain = (char*)fLevText->GetBuffer()->GetString();
3393  fKeyLastReqEvtNumberString = bufferchain;
3394  fKeyLastReqEvtNumber = atoi(bufferchain);
3395 
3397  {
3398  fCnaError++;
3399  cout << " !TEcnaGui (" << fCnaError << ") *WARNING* ===> "
3400  << " Last requested event number = " << fKeyLastReqEvtNumber
3401  << ": less than first requested event number (= " << fKeyFirstReqEvtNumber << ")."
3402  << endl;
3403  }
3404 
3405  fCnaCommand++;
3406  cout << " *TEcnaGui [" << fCnaCommand
3407  << "]> Registration of last requested event number -> "
3408  << fKeyLastReqEvtNumber << endl;
3409 }
3410 //-------------------------------------------------------------------
3412 {
3413 //Registration of the nb ofrequested events
3414 
3415  char* bufferchain;
3416  bufferchain = (char*)fRevText->GetBuffer()->GetString();
3417  fKeyReqNbOfEvtsString = bufferchain;
3418  fKeyReqNbOfEvts = atoi(bufferchain);
3419 
3420  Int_t nb_range_evts = fKeyLastReqEvtNumber - fKeyFirstReqEvtNumber + 1;
3421 
3422  if( fKeyLastReqEvtNumber < fKeyFirstReqEvtNumber)
3423  {
3424  fCnaError++;
3425  cout << " !TEcnaGui (" << fCnaError << ") *WARNING* ===> "
3426  << " Last requested event number = " << fKeyLastReqEvtNumber
3427  << " less than first requested event number = " << fKeyFirstReqEvtNumber
3428  << endl;
3429  }
3430 
3431  if ( fKeyLastReqEvtNumber >= fKeyFirstReqEvtNumber && fKeyReqNbOfEvts > nb_range_evts )
3432  {
3433  fCnaError++;
3434  cout << " !TEcnaGui (" << fCnaError << ") *WARNING* ===> "
3435  << " Nb of requested events = " << fKeyReqNbOfEvts
3436  << ": out of range (range = " << fKeyFirstReqEvtNumber << ","
3437  << fKeyLastReqEvtNumber << ") => " << nb_range_evts << " events."
3438  << endl;
3439  }
3440 
3441  fCnaCommand++;
3442  cout << " *TEcnaGui [" << fCnaCommand
3443  << "]> Registration of requested number of events -> "
3444  << fKeyReqNbOfEvts << endl;
3445 }
3446 
3447 //-------------------------------------------------------------------
3449 {
3450 //Registration of the Stex number
3451 
3452  char* bufferchain;
3453  bufferchain = (char*)fStexText->GetBuffer()->GetString();
3454  fKeyStexNumberString = bufferchain;
3455  fKeyStexNumber = atoi(bufferchain);
3456 
3457  if( fSubDet == "EB" )
3458  {
3459  fCnaCommand++;
3460  cout << " *TEcnaGui [" << fCnaCommand
3461  << "]> Registration of SuperModule number -> "
3462  << fKeyStexNumber << endl;
3463 
3464  //.......... Positive number for EB- [-1,-18] -> [19,36]
3466 
3467  if( (fKeyStexNumber < 0) || (fKeyStexNumber > fEcal->MaxSMInEB() ) )
3468  {
3469  fCnaError++;
3470  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> "
3471  << " EB / SM number = " << fKeyStexNumber
3472  << ": out of range. Range = 0 (EB) or [ 1 ," << fEcal->MaxSMInEB() << " ] (SM)"
3473  << " or [ -" << fEcal->MaxSMInEBMinus() << ", +" << fEcal->MaxSMInEBPlus() << "] (SM)"
3474  << fTTBELL << endl;
3475  }
3476  }
3477 
3478  if( fSubDet == "EE" )
3479  {
3480  //................... Update of SC Button Text according to the Dee Number
3481  TString xStinAButText = "?";
3482  TString xStinBButText = "?";
3483  if ( fSubDet == "EE" && ( fKeyStexNumber == 1 || fKeyStexNumber == 3 ) )
3484  {xStinAButText = "SC for const. [150,298] "; xStinBButText = "SC' for const. [150,298] ";
3485  fStinABut->SetText(xStinAButText); fStinBBut->SetText(xStinBButText);}
3486  if ( fSubDet == "EE" && ( fKeyStexNumber == 2 || fKeyStexNumber == 4 ) )
3487  {xStinAButText = "SC for const. [ 1,149] "; xStinBButText = "SC' for const. [ 1,149] ";
3488  fStinABut->SetText(xStinAButText); fStinBBut->SetText(xStinBButText);}
3489 
3490  if ( fSubDet == "EE" && ( fKeyStexNumber == 0 ) )
3491  {xStinAButText = "SC for const. "; xStinBButText = "SC' for const. ";
3492  fStinABut->SetText(xStinAButText); fStinBBut->SetText(xStinBButText);}
3493 
3494  //................... Update of SC widget according to the Dee Number
3495  if( fKeyStexNumber > 0 )
3496  {
3497  Int_t StinAValue = fKeyStinANumber;
3498  if( fSubDet == "EE" )
3500  DisplayInEntryField(fStinAText,StinAValue);
3501  Int_t StinBValue = fKeyStinBNumber;
3502  if( fSubDet == "EE" )
3504  DisplayInEntryField(fStinBText,StinBValue);
3505  }
3506  //............................................ Command message
3507  fCnaCommand++;
3508  cout << " *TEcnaGui [" << fCnaCommand
3509  << "]> Registration of Dee number -> "
3510  << fKeyStexNumber << endl;
3511 
3512  if ( (fKeyStexNumber < 0) || (fKeyStexNumber > fEcal->MaxDeeInEE() ) )
3513  {
3514  fCnaError++;
3515  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> "
3516  << " EE / Dee number = " << fKeyStexNumber
3517  << ": out of range. Range = 0 (EE) or [ 1 ," << fEcal->MaxDeeInEE() << " ] (Dee)"
3518  << fTTBELL << endl;
3519  }
3520  } // -- end of if( fSubDet == "EE" ) -------
3521 }
3522 //-------------------------------------------------------------------
3523 
3525 {
3526 //Registration of Ymin for number of events
3527 
3528  char* bufferchain;
3529  bufferchain = (char*)fVminD_NOE_ChNbText->GetBuffer()->GetString();
3530 
3531  fKeyVminD_NOE_ChNb = (Double_t)atof(bufferchain);
3532 
3533  fCnaCommand++;
3534  cout << " *TEcnaGui [" << fCnaCommand
3535  << "]> Registration of Ymin for plot 'number of events' -> "
3536  << fKeyVminD_NOE_ChNb << endl;
3537 }
3538 //-------------------------------------------------------------------
3539 
3541 {
3542 //Registration of Ymax for number of events
3543 
3544  char* bufferchain;
3545  bufferchain = (char*)fVmaxD_NOE_ChNbText->GetBuffer()->GetString();
3546 
3547  fKeyVmaxD_NOE_ChNb = (Double_t)atof(bufferchain);
3548 
3549  fCnaCommand++;
3550  cout << " *TEcnaGui [" << fCnaCommand
3551  << "]> Registration of Ymax for plot 'number of events' -> "
3552  << fKeyVmaxD_NOE_ChNb << endl;
3553 }
3554 //-------------------------------------------------------------------
3555 
3557 {
3558 //Registration of Ymin for pedestals
3559 
3560  char* bufferchain;
3561  bufferchain = (char*)fVminD_Ped_ChNbText->GetBuffer()->GetString();
3562 
3563  fKeyVminD_Ped_ChNb = (Double_t)atof(bufferchain);
3564 
3565  fCnaCommand++;
3566  cout << " *TEcnaGui [" << fCnaCommand
3567  << "]> Registration of Ymin for plot 'pedestal' -> "
3568  << fKeyVminD_Ped_ChNb << endl;
3569 }
3570 //-------------------------------------------------------------------
3571 
3573 {
3574 //Registration of Ymax for pedestals
3575 
3576  char* bufferchain;
3577  bufferchain = (char*)fVmaxD_Ped_ChNbText->GetBuffer()->GetString();
3578 
3579  fKeyVmaxD_Ped_ChNb = (Double_t)atof(bufferchain);
3580 
3581  fCnaCommand++;
3582  cout << " *TEcnaGui [" << fCnaCommand
3583  << "]> Registration of Ymax for plot 'pedestal' -> "
3584  << fKeyVmaxD_Ped_ChNb << endl;
3585 }
3586 //-------------------------------------------------------------------
3587 
3589 {
3590 //Registration of Ymin for mean sample sigmas (noise)
3591 
3592  char* bufferchain;
3593  bufferchain = (char*)fVminD_TNo_ChNbText->GetBuffer()->GetString();
3594 
3595  fKeyVminD_TNo_ChNb = (Double_t)atof(bufferchain);
3596 
3597  fCnaCommand++;
3598  cout << " *TEcnaGui [" << fCnaCommand
3599  << "]> Registration of Ymin for plot 'total noise' -> "
3600  << fKeyVminD_TNo_ChNb << endl;
3601 }
3602 //-------------------------------------------------------------------
3603 
3605 {
3606 //Registration of Ymax for mean sample sigmas (noise)
3607 
3608  char* bufferchain;
3609  bufferchain = (char*)fVmaxD_TNo_ChNbText->GetBuffer()->GetString();
3610 
3611  fKeyVmaxD_TNo_ChNb = (Double_t)atof(bufferchain);
3612 
3613  fCnaCommand++;
3614  cout << " *TEcnaGui [" << fCnaCommand
3615  << "]> Registration of Ymax for plot 'total noise' -> "
3616  << fKeyVmaxD_TNo_ChNb << endl;
3617 }
3618 //-------------------------------------------------------------------
3619 
3621 {
3622 //Registration of Ymin for mean cor(s,s')
3623 
3624  char* bufferchain;
3625  bufferchain = (char*)fVminD_MCs_ChNbText->GetBuffer()->GetString();
3626 
3627  fKeyVminD_MCs_ChNb = (Double_t)atof(bufferchain);
3628 
3629  fCnaCommand++;
3630  cout << " *TEcnaGui [" << fCnaCommand
3631  << "]> Registration of Ymin for plot 'mean cor(s,s')' -> "
3632  << fKeyVminD_MCs_ChNb << endl;
3633 }
3634 //-------------------------------------------------------------------
3635 
3637 {
3638 //Registration of Ymax for mean cor(s,s')
3639 
3640  char* bufferchain;
3641  bufferchain = (char*)fVmaxD_MCs_ChNbText->GetBuffer()->GetString();
3642 
3643  fKeyVmaxD_MCs_ChNb = (Double_t)atof(bufferchain);
3644 
3645  fCnaCommand++;
3646  cout << " *TEcnaGui [" << fCnaCommand
3647  << "]> Registration of Ymax for plot 'mean cor(s,s')' -> "
3648  << fKeyVmaxD_MCs_ChNb << endl;
3649 }
3650 //-------------------------------------------------------------------
3651 
3652 
3654 {
3655 //Registration of Ymin for sigmas of sample means
3656 
3657  char* bufferchain;
3658  bufferchain = (char*)fVminD_LFN_ChNbText->GetBuffer()->GetString();
3659 
3660  fKeyVminD_LFN_ChNb = (Double_t)atof(bufferchain);
3661 
3662  fCnaCommand++;
3663  cout << " *TEcnaGui [" << fCnaCommand
3664  << "]> Registration of Ymin for plot 'low frequency noise' -> "
3665  << fKeyVminD_LFN_ChNb << endl;
3666 }
3667 //-------------------------------------------------------------------
3668 
3670 {
3671 //Registration of Ymax for sigmas of sample means
3672 
3673  char* bufferchain;
3674  bufferchain = (char*)fVmaxD_LFN_ChNbText->GetBuffer()->GetString();
3675 
3676  fKeyVmaxD_LFN_ChNb = (Double_t)atof(bufferchain);
3677 
3678  fCnaCommand++;
3679  cout << " *TEcnaGui [" << fCnaCommand
3680  << "]> Registration of Ymax for plot 'low frequency noise' -> "
3681  << fKeyVmaxD_LFN_ChNb << endl;
3682 }
3683 //-------------------------------------------------------------------
3684 
3686 {
3687 //Registration of Ymin for sigmas of sample sigmas
3688 
3689  char* bufferchain;
3690  bufferchain = (char*)fVminD_HFN_ChNbText->GetBuffer()->GetString();
3691 
3692  fKeyVminD_HFN_ChNb = (Double_t)atof(bufferchain);
3693 
3694  fCnaCommand++;
3695  cout << " *TEcnaGui [" << fCnaCommand
3696  << "]> Registration of Ymin for plot 'high frequency noise' -> "
3697  << fKeyVminD_HFN_ChNb << endl;
3698 }
3699 //-------------------------------------------------------------------
3700 
3702 {
3703 //Registration of Ymax for sigmas of sample sigmas
3704 
3705  char* bufferchain;
3706  bufferchain = (char*)fVmaxD_HFN_ChNbText->GetBuffer()->GetString();
3707 
3708  fKeyVmaxD_HFN_ChNb = (Double_t)atof(bufferchain);
3709 
3710  fCnaCommand++;
3711  cout << " *TEcnaGui [" << fCnaCommand
3712  << "]> Registration of Ymax for plot 'high frequency noise' -> "
3713  << fKeyVmaxD_HFN_ChNb << endl;
3714 }
3715 //-------------------------------------------------------------------
3716 
3718 {
3719 //Registration of Ymin for sigmas of cor(s,s')
3720 
3721  char* bufferchain;
3722  bufferchain = (char*)fVminD_SCs_ChNbText->GetBuffer()->GetString();
3723 
3724  fKeyVminD_SCs_ChNb = (Double_t)atof(bufferchain);
3725 
3726  fCnaCommand++;
3727  cout << " *TEcnaGui [" << fCnaCommand
3728  << "]> Registration of Ymin for plot 'sigma of cor(s,s')' -> "
3729  << fKeyVminD_SCs_ChNb << endl;
3730 }
3731 //-------------------------------------------------------------------
3732 
3734 {
3735 //Registration of Ymax for sigmas of cor(s,s')
3736 
3737  char* bufferchain;
3738  bufferchain = (char*)fVmaxD_SCs_ChNbText->GetBuffer()->GetString();
3739 
3740  fKeyVmaxD_SCs_ChNb = (Double_t)atof(bufferchain);
3741 
3742  fCnaCommand++;
3743  cout << " *TEcnaGui [" << fCnaCommand
3744  << "]> Registration of Ymax for plot 'sigma of cor(s,s')' -> "
3745  << fKeyVmaxD_SCs_ChNb << endl;
3746 }
3747 //-------------------------------------------------------------------
3748 
3750 {
3751 //Registration of Ymin for LF Mean Cor(c,c')
3752 
3753  char* bufferchain;
3754  bufferchain = (char*)fVminLFccMosText->GetBuffer()->GetString();
3755 
3756  fKeyVminLFccMos = (Double_t)atof(bufferchain);
3757 
3758  fCnaCommand++;
3759  cout << " *TEcnaGui [" << fCnaCommand
3760  << "]> Registration of Ymin for plot 'mean LF |cor(c,c')|' -> "
3761  << fKeyVminLFccMos << endl;
3762 }
3763 //-------------------------------------------------------------------
3764 
3766 {
3767 //Registration of Ymax for LF Mean Cor(c,c')
3768 
3769  char* bufferchain;
3770  bufferchain = (char*)fVmaxLFccMosText->GetBuffer()->GetString();
3771 
3772  fKeyVmaxLFccMos = (Double_t)atof(bufferchain);
3773 
3774  fCnaCommand++;
3775  cout << " *TEcnaGui [" << fCnaCommand
3776  << "]> Registration of Ymax for plot 'mean LF |cor(c,c')|' -> "
3777  << fKeyVmaxLFccMos << endl;
3778 }
3779 //-------------------------------------------------------------------
3780 
3782 {
3783 //Registration of Ymin for HF Mean Cor(c,c')
3784 
3785  char* bufferchain;
3786  bufferchain = (char*)fVminHFccMosText->GetBuffer()->GetString();
3787 
3788  fKeyVminHFccMos = (Double_t)atof(bufferchain);
3789 
3790  fCnaCommand++;
3791  cout << " *TEcnaGui [" << fCnaCommand
3792  << "]> Registration of Ymin for plot 'mean HF |cor(c,c')|' -> "
3793  << fKeyVminHFccMos << endl;
3794 }
3795 //-------------------------------------------------------------------
3796 
3798 {
3799 //Registration of Ymax for HF Mean Cor(c,c')
3800 
3801  char* bufferchain;
3802  bufferchain = (char*)fVmaxHFccMosText->GetBuffer()->GetString();
3803 
3804  fKeyVmaxHFccMos = (Double_t)atof(bufferchain);
3805 
3806  fCnaCommand++;
3807  cout << " *TEcnaGui [" << fCnaCommand
3808  << "]> Registration of Ymax for plot 'mean HF |cor(c,c')|' -> "
3809  << fKeyVmaxHFccMos << endl;
3810 }
3811 
3812 //-------------------------------------------------------------------
3813 
3815 {
3816 //Registration of Ymin for cov(c,c') in Stins
3817 
3818  char* bufferchain;
3819  bufferchain = (char*)fVminLHFccText->GetBuffer()->GetString();
3820 
3821  fKeyVminLHFcc = (Double_t)atof(bufferchain);
3822 
3823  fCnaCommand++;
3824  cout << " *TEcnaGui [" << fCnaCommand
3825  << "]> Registration of Ymin for plot 'cor(c,c') in "
3826  << fStinName.Data() << "s' -> " << fKeyVminLHFcc << endl;
3827 }
3828 //-------------------------------------------------------------------
3829 
3831 {
3832 //Registration of Ymax for cov(c,c') in Stins
3833 
3834  char* bufferchain;
3835  bufferchain = (char*)fVmaxLHFccText->GetBuffer()->GetString();
3836 
3837  fKeyVmaxLHFcc = (Double_t)atof(bufferchain);
3838 
3839  fCnaCommand++;
3840  cout << " *TEcnaGui [" << fCnaCommand
3841  << "]> Registration of Ymax for plot 'cor(c,c') in "
3842  << fStinName.Data() << "s' -> " << fKeyVmaxLHFcc << endl;
3843 }
3844 
3845 //-------------------------------------------------------------------
3846 
3848 {
3849  ViewStexStinNumbering(); // message in the method
3850 }
3851 //-------------------------------------------------------------------
3853 {
3854 //Registration of the Stin A number (A = X coordinate for cor(c,c') plots)
3855 
3856  char* bufferchain;
3857  bufferchain = (char*)fStinAText->GetBuffer()->GetString();
3858 
3859  Int_t xReadStinANumberForCons = atoi(bufferchain);
3860 
3861  if( fSubDet == "EB" ){fKeyStinANumber = xReadStinANumberForCons;}
3862  if( fSubDet == "EE" )
3864 
3865  if( fSubDet == "EB" )
3866  {
3867  fCnaCommand++;
3868  cout << " *TEcnaGui [" << fCnaCommand
3869  << "]> Registration of " << fStinName.Data() << " number -> "
3870  << xReadStinANumberForCons << endl;
3871 
3873  {
3874  fCnaError++;
3875  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> " << fStinName.Data()
3876  << " number = " << fKeyStinANumber
3877  << ": out of range ( range = [ 1 ," << fEcal->MaxStinEcnaInStex() << " ] ) "
3878  << fTTBELL << endl;
3879  }
3880  }
3881 
3882  if( fSubDet == "EE" )
3883  {
3884  fCnaCommand++;
3885  cout << " *TEcnaGui [" << fCnaCommand
3886  << "]> Registration of " << fStinName.Data() << " number for construction -> "
3887  << xReadStinANumberForCons << endl;
3888 
3889  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxDeeInEE() )
3890  {
3891  Int_t off_set_cons = 0;
3892  if( fKeyStexNumber == 1 || fKeyStexNumber == 3 ){off_set_cons = fEcal->MaxSCForConsInDee();}
3893 
3894  if( xReadStinANumberForCons <= off_set_cons ||
3895  xReadStinANumberForCons > fEcal->MaxSCForConsInDee()+off_set_cons )
3896  {
3897  fCnaError++;
3898  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> SC nb for construction = "
3899  << xReadStinANumberForCons << ". Out of range ( range = [ " << off_set_cons+1
3900  << "," << fEcal->MaxSCForConsInDee()+off_set_cons << "] )"
3901  << fTTBELL << endl;
3902  }
3903  }
3904  else
3905  {
3906  fCnaError++;
3907  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> DeeNumber = " << fKeyStexNumber
3908  << ". Out of range ( range = [1," << fEcal->MaxDeeInEE() << "] )"
3909  << fTTBELL << endl;
3910  }
3911  }
3912 }
3913 
3914 //-------------------------------------------------------------------
3916 {
3917 //Registration of the Stin B number (B = Y coordinate for cor(c,c') plots)
3918 
3919  char* bufferchain;
3920  bufferchain = (char*)fStinBText->GetBuffer()->GetString();
3921 
3922  Int_t xReadStinBNumberForCons = atoi(bufferchain);
3923 
3924  if( fSubDet == "EB" ){fKeyStinBNumber = xReadStinBNumberForCons;}
3925  if( fSubDet == "EE" )
3927 
3928  fCnaCommand++;
3929  cout << " *TEcnaGui [" << fCnaCommand
3930  << "]> Registration of " << fStinName.Data() << "' number -> "
3931  << xReadStinBNumberForCons << endl;
3932 
3933  if( fSubDet == "EB" )
3934  {
3936  {
3937  fCnaError++;
3938  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> " << fStinName.Data()
3939  << "' number = " << fKeyStinBNumber
3940  << ": out of range ( range = [ 1 ," << fEcal->MaxStinEcnaInStex() << " ] ) "
3941  << fTTBELL << endl;
3942  }
3943  }
3944 
3945  if( fSubDet == "EE" )
3946  {
3947  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxDeeInEE() )
3948  {
3949  Int_t off_set_cons = 0;
3950  if( fKeyStexNumber == 1 || fKeyStexNumber == 3 ){off_set_cons = fEcal->MaxSCForConsInDee();}
3951 
3952  if( xReadStinBNumberForCons < off_set_cons ||
3953  xReadStinBNumberForCons > fEcal->MaxSCForConsInDee()+off_set_cons )
3954  {
3955  fCnaError++;
3956  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> SC nb for construction = "
3957  << xReadStinBNumberForCons << ". Out of range ( range = [ " << off_set_cons+1
3958  << "," << fEcal->MaxSCForConsInDee()+off_set_cons << "] )"
3959  << fTTBELL << endl;
3960  }
3961  }
3962  else
3963  {
3964  fCnaError++;
3965  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> DeeNumber = " << fKeyStexNumber
3966  << ". Out of range ( range = [1," << fEcal->MaxDeeInEE() << "] )"
3967  << fTTBELL << endl;
3968  }
3969  }
3970 }
3971 //-------------------------------------------------------------------
3973 {
3974 //Display of StinA Channel numbering
3976 }
3977 
3978 //-------------------------------------------------------------------
3980 {
3981 //Registration of the channel number
3982 
3983  char* bufferchain;
3984  bufferchain = (char*)fChanText->GetBuffer()->GetString();
3985  Int_t xReadNumber = atoi(bufferchain);
3986 
3987  Int_t Choffset = -1;
3988  TString ChString = "?";
3989 
3990  if( fSubDet == "EB"){Choffset = 0; ChString = "channel";}
3991  if( fSubDet == "EE"){Choffset = 1; ChString = "crystal";}
3992 
3993  fKeyChanNumber = xReadNumber-Choffset; // fKeyChanNumber : range = [0,25]
3994  fCnaCommand++;
3995  cout << " *TEcnaGui [" << fCnaCommand
3996  << "]> Registration of " << ChString.Data() << " number -> "
3997  << xReadNumber << endl;
3998 
3999  if ( (fKeyChanNumber < 0) || (fKeyChanNumber > fEcal->MaxCrysInStin()-1 ) )
4000  {
4001  fCnaError++;
4002  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> "
4003  << ChString.Data() << " number in " << fStinName.Data() << " = " << xReadNumber
4004  << ": out of range ( range = [" << Choffset << ","
4005  << fEcal->MaxCrysInStin()-1+Choffset << "] )"
4006  << fTTBELL << endl;
4007  }
4008 }
4009 //-------------------------------------------------------------------
4011 {
4012 //Registration of the sample number
4013 
4014  char* bufferchain;
4015  bufferchain = (char*)fSampText->GetBuffer()->GetString();
4016  Int_t xKeySampNumber = atoi(bufferchain);
4017 
4018  fCnaCommand++;
4019  cout << " *TEcnaGui [" << fCnaCommand
4020  << "]> Registration of sample number -> "
4021  << xKeySampNumber << endl;
4022 
4023  if ( (xKeySampNumber < 1) || (xKeySampNumber > fKeyNbOfSamples ) )
4024  {
4025  fCnaError++;
4026  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> "
4027  << " Sample number = " << xKeySampNumber
4028  << ": out of range ( range = [ 1 ," << fKeyNbOfSamples << " ] )"
4029  << fTTBELL << endl;
4030  }
4031 
4032  fKeySampNumber = xKeySampNumber-1;
4033 }
4034 
4035 //----------------------------------------------------------------------
4037 {
4038 //Register the name of the file containing the list of run parameters
4039 
4040  //........................... get info from the entry field
4041  char* listchain = (char*)fRulText->GetBuffer()->GetString();
4042  if( listchain[0] == '\0' )
4043  {
4044  fCnaError++;
4045  cout << " !TEcnaGui (" << fCnaError << ") *ERROR* ===> "
4046  << " Empty file name in entry for TIME EVOLUTION plots."
4047  << fTTBELL << endl;
4049  }
4050  else
4051  {
4052  char tchiffr[10] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
4053 
4054  //............. test of the first character (figure => run number, letter => file name)
4055  if( listchain[0] == tchiffr [0] || listchain[0] == tchiffr [1] ||
4056  listchain[0] == tchiffr [2] || listchain[0] == tchiffr [3] ||
4057  listchain[0] == tchiffr [4] || listchain[0] == tchiffr [5] ||
4058  listchain[0] == tchiffr [6] || listchain[0] == tchiffr [7] ||
4059  listchain[0] == tchiffr [8] || listchain[0] == tchiffr [9] )
4060  {
4061  fCnaError++;
4062  cout << " !TEcnaGui (" << fCnaError << ") *ERROR* ===> "
4063  << " Please, enter a file name beginning with an alphabetic letter."
4064  << fTTBELL << endl;
4065  }
4066  else
4067  {
4068  fKeyFileNameRunList = listchain;
4069 
4070  fCnaCommand++;
4071  cout << " *TEcnaGui [" << fCnaCommand
4072  << "]> Registration of run list file name for history plots -> "
4073  << fKeyFileNameRunList.Data() << endl;
4074  }
4075  }
4076 }
4077 
4078 //----------------------------------------------------------------------
4080 {
4081 //Register the general title
4082  //........................... get info from the entry field
4083  char* listchain = (char*)fGentText->GetBuffer()->GetString();
4084  fKeyGeneralTitle = listchain;
4085 
4086  fCnaCommand++;
4087  cout << " *TEcnaGui [" << fCnaCommand
4088  << "]> Registration of general title -> "
4089  << fKeyGeneralTitle.Data() << endl;
4090 }
4091 //-------------------------------------------------------------------
4092 //
4093 // Last buttons methods
4094 //
4095 //-------------------------------------------------------------------
4096 //======================= LIN/LOG + Projy FRAME
4097 
4099 {
4100  if( fMemoScaleX == "LOG"){fKeyScaleX = "LIN";}
4101  if( fMemoScaleX == "LIN"){fKeyScaleX = "LOG";}
4103 
4104  fCnaCommand++;
4105  cout << " *TEcnaGui [" << fCnaCommand
4106  << "]> X axis -> " << fKeyScaleX << " scale " << endl;
4107 }
4109 {
4110  if( fMemoScaleY == "LOG" ){fKeyScaleY = "LIN";}
4111  if( fMemoScaleY == "LIN" ){fKeyScaleY = "LOG";}
4113 
4114  fCnaCommand++;
4115  cout << " *TEcnaGui [" << fCnaCommand
4116  << "]> Y axis -> " << fKeyScaleY << " scale " << endl;
4117 }
4118 
4120 {
4121  if( fMemoProjY == "Y projection" ){fKeyProjY = "normal";}
4122  if( fMemoProjY == "normal" ){fKeyProjY = "Y projection";}
4124 
4125  fCnaCommand++;
4126  cout << " *TEcnaGui [" << fCnaCommand
4127  << "]> 1D Histo display -> " << fKeyProjY << " mode " << endl;
4128 }
4129 
4130 //------------------------------------------------------------------- Colors + Exit
4131 
4133 {
4134  if( fMemoColPal == "ECCNAColor" ){fKeyColPal = "Rainbow";}
4135  if( fMemoColPal == "Rainbow" ){fKeyColPal = "ECCNAColor";}
4137 
4138  TString sColPalComment = "?";
4139  if( fKeyColPal == "ECCNAColor" )
4140  {sColPalComment = "ECNAColor option: black-red-blue-green-brown-purple (default)";}
4141  if( fKeyColPal == "Rainbow" )
4142  {sColPalComment = "Rainbow option: red-orange-yellow-green-blue-indigo-purple";}
4143 
4144  fCnaCommand++;
4145  cout << " *TEcnaGui [" << fCnaCommand
4146  << "]> Color palette -> " << sColPalComment << endl;
4147 }
4148 
4150 {
4151  fCnaCommand++;
4152  cout << " *TEcnaGui [" << fCnaCommand
4153  << "]> Exit CNA session."
4154  << endl;
4155  //............................ Quit the ROOT session
4156  fButExit->SetCommand(".q");
4157 }
4158 
4159 //======================= LAST FRAME
4160 //-------------------------------------------------------------------
4162 {
4163  fCnaCommand++;
4164  cout << " *TEcnaGui [" << fCnaCommand
4165  << "]> Clone last canvas. " << endl;
4166 
4167  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
4169 }
4170 //-------------------------------------------------------------------
4172 {
4173  fCnaCommand++;
4174  cout << " *TEcnaGui [" << fCnaCommand
4175  << "]> This is ROOT version " << gROOT->GetVersion()
4176  << endl;
4177 }
4178 //-------------------------------------------------------------------
4180 {
4181  fCnaCommand++;
4182  cout << " *TEcnaGui [" << fCnaCommand
4183  << "]> HELP: for documentation, see the ECNA web page: " << endl
4184  << " http://cms-fabbro.web.cern.ch/cms-fabbro/cna_new/Correlated_Noise_analysis/ECNA_main_page.htm"
4185  << endl;
4186 }
4187 
4188 //===================================================================
4189 //
4190 // HandleMenu
4191 //
4192 //===================================================================
4193 void TEcnaGui::HandleMenu(Int_t id)
4194 {
4195  //HandleMenu
4196  //.................... SUBMIT on batch system
4197 
4198  if( id == fMenuSubmit8nmC ){SubmitOnBatchSystem("8nm");}
4199  if( id == fMenuSubmit1nhC ){SubmitOnBatchSystem("1nh");}
4200  if( id == fMenuSubmit8nhC ){SubmitOnBatchSystem("8nh");}
4201  if( id == fMenuSubmit1ndC ){SubmitOnBatchSystem("1nd");}
4202  if( id == fMenuSubmit1nwC ){SubmitOnBatchSystem("1nw");}
4203 
4204  //.................... Clean
4205  if( id == fMenuCleanSubC ){CleanBatchFiles("Sub");}
4206  if( id == fMenuCleanJobC ){CleanBatchFiles("Job");}
4207  if( id == fMenuCleanPythC ){CleanBatchFiles("Pyth");}
4208  if( id == fMenuCleanAllC ){CleanBatchFiles("All");}
4209 
4210  //.................... Calculations
4211  if( id == fMenuComputStdC ){Calculations("Std");}
4212  if( id == fMenuComputSttC ){Calculations("Stt");}
4213  if( id == fMenuComputSccC ){Calculations("Scc");}
4214 
4215  //.................... Nb of events in Stex
4216  if( id == fMenuD_NOE_ChNbFullC )
4217  {
4220  }
4221  if( id == fMenuD_NOE_ChNbSameC )
4222  {
4225  }
4228 
4229  //.................... Pedestal in Stex (HandleMenu)
4230  if( id == fMenuD_Ped_ChNbFullC )
4231  {
4234  }
4235  if( id == fMenuD_Ped_ChNbSameC )
4236  {
4239  }
4242 
4243  //.................... Total noise in Stex (HandleMenu)
4244  if( id == fMenuD_TNo_ChNbFullC )
4245  {
4248  }
4249  if( id == fMenuD_TNo_ChNbSameC )
4250  {
4253  }
4254  if( id == fMenuD_TNo_ChNbSamePC)
4255  {
4258  }
4261 
4262  //.................... Low Frequency noise in Stex (HandleMenu)
4263  if( id == fMenuD_LFN_ChNbFullC )
4264  {
4267  }
4268  if( id == fMenuD_LFN_ChNbSameC )
4269  {
4272  }
4273  if( id == fMenuD_LFN_ChNbSamePC)
4274  {
4277  }
4280 
4281  //.................... High Frequency noise in Stex (HandleMenu)
4282  if( id == fMenuD_HFN_ChNbFullC )
4283  {
4286  }
4287  if( id == fMenuD_HFN_ChNbSameC )
4288  {
4291  }
4292  if( id == fMenuD_HFN_ChNbSamePC)
4293  {
4296  }
4299 
4300  //.................... Mean Corss in Stex (HandleMenu)
4301  if( id == fMenuD_MCs_ChNbFullC )
4302  {
4305  }
4306  if( id == fMenuD_MCs_ChNbSameC )
4307  {
4310  }
4311  if( id == fMenuD_MCs_ChNbSamePC)
4312  {
4315  }
4318 
4319  //.................... Sigma of Corss in the Stex (HandleMenu)
4320  if( id == fMenuD_SCs_ChNbFullC )
4321  {
4324  }
4325  if( id == fMenuD_SCs_ChNbSameC )
4326  {
4329  }
4330  if( id == fMenuD_SCs_ChNbSamePC)
4331  {
4334  }
4337 
4338  //............................... Low Freq Mean Cor(c,c') for each pair of Stins (HandleMenu)
4341  //............................... High Freq Mean Cor(c,c') for each pair of Stins
4344 
4345  //............................... Corcc for each Stin in the Stex
4348 
4349  //--------> Nb for Cons for Stin numbers in case of EE
4350  Int_t cKeyStinANumber = fKeyStinANumber;
4351  if( fSubDet == "EE" && fKeyStexNumber != 0 )
4353  Int_t cKeyStinBNumber = fKeyStinBNumber;
4354  if( fSubDet == "EE" && fKeyStexNumber != 0 )
4356 
4357  //............................... Low Frequency Correlations and covariances between channels
4358  if( id == fMenuLFCorccColzC )
4359  {ViewMatrixLowFrequencyCorrelationsBetweenChannels(cKeyStinANumber, cKeyStinBNumber, "COLZ");}
4360  if( id == fMenuLFCorccLegoC )
4361  {ViewMatrixLowFrequencyCorrelationsBetweenChannels(cKeyStinANumber, cKeyStinBNumber, "LEGO2Z");}
4362 
4363  if( id == fMenuHFCorccColzC )
4364  {ViewMatrixHighFrequencyCorrelationsBetweenChannels(cKeyStinANumber, cKeyStinBNumber, "COLZ");}
4365  if( id == fMenuHFCorccLegoC )
4366  {ViewMatrixHighFrequencyCorrelationsBetweenChannels(cKeyStinANumber, cKeyStinBNumber, "LEGO2Z");}
4367 
4368  //.................................... Correlations and covariances between samples (HandleMenu)
4369  if( id == fMenuCorssColzC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "COLZ");}
4370  if( id == fMenuCorssBoxC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "BOX");}
4371  if( id == fMenuCorssTextC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "TEXT");}
4372  if( id == fMenuCorssContzC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "CONTZ");}
4373  if( id == fMenuCorssLegoC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "LEGO2Z");}
4374  if( id == fMenuCorssSurf1C ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "SURF1Z");}
4375  if( id == fMenuCorssSurf2C ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "SURF2Z");}
4376  if( id == fMenuCorssSurf3C ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "SURF3Z");}
4377  if( id == fMenuCorssSurf4C ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "SURF4");}
4378  if( id == fMenuCorssAsciiFileC ){ViewMatrixCorrelationSamples(cKeyStinANumber, fKeyChanNumber, "ASCII");}
4379 
4380  if( id == fMenuCovssColzC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "COLZ");}
4381  if( id == fMenuCovssBoxC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "BOX");}
4382  if( id == fMenuCovssTextC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "TEXT");}
4383  if( id == fMenuCovssContzC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "CONTZ");}
4384  if( id == fMenuCovssLegoC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "LEGO2Z");}
4385  if( id == fMenuCovssSurf1C ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "SURF1Z");}
4386  if( id == fMenuCovssSurf2C ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "SURF2Z");}
4387  if( id == fMenuCovssSurf3C ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "SURF3Z");}
4388  if( id == fMenuCovssSurf4C ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "SURF4");}
4389  if( id == fMenuCovssAsciiFileC ){ViewMatrixCovarianceSamples(cKeyStinANumber, fKeyChanNumber, "ASCII");}
4390 
4391  //.................... Correlations and covariances between samples for all channels of a Stin
4392  if( id == fMenuCorssAllColzC ){ViewStinCorrelationSamples(cKeyStinANumber);}
4393  if( id == fMenuCovssAllColzC ){ViewStinCovarianceSamples(cKeyStinANumber);}
4394 
4395  //..................................... Sample means (pedestals) (HandleMenu)
4396  if( id == fMenuD_MSp_SpNbLineFullC )
4397  {
4398  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleMeans(cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4399  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleMeansDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4400  }
4401 
4402  if( id == fMenuD_MSp_SpNbLineSameC )
4403  {
4404  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleMeans(cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4405  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleMeansDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4406  }
4407  if( id == fMenuD_MSp_SpNbLineAllStinC )
4408  {
4409  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleMeans(cKeyStinANumber, fKeyChanNumber, fOptPlotSameInStin);}
4410  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleMeansDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotSameInStin);}
4411  }
4412 
4413  //..................................... Sample sigmas
4414  if( id == fMenuD_SSp_SpNbLineFullC )
4415  {
4416  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleSigmas(cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4417  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleSigmasDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4418  }
4419  if( id == fMenuD_SSp_SpNbLineSameC )
4420  {
4421  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleSigmas(cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4422  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleSigmasDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4423  }
4424  if( id == fMenuD_SSp_SpNbLineAllStinC )
4425  {
4426  if( fMemoProjY == "normal" ){ViewHistoCrystalSampleSigmas(cKeyStinANumber, fKeyChanNumber, fOptPlotSameInStin);}
4427  if( fMemoProjY == "Y projection"){ViewHistoCrystalSampleSigmasDistribution(cKeyStinANumber, fKeyChanNumber, fOptPlotSameInStin);}
4428  }
4429 
4430  //..................................... Evolution in time (ViewHistime, except EvolSamp -> Viewhisto)
4437  {
4439  {fCnaError++;
4440  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===> "
4441  << " EMPTY STRING for list of run file name (TIME EVOLUTION plots)." << fTTBELL << endl;}
4442  else
4443  {
4444  //........................................ Pedestals (HandleMenu / ViewHistime)
4445  if( id == fMenuH_Ped_DatePolmFullC )
4446  {
4447  if( fMemoProjY == "normal" )
4449  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4450  if( fMemoProjY == "Y projection")
4452  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4453  }
4454  if( id == fMenuH_Ped_DatePolmSameC )
4455  { if( fMemoProjY == "normal" )
4457  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4458  if( fMemoProjY == "Y projection")
4460  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4461  }
4462 
4463  //........................................ Total noise
4464  if( id == fMenuH_TNo_DatePolmFullC )
4465  {
4466  if( fMemoProjY == "normal" )
4468  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4469  if( fMemoProjY == "Y projection")
4471  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4472  }
4473  if( id == fMenuH_TNo_DatePolmSameC )
4474  {
4475  if( fMemoProjY == "normal" )
4477  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4478  if( fMemoProjY == "Y projection")
4480  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4481  }
4482  if( id == fMenuH_TNo_DatePolmSamePC )
4483  {
4484  if( fMemoProjY == "normal" )
4486  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4487  if( fMemoProjY == "Y projection")
4489  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4490  }
4491 
4492  //........................................ Low frequency noise (HandleMenu / ViewHistime)
4493  if( id == fMenuH_LFN_DatePolmFullC )
4494  {
4495  if( fMemoProjY == "normal" )
4497  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4498  if( fMemoProjY == "Y projection")
4500  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4501  }
4502  if( id == fMenuH_LFN_DatePolmSameC )
4503  {
4504  if( fMemoProjY == "normal" )
4506  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4507  if( fMemoProjY == "Y projection")
4509  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4510  }
4511  if( id == fMenuH_LFN_DatePolmSamePC )
4512  {
4513  if( fMemoProjY == "normal" )
4515  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4516  if( fMemoProjY == "Y projection")
4518  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4519  }
4520 
4521  //........................................ High frequency noise
4522  if( id == fMenuH_HFN_DatePolmFullC )
4523  {
4524  if( fMemoProjY == "normal" )
4526  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4527  if( fMemoProjY == "Y projection")
4529  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4530  }
4531  if( id == fMenuH_HFN_DatePolmSameC )
4532  {
4533  if( fMemoProjY == "normal" )
4535  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4536  if( fMemoProjY == "Y projection")
4538  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4539  }
4540  if( id == fMenuH_HFN_DatePolmSamePC )
4541  {
4542  if( fMemoProjY == "normal" )
4544  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4545  if( fMemoProjY == "Y projection")
4547  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4548  }
4549 
4550  //........................................ Mean Corss (HandleMenu / ViewHistime)
4551  if( id == fMenuH_MCs_DatePolmFullC )
4552  {
4553  if( fMemoProjY == "normal" )
4555  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4556  if( fMemoProjY == "Y projection")
4558  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4559  }
4560  if( id == fMenuH_MCs_DatePolmSameC )
4561  {
4562  if( fMemoProjY == "normal" )
4564  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4565  if( fMemoProjY == "Y projection")
4567  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4568  }
4569  if( id == fMenuH_MCs_DatePolmSamePC )
4570  {
4571  if( fMemoProjY == "normal" )
4573  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4574  if( fMemoProjY == "Y projection")
4576  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4577  }
4578 
4579  //........................................ Sigmas of Corss
4580  if( id == fMenuH_SCs_DatePolmFullC )
4581  {
4582  if( fMemoProjY == "normal" )
4584  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4585  if( fMemoProjY == "Y projection")
4587  cKeyStinANumber, fKeyChanNumber, fOptPlotFull);}
4588  }
4589  if( id == fMenuH_SCs_DatePolmSameC )
4590  {
4591  if( fMemoProjY == "normal" )
4593  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4594  if( fMemoProjY == "Y projection")
4596  cKeyStinANumber, fKeyChanNumber, fOptPlotSame);}
4597  }
4598  if( id == fMenuH_SCs_DatePolmSamePC )
4599  {
4600  if( fMemoProjY == "normal" )
4602  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4603  if( fMemoProjY == "Y projection")
4605  cKeyStinANumber, fKeyChanNumber, fOptPlotSameP);}
4606  }
4607  }
4608  }
4609 
4610  //...................................... SampTime (HandleMenu / ADC)
4611  if( id == fMenuAdcProjSampLineFullC )
4612  {
4613  if( fMemoProjY == "normal" )
4615  if( fMemoProjY == "Y projection")
4617  }
4618  if( id == fMenuAdcProjSampLineSameC )
4619  {
4620  if( fMemoProjY == "normal" )
4622  if( fMemoProjY == "Y projection")
4624  }
4625 }
4626 // ------------- ( end of HandleMenu(...) ) -------------
4627 
4628 //==========================================================================
4629 //
4630 // SubmitOnBatchSystem() M E T H O D
4631 //
4632 //==========================================================================
4633 void TEcnaGui::SubmitOnBatchSystem(const TString QueueCode)
4634 {
4635  //Submit job in batch mode
4636 
4637  if( (fConfirmSubmit == 1) && (fConfirmRunNumber == fKeyRunNumber) )
4638  {
4639  fCnaCommand++;
4640  cout << " *TEcnaGui [" << fCnaCommand
4641  << "]> Submitting job in batch mode for run " << fConfirmRunNumber << endl;
4642 
4643  //.......................... get the path "modules/data"
4644  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/src/CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data/
4645  TString ModulesdataPath = fCnaParPaths->PathModulesData();
4646 
4647  //---------------------------------- python file building script: command text
4648  TString CnaPythonCommand = ModulesdataPath;
4649 
4650  //......................................... Script for python file building: script name
4651  TString PythonScriptName = "EcnaSystemScriptPython";
4652  const Text_t *t_PythonScriptName = (const Text_t *)PythonScriptName.Data();
4653  CnaPythonCommand.Append(t_PythonScriptName);
4654 
4655  //......................................... Script for python file building: arguments
4656  // In the calling command, TString arguments must be of the form: \"STRING1\" \"STRING2\" etc...
4657 
4658  //......................................... arguments -> Run number
4659  //.......... ${1}
4660  CnaPythonCommand.Append(' ');
4661  CnaPythonCommand.Append(fConfirmRunNumberString);
4662 
4663  //......................................... arguments -> Analyzer parameters
4664  //.......... ${2}
4665  CnaPythonCommand.Append(' ');
4666  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4667  const Text_t *t_StringAnaType = (const Text_t *)fKeyAnaType.Data();
4668  CnaPythonCommand.Append(t_StringAnaType);
4669  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4670 
4671  //.......... ${3}
4672  CnaPythonCommand.Append(' ');
4673  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4674  const Text_t *t_NbOfSamplesString = (const Text_t *)fKeyNbOfSamplesString.Data();
4675  CnaPythonCommand.Append(t_NbOfSamplesString);
4676  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4677 
4678  //.......... ${4}
4679  CnaPythonCommand.Append(' ');
4680  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4681  const Text_t *t_FirstReqEvtNumberString = (const Text_t *)fKeyFirstReqEvtNumberString.Data();
4682  CnaPythonCommand.Append(t_FirstReqEvtNumberString);
4683  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4684 
4685  //.......... ${5}
4686  CnaPythonCommand.Append(' ');
4687  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4688  const Text_t *t_LastReqEvtNumberString = (const Text_t *)fKeyLastReqEvtNumberString.Data();
4689  CnaPythonCommand.Append(t_LastReqEvtNumberString);
4690  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4691 
4692  //.......... ${6}
4693  CnaPythonCommand.Append(' ');
4694  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4695  const Text_t *t_ReqNbOfEvtsString = (const Text_t *)fKeyReqNbOfEvtsString.Data();
4696  CnaPythonCommand.Append(t_ReqNbOfEvtsString);
4697  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4698 
4699  //.......... ${7}
4700  CnaPythonCommand.Append(' ');
4701  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4702  const Text_t *t_fStexName = (const Text_t *)fStexName.Data();
4703  CnaPythonCommand.Append(t_fStexName);
4704  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4705 
4706  //.......... ${8}
4707  CnaPythonCommand.Append(' ');
4708  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4709  const Text_t *t_StexNumberString = (const Text_t *)fKeyStexNumberString.Data();
4710  CnaPythonCommand.Append(t_StexNumberString);
4711  CnaPythonCommand.Append('\\'); CnaPythonCommand.Append('\"');
4712 
4713  //......................................... arguments -> python file name
4714  //.......... ${9}
4715  // - - - - - - - - - - - - - - - - - Build the name
4716  fPythonFileName = "EcnaPython_";
4717 
4718  fPythonFileName.Append(t_StringAnaType);
4719  fPythonFileName.Append('_');
4720 
4721  fPythonFileName.Append('S');
4722  fPythonFileName.Append('1');
4723  fPythonFileName.Append('_');
4724  fPythonFileName.Append(t_NbOfSamplesString);
4725  fPythonFileName.Append('_');
4726  fPythonFileName.Append('R');
4727 
4728  const Text_t *t_fConfirmRunNumberString = (const Text_t *)fConfirmRunNumberString.Data();
4729  fPythonFileName.Append(t_fConfirmRunNumberString);
4730  fPythonFileName.Append('_');
4731 
4732  fPythonFileName.Append(t_FirstReqEvtNumberString);
4733  fPythonFileName.Append('_');
4734 
4735  fPythonFileName.Append(t_LastReqEvtNumberString);
4736  fPythonFileName.Append('_');
4737 
4738  fPythonFileName.Append(t_ReqNbOfEvtsString);
4739  fPythonFileName.Append('_');
4740 
4741  fPythonFileName.Append(t_fStexName);
4742 
4743  fPythonFileName.Append(t_StexNumberString); // <== (python file name without extension .py)
4744  // - - - - - - - - - - - - - - - - -
4745 
4746  CnaPythonCommand.Append(' ');
4747  const Text_t *t_fPythonFileName = (const Text_t *)fPythonFileName.Data();
4748  CnaPythonCommand.Append(t_fPythonFileName);
4749 
4750  //......................................... arguments -> modules:data path
4751  //.......... ${9}
4752  CnaPythonCommand.Append(' ');
4753  const Text_t *t_modules_data_path = (const Text_t *)ModulesdataPath.Data();
4754  CnaPythonCommand.Append(t_modules_data_path);
4755 
4756  //......................................... arguments -> last evt number (without "")
4757  //.......... ${10}
4758  //CnaPythonCommand.Append(' ');
4759  //CnaPythonCommand.Append(t_LastReqEvtNumberString);
4760 
4761  //......................................... arguments -> SourceForPythonFileName
4762  //.......... ${11}
4763  //CnaPythonCommand.Append(' ');
4764  //const Text_t *t_Pyf = (const Text_t *)fKeyPyf.Data();
4765  //CnaPythonCommand.Append(t_Pyf);
4766 
4767  //---------------------------------- Exec python file building command (csh before command text)
4768  const Text_t *t_cnapythoncommand = (const Text_t *)CnaPythonCommand.Data();
4769  TString CnaExecPythonCommand = "csh ";
4770  CnaExecPythonCommand.Append(t_cnapythoncommand);
4771 
4772  Int_t i_exec_python = gSystem->Exec(CnaExecPythonCommand.Data());
4773 
4774  if( i_exec_python != 0 )
4775  {
4776  cout << "*TEcnaGui> Script for python file building was executed with error code = "
4777  << i_exec_python << "." << endl
4778  << " python file: " << fPythonFileName.Data() << ".py" << endl
4779  << " Command: " << CnaExecPythonCommand.Data() << endl
4780  << fTTBELL << endl;
4781  }
4782  else
4783  {
4784  cout << "*TEcnaGui> Script for python file building was successfully executed." << endl
4785  << " python file: " << fPythonFileName.Data() << ".py" << endl
4786  << " (Command: " << CnaExecPythonCommand.Data() << ")" << endl;
4787 
4788  //========================================================== Job submission script
4789  TString CnaSubmitCommand = ModulesdataPath;
4790 
4791  //......................................... Script for job submission: command name
4792  TString SubmitScriptName = "EcnaSystemScriptSubmit";
4793  const Text_t *t_SubmitScriptName= (const Text_t *)SubmitScriptName.Data();
4794  CnaSubmitCommand.Append(t_SubmitScriptName);
4795  CnaSubmitCommand.Append(' ');
4796 
4797  //......................................... Script for job submission: arguments
4798  const Text_t *t_cmssw_base = (const Text_t *)fCnaParPaths->CMSSWBase().Data();
4799  CnaSubmitCommand.Append(t_cmssw_base);
4800  CnaSubmitCommand.Append(' ');
4801 
4802  const Text_t *t_cmssw_subsystem = (const Text_t *)fCnaParPaths->CMSSWSubsystem().Data();
4803  CnaSubmitCommand.Append(t_cmssw_subsystem);
4804  CnaSubmitCommand.Append(' ');
4805 
4806  const Text_t *t_cfgp_file = (const Text_t *)fPythonFileName.Data();
4807  CnaSubmitCommand.Append(t_cfgp_file);
4808  CnaSubmitCommand.Append(' ');
4809 
4810  const Text_t *t_QueueCode = (const Text_t *)QueueCode.Data();
4811  CnaSubmitCommand.Append(t_QueueCode);
4812 
4813  //----------------------------------------- Exec Submit Command (csh before command text)
4814  const Text_t *t_cnasubmitcommand = (const Text_t *)CnaSubmitCommand.Data();
4815  TString CnaExecSubmitCommand = "csh ";
4816  CnaExecSubmitCommand.Append(t_cnasubmitcommand);
4817 
4818  Int_t i_exec_submit = gSystem->Exec(CnaExecSubmitCommand.Data());
4819 
4820  if( i_exec_submit != 0 )
4821  {
4822  cout << "*TEcnaGui> Script for job submission was executed with error code = "
4823  << i_exec_submit << "." << endl
4824  << " Command: " << CnaExecSubmitCommand.Data() << endl
4825  << fTTBELL << endl;
4826  }
4827  else
4828  {
4829  cout << "*TEcnaGui> Job with configuration file: " << fPythonFileName.Data()
4830  << " was successfully submitted." << endl
4831  << " (Command: " << CnaExecSubmitCommand.Data() << ")" << endl;
4832  }
4833 
4834  fConfirmSubmit = 0;
4835  fConfirmRunNumber = 0;
4837  }
4838  }
4839  else
4840  {
4841  if( fKeyAnaType.BeginsWith("Adc") )
4842  {
4843  fCnaCommand++;
4844  cout << " *TEcnaGui [" << fCnaCommand
4845  << "]> Request for submitting job in batch mode for run " << fKeyRunNumber
4846  << ". Syntax OK. Please, click again to confirm."
4847  << fTTBELL << endl;
4848 
4849  fConfirmSubmit = 1;
4852  }
4853  else
4854  {
4855  fCnaError++;
4856  cout << " !TEcnaGui (" << fCnaError << ") *** ERROR *** ===>"
4857  << " Analysis name = " << fKeyAnaType
4858  << ": should begin with 'Adc'."
4859  << " Please, change the analysis name." << fTTBELL << endl;
4860 
4861  fConfirmSubmit = 0;
4862  fConfirmRunNumber = 0;
4864  }
4865  }
4866 }
4867 //------------------------------------------- end of SubmitOnBatchSystem() ------------------------
4868 
4869 //==========================================================================
4870 //
4871 // CleanBatchFiles() M E T H O D
4872 //
4873 //==========================================================================
4874 void TEcnaGui::CleanBatchFiles(const TString clean_code)
4875 {
4876  //Clean python files, submission scripts,...
4877 
4878  fCnaCommand++;
4879  cout << " *TEcnaGui [" << fCnaCommand
4880  << "]> Clean requested with code: " << clean_code
4881  << endl;
4882 
4883  //================================ CLEAN SUBMISSION SCRIPTS ===================================
4884  if( clean_code == "Sub" || clean_code == "All")
4885  {
4886  //.......................... get the path "modules/data"
4887  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/src/CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data/
4888  TString ModulesdataPath = fCnaParPaths->PathModulesData();
4889 
4890  //----------------------------------------- submission clean script: command text
4891  //......................................... submission clean script: script name
4892  TString CnaCleanSubmissionCommand = ModulesdataPath;
4893  TString CleanSubmissionScriptName = "EcnaSystemScriptCleanSubmissionScripts";
4894  const Text_t *t_CleanSubmissionScriptName = (const Text_t *)CleanSubmissionScriptName.Data();
4895  CnaCleanSubmissionCommand.Append(t_CleanSubmissionScriptName);
4896 
4897  //......................................... arguments -> test/slc... path
4898  //.......................... get the path "test/slc4_ia32_gcc345"
4899  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/test/slc4_ia32_gcc345/
4900  TString TestslcPath = fCnaParPaths->PathTestScramArch();
4901  CnaCleanSubmissionCommand.Append(' ');
4902  const Text_t *t_modules_data_path = (const Text_t *)TestslcPath.Data();
4903  CnaCleanSubmissionCommand.Append(t_modules_data_path);
4904 
4905  //----------------------------------------- Exec CleanSubmission Command (csh before command text)
4906  const Text_t *t_cnacleansubmissioncommand = (const Text_t *)CnaCleanSubmissionCommand.Data();
4907  TString CnaExecCleanSubmissionCommand = "csh ";
4908  CnaExecCleanSubmissionCommand.Append(t_cnacleansubmissioncommand);
4909 
4910  Int_t i_exec_cleansubmission = gSystem->Exec(CnaExecCleanSubmissionCommand.Data());
4911 
4912  if( i_exec_cleansubmission != 0 )
4913  {
4914  cout << "*TEcnaGui> Script for submission script clean was executed with error code = "
4915  << i_exec_cleansubmission << "." << endl
4916  << " Command: " << CnaExecCleanSubmissionCommand.Data() << endl
4917  << fTTBELL << endl;
4918  }
4919  else
4920  {
4921  cout << "*TEcnaGui> Script for submission script clean"
4922  << " was successfully executed." << endl
4923  << " (Command: " << CnaExecCleanSubmissionCommand.Data() << ")" << endl;
4924  }
4925 
4926  }
4927 
4928  //================================= CLEAN LSFJOB REPORTS ======================================
4929  if( clean_code == "Job" || clean_code == "All")
4930  {
4931  //.......................... get the path "modules/data"
4932  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/src/CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data/
4933  TString ModulesdataPath = fCnaParPaths->PathModulesData();
4934 
4935  //----------------------------------------- jobreport clean script: command text
4936  //......................................... jobreport clean script: script name
4937  TString CnaCleanJobreportCommand = ModulesdataPath;
4938  TString CleanJobreportScriptName = "EcnaSystemScriptCleanLSFJOBReports";
4939  const Text_t *t_CleanJobreportScriptName = (const Text_t *)CleanJobreportScriptName.Data();
4940  CnaCleanJobreportCommand.Append(t_CleanJobreportScriptName);
4941 
4942  //......................................... arguments -> test/slc... path
4943  //.......................... get the path "test/slc4_ia32_gcc345"
4944  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/test/slc4_ia32_gcc345/
4945  TString TestslcPath = fCnaParPaths->PathTestScramArch();
4946  CnaCleanJobreportCommand.Append(' ');
4947  const Text_t *t_modules_data_path = (const Text_t *)TestslcPath.Data();
4948  CnaCleanJobreportCommand.Append(t_modules_data_path);
4949 
4950  //----------------------------------------- Exec CleanJobreport Command (csh before command text)
4951  const Text_t *t_cnacleanjobreportcommand = (const Text_t *)CnaCleanJobreportCommand.Data();
4952  TString CnaExecCleanJobreportCommand = "csh ";
4953  CnaExecCleanJobreportCommand.Append(t_cnacleanjobreportcommand);
4954 
4955  Int_t i_exec_cleanjobreport = gSystem->Exec(CnaExecCleanJobreportCommand.Data());
4956 
4957  if( i_exec_cleanjobreport != 0 )
4958  {
4959  cout << "*TEcnaGui> Script for LSFJOB report clean was executed with error code = "
4960  << i_exec_cleanjobreport << "." << endl
4961  << " Command: " << CnaExecCleanJobreportCommand.Data() << endl
4962  << fTTBELL << endl;
4963  }
4964  else
4965  {
4966  cout << "*TEcnaGui> Script for LSFJOB report clean"
4967  << " was successfully executed." << endl
4968  << " (Command: " << CnaExecCleanJobreportCommand.Data() << ")" << endl;
4969  }
4970  }
4971 
4972  //==================================== CLEAN PYTHON FILES =====================================
4973  if( clean_code == "Pyth" || clean_code == "All")
4974  {
4975  //.......................... get the path "modules/data"
4976  // /afs/cern.ch/user/U/USERNAME/cmssw/CMSSW_X_Y_Z/src/CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data/
4977  TString ModulesdataPath = fCnaParPaths->PathModulesData();
4978 
4979  //----------------------------------------- python file clean script: command text
4980  //......................................... python file clean script: script name
4981  TString CnaCleanPythonCommand = ModulesdataPath;
4982  TString CleanPythonScriptName = "EcnaSystemScriptCleanPythonFiles";
4983  const Text_t *t_CleanPythonScriptName = (const Text_t *)CleanPythonScriptName.Data();
4984  CnaCleanPythonCommand.Append(t_CleanPythonScriptName);
4985 
4986  //......................................... arguments -> modules:data path
4987  CnaCleanPythonCommand.Append(' ');
4988  const Text_t *t_modules_data_path = (const Text_t *)ModulesdataPath.Data();
4989  CnaCleanPythonCommand.Append(t_modules_data_path);
4990 
4991  //----------------------------------------- Exec CleanPython Command (csh before command text)
4992  const Text_t *t_cnacleanpythoncommand = (const Text_t *)CnaCleanPythonCommand.Data();
4993  TString CnaExecCleanPythonCommand = "csh ";
4994  CnaExecCleanPythonCommand.Append(t_cnacleanpythoncommand);
4995 
4996  Int_t i_exec_cleanpython = gSystem->Exec(CnaExecCleanPythonCommand.Data());
4997 
4998  if( i_exec_cleanpython != 0 )
4999  {
5000  cout << "*TEcnaGui> Script for python file clean was executed with error code = "
5001  << i_exec_cleanpython << "." << endl
5002  << " Command: " << CnaExecCleanPythonCommand.Data() << endl
5003  << fTTBELL << endl;
5004  }
5005  else
5006  {
5007  cout << "*TEcnaGui> Script for python file clean"
5008  << " was successfully executed." << endl
5009  << " (Command: " << CnaExecCleanPythonCommand.Data() << ")" << endl;
5010  }
5011  }
5012 }
5013 //------------------------------------------- end of CleanBatchFiles() -----------------------
5014 
5015 //==========================================================================
5016 //
5017 // Calculations() M E T H O D
5018 //
5019 //==========================================================================
5020 void TEcnaGui::Calculations(const TString calc_code)
5021 {
5022  //Calculations of quantities (Pedestals, correlations, ... )
5023 
5024  fCnaCommand++;
5025  cout << " *TEcnaGui [" << fCnaCommand
5026  << "]> Calculations requested with code: " << calc_code
5027  << endl;
5028 
5029  //===== Check if Analysis name is right
5030  if( fKeyAnaType == "AdcPed1" || fKeyAnaType == "AdcSPed1" ||
5031  fKeyAnaType == "AdcPed6" || fKeyAnaType == "AdcSPed6" ||
5032  fKeyAnaType == "AdcPed12" || fKeyAnaType == "AdcSPed12" ||
5033  fKeyAnaType == "AdcPeg12" || fKeyAnaType == "AdcSPeg12" ||
5034  fKeyAnaType == "AdcLaser" || fKeyAnaType == "AdcSLaser" ||
5035  fKeyAnaType == "AdcPes12" || fKeyAnaType == "AdcSPes12" ||
5036  fKeyAnaType == "AdcPhys" || fKeyAnaType == "AdcAny" )
5037  {
5038  //------------ Check if Std or (Scc or Stt)-Confirmed
5039  if( calc_code == "Std" || ( ( calc_code == "Scc" || calc_code == "Stt" ) && fConfirmCalcScc == 1 ) )
5040  {
5042  {
5043  Int_t nStexMin = fKeyStexNumber;
5044  Int_t nStexMax = fKeyStexNumber;
5045  if( fKeyStexNumber == 0 ){nStexMin = 1; nStexMax = fEcal->MaxStexInStas();}
5046 
5047  for( Int_t nStex = nStexMin; nStex<= nStexMax; nStex++)
5048  {
5049  Int_t n_samp_fic = fKeyNbOfSamples;
5050 
5051  //....................... READ the "ADC" (AdcPed.., AdcLaser..., ...) file
5052  TEcnaRun* MyRun = 0;
5053  if ( MyRun == 0 ){MyRun = new TEcnaRun(fObjectManager, fSubDet.Data(), n_samp_fic); fCnew++;}
5054 
5057 
5058  if( MyRun->ReadSampleAdcValues(fKeyNbOfSampForCalc) == kTRUE )
5059  {
5060  cout << "*TEcnaGui::Calculations> File "
5061  << MyRun->GetRootFileNameShort() << " found. Starting calculations."
5062  << endl;
5063 
5064  MyRun->GetReadyToCompute();
5065 
5066  //............... Calculations
5067  if( calc_code == "Std" ||
5068  ( (calc_code == "Scc" || calc_code == "Stt") && fConfirmCalcScc == 1 ) )
5069  {
5070  //-------------- Standard calculations: pedestals, noises, correlations between samples
5071  MyRun->StandardCalculations();
5072  }
5073  if( (calc_code == "Scc" || calc_code == "Stt") && fConfirmCalcScc == 1 )
5074  {
5075  if( calc_code == "Scc" )
5076  {
5077  //------ Additional calculations:
5078  // "correlations" between Xtals and Stins (long time, big file)
5079  cout << "*TEcnaGui::Calculations> Please, wait." << endl;
5080 
5081  MyRun->Expert1Calculations(); // (long time, big file)
5082  // <=> MyRun->LowFrequencyCorrelationsBetweenChannels(); // (big file)
5083  // MyRun->HighFrequencyCorrelationsBetweenChannels(); // (big file)
5084 
5085  MyRun->Expert2Calculations(); // (fast because expert1 has been called)
5086  // <=> MyRun->LowFrequencyMeanCorrelationsBetweenStins();
5087  // MyRun->HighFrequencyMeanCorrelationsBetweenStins();
5088  }
5089 
5090  if( calc_code == "Stt" )
5091  {
5092  //---Additional calculations:
5093  // "correlations" between Stins (long time, "normal" size file)
5094  cout << "*TEcnaGui::Calculations> Please, wait." << endl;
5095 
5096  MyRun->Expert2Calculations(); // (long time but not big file)
5097 
5098  // Explanation/example: if MyRun->LowFrequencyCorrelationsBetweenChannels() (expert1)
5099  // has not been called by the user, it is automatically called by
5100  // MyRun->LowFrequencyMeanCorrelationsBetweenStins()
5101  // but the corresponding file is not written (idem for "HighFrequency")
5102  }
5103  }
5104  //.......................... WRITE results in file
5105  TString calc_file_name = "?";
5106  if( calc_code == "Std" )
5107  {
5108  if( fKeyAnaType == "AdcPed1" ){calc_file_name = "StdPed1";}
5109  if( fKeyAnaType == "AdcPed6" ){calc_file_name = "StdPed6";}
5110  if( fKeyAnaType == "AdcPed12" ){calc_file_name = "StdPed12";}
5111  if( fKeyAnaType == "AdcPeg12" ){calc_file_name = "StdPeg12";}
5112  if( fKeyAnaType == "AdcLaser" ){calc_file_name = "StdLaser";}
5113  if( fKeyAnaType == "AdcPes12" ){calc_file_name = "StdPes12";}
5114 
5115  if( fKeyAnaType == "AdcSPed1" ){calc_file_name = "StdSPed1";}
5116  if( fKeyAnaType == "AdcSPed6" ){calc_file_name = "StdSPed6";}
5117  if( fKeyAnaType == "AdcSPed12" ){calc_file_name = "StdSPed12";}
5118  if( fKeyAnaType == "AdcSPeg12" ){calc_file_name = "StdSPeg12";}
5119  if( fKeyAnaType == "AdcSLaser" ){calc_file_name = "StdSLaser";}
5120  if( fKeyAnaType == "AdcSPes12" ){calc_file_name = "StdSPes12";}
5121 
5122  if( fKeyAnaType == "AdcPhys" ){calc_file_name = "StdPhys";}
5123  if( fKeyAnaType == "AdcAny" ){calc_file_name = "StdAny";}
5124 
5125  }
5126  if( calc_code == "Scc" )
5127  {
5128  if( fKeyAnaType == "AdcPed1" ){calc_file_name = "SccPed1";}
5129  if( fKeyAnaType == "AdcPed6" ){calc_file_name = "SccPed6";}
5130  if( fKeyAnaType == "AdcPed12" ){calc_file_name = "SccPed12";}
5131  if( fKeyAnaType == "AdcPeg12" ){calc_file_name = "SccPeg12";}
5132  if( fKeyAnaType == "AdcLaser" ){calc_file_name = "SccLaser";}
5133  if( fKeyAnaType == "AdcPes12" ){calc_file_name = "SccPes12" ;}
5134 
5135  if( fKeyAnaType == "AdcSPed1" ){calc_file_name = "SccSPed1";}
5136  if( fKeyAnaType == "AdcSPed6" ){calc_file_name = "SccSPed6";}
5137  if( fKeyAnaType == "AdcSPed12" ){calc_file_name = "SccSPed12";}
5138  if( fKeyAnaType == "AdcSPeg12" ){calc_file_name = "SccSPeg12";}
5139  if( fKeyAnaType == "AdcSLaser" ){calc_file_name = "SccSLaser";}
5140  if( fKeyAnaType == "AdcSPes12" ){calc_file_name = "SccSPes12";}
5141 
5142  if( fKeyAnaType == "AdcPhys" ){calc_file_name = "SccPhys";}
5143  if( fKeyAnaType == "AdcAny" ){calc_file_name = "SccAny";}
5144  }
5145 
5146  if( calc_code == "Stt" )
5147  {
5148  if( fKeyAnaType == "AdcPed1" ){calc_file_name = "SttPed1";}
5149  if( fKeyAnaType == "AdcPed6" ){calc_file_name = "SttPed6";}
5150  if( fKeyAnaType == "AdcPed12" ){calc_file_name = "SttPed12";}
5151  if( fKeyAnaType == "AdcPeg12" ){calc_file_name = "SttPeg12";}
5152  if( fKeyAnaType == "AdcLaser" ){calc_file_name = "SttLaser";}
5153  if( fKeyAnaType == "AdcPes12" ){calc_file_name = "SttPes12" ;}
5154 
5155  if( fKeyAnaType == "AdcSPed1" ){calc_file_name = "SttSPed1";}
5156  if( fKeyAnaType == "AdcSPed6" ){calc_file_name = "SttSPed6";}
5157  if( fKeyAnaType == "AdcSPed12" ){calc_file_name = "SttSPed12";}
5158  if( fKeyAnaType == "AdcSPeg12" ){calc_file_name = "SttSPeg12";}
5159  if( fKeyAnaType == "AdcSLaser" ){calc_file_name = "SttSLaser";}
5160  if( fKeyAnaType == "AdcSPes12" ){calc_file_name = "SttSPes12";}
5161 
5162  if( fKeyAnaType == "AdcPhys" ){calc_file_name = "SttPhys";}
5163  if( fKeyAnaType == "AdcAny" ){calc_file_name = "SttAny";}
5164  }
5165 
5166  if( MyRun->WriteNewRootFile(calc_file_name.Data()) == kTRUE )
5167  {
5168  cout << "*TEcnaGui::Calculations> Done. Write ROOT file: "
5169  << MyRun->GetNewRootFileNameShort() << " OK" << endl << endl;
5170  }
5171  else
5172  {
5173  cout << "!TEcnaGui::Calculations> Writing ROOT file failure for file "
5174  << MyRun->GetNewRootFileNameShort()
5175  << fTTBELL << endl << endl;
5176  }
5177  }
5178  else
5179  {
5180  cout << "!TEcnaGui::Calculations> " << MyRun->GetRootFileNameShort() << ": file not found."
5181  << fTTBELL << endl << endl;
5182  }
5183  //.......................................................................
5184  delete MyRun; MyRun = 0; fCdelete++;
5185  } // end of for( Int_t nStex = nStexMin; nStex<= nStexMax; nStex++)
5186  fConfirmCalcScc = 0;
5187  } // end of if( fKeyNbOfSamples >= fKeyNbOfSampForCalc )
5188  else
5189  {
5190  cout << "!TEcnaGui::Calculations> *** ERROR *** Number of samples in file (=" << fKeyNbOfSamples
5191  << ") less than number of samples for calculations (= " << fKeyNbOfSampForCalc << "). " << endl;
5192  }
5193  } // end of if( calc_code == "Std" || ( ( calc_code == "Scc" || calc_code == "Stt" ) && fConfirmCalcScc == 1 ) )
5194  else
5195  {
5196  cout << " *TEcnaGui [" << fCnaCommand
5197  << "]> Calculation requested with option " << calc_code
5198  << ". This can last more than 5 minutes. Please, click again to confirm."
5199  << fTTBELL << endl;
5200  fConfirmCalcScc = 1;
5201  }
5202  }
5203  else
5204  {
5205  cout << "!TEcnaGui::Calculations> fKeyAnaType = " << fKeyAnaType
5206  << " : wrong code in analysis name." << endl
5207  << " List of available standard analysis names for calculations: " << endl
5208  << " AdcPed1, AdcPed6, AdcPed12, AdcPeg12, AdcLaser, AdcPes12," << endl
5209  << " AdcSPed1, AdcSPed6, AdcSPed12, AdcSPeg12, AdcSLaser, AdcSPes12," << endl
5210  << " AdcPhys, AdcAny (all names must begin with 'Adc')."
5211  << fTTBELL << endl;
5212  }
5213 }
5214 //==========================================================================
5215 //
5216 // "View" M E T H O D S
5217 //
5218 //==========================================================================
5219 //---------- common messages
5220 
5221 void TEcnaGui::MessageCnaCommandReplyA(const TString first_same_plot)
5222 {
5223  // reply message of the Cna command
5224 
5225  cout << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
5226  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber
5227  << ", last req. evt#: " << fKeyLastReqEvtNumber << endl;
5228 
5229  if( first_same_plot == "ASCII" )
5230  {
5231  cout << " " << fStexName.Data() << ": " << fKeyStexNumber
5232  << ", option: " << first_same_plot << endl;
5233  }
5234 }
5235 
5236 void TEcnaGui::MessageCnaCommandReplyB(const TString first_same_plot)
5237 {
5238  // reply message of the Cna command
5239 
5240  if( first_same_plot == "ASCII" )
5241  {
5242  if(fKeyStexNumber > 0)
5243  {
5244  if( fHistos->StatusFileFound() == kTRUE && fHistos->StatusDataExist() == kTRUE )
5245  {
5246  TString xAsciiFileName = fHistos->AsciiFileName();
5247  if( xAsciiFileName != "?" )
5248  {cout << " Histo written in ASCII file: " << xAsciiFileName.Data();}
5249  }
5250  }
5251  else
5252  {
5253  cout << " No writing in ASCII file since "
5254  << fStexName.Data() << " number = " << fKeyStexNumber;
5255  }
5256  cout << endl;
5257  }
5258 }
5259 
5260 //==========================================================================
5261 //
5262 // View Matrix
5263 //
5264 //==========================================================================
5265 //---------------------------- Cortt
5267 {
5268  // Plot of Low Frequency Mean Cor(c,c') for each pair of Stins
5269 
5270  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5273 
5274  fCnaCommand++;
5275  cout << " *TEcnaGui [" << fCnaCommand
5276  << "]> Low Frequency Mean Cor(c,c') for each pair of " << fStinName.Data()
5277  << "s. Option: "
5278  << option_plot;
5279  MessageCnaCommandReplyA(option_plot);
5280 
5284  fHistos->PlotMatrix("Cor", "MttLF", option_plot);
5285 
5286  MessageCnaCommandReplyB(option_plot);
5287 }
5289 {
5290  // Plot of Low Frequency Mean Cor(c,c') for each pair of Stins
5291 
5292  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5295 
5296  fCnaCommand++;
5297  cout << " *TEcnaGui [" << fCnaCommand
5298  << "]> High Frequency Mean Cor(c,c') for each pair of " << fStinName.Data()
5299  << "s. Option: "
5300  << option_plot;
5301  MessageCnaCommandReplyA(option_plot);
5302 
5306  fHistos->PlotMatrix("Cor", "MttHF", option_plot);
5307 
5308  MessageCnaCommandReplyB(option_plot);
5309 }
5310 //---------------------------------------------- Corcc
5312  const Int_t& cStexStin_B,
5313  const TString option_plot)
5314 {
5315  // Low Frequency Correlation matrix (crystal of Stin X, crystal of Stin X) for each Stin
5316 
5317  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5320 
5321  fCnaCommand++;
5322  cout << " *TEcnaGui [" << fCnaCommand
5323  << "]> Low Frequency Correlation matrix between channels. "
5324  << fStinName.Data() << " A: " << cStexStin_A
5325  << ", " << fStinName.Data() << " B: " << cStexStin_B
5326  << ", option: " << option_plot;
5327  MessageCnaCommandReplyA(option_plot);
5328 
5332  fHistos->PlotMatrix("Cor", "MccLF", cStexStin_A, cStexStin_B, option_plot);
5333  MessageCnaCommandReplyB(option_plot);
5334 }
5335 
5336 void TEcnaGui::ViewMatrixHighFrequencyCorrelationsBetweenChannels(const Int_t& cStexStin_A, const Int_t& cStexStin_B,
5337  const TString option_plot)
5338 {
5339 // High Frequency Correlation matrix (crystal of Stin X, crystal of Stin X) for each Stin
5340 
5341  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5344 
5345  fCnaCommand++;
5346  cout << " *TEcnaGui [" << fCnaCommand
5347  << "]> High Frequency Correlation matrix between channels. "
5348  << fStinName.Data() << " A: " << cStexStin_A
5349  << ", " << fStinName.Data() << " B: " << cStexStin_B
5350  << ", option: " << option_plot;
5351  MessageCnaCommandReplyA(option_plot);
5352 
5356  fHistos->PlotMatrix("Cor", "MccHF", cStexStin_A, cStexStin_B, option_plot);
5357 
5358  MessageCnaCommandReplyB(option_plot);
5359 }
5360 
5362 {
5363  //===> big matrix
5364 
5365  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5368 
5369  fCnaCommand++;
5370  cout << " *TEcnaGui [" << fCnaCommand
5371  << "]> LF Correlations between channels for each " << fStinName.Data()
5372  << " in " << fStexName.Data() << ". 2D histo. "
5373  << fStexName.Data() << ": " << fKeyStexNumber;
5374  MessageCnaCommandReplyA("DUMMY");
5375 
5379  fHistos->PlotMatrix("Cor", "MccLF", "COLZ");
5380 
5381  MessageCnaCommandReplyB("DUMMY");
5382 }
5383 
5385 {
5386  //===> big matrix
5387 
5388  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5391 
5392  fCnaCommand++;
5393  cout << " *TEcnaGui [" << fCnaCommand
5394  << "]> HF Correlations between channels for each " << fStinName.Data()
5395  << " in " << fStexName.Data() << ". 2D histo. "
5396  << fStexName.Data() << ": " << fKeyStexNumber;
5397  MessageCnaCommandReplyA("DUMMY");
5398 
5402  fHistos->PlotMatrix("Cor", "MccHF", "COLZ");
5403 
5404  MessageCnaCommandReplyB("DUMMY");
5405 }
5406 
5407 //---------------------------- Corss, Covss
5408 void TEcnaGui::ViewMatrixCorrelationSamples(const Int_t& cStexStin_A, const Int_t& i0StinEcha,
5409  const TString option_plot)
5410 {
5411 // Plot of correlation matrix between samples for a given channel
5412 
5413  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5416 
5417  Int_t ChOffset = 0;
5418  if(fSubDet == "EE"){ChOffset = 1;}
5419 
5420  fCnaCommand++;
5421  cout << " *TEcnaGui [" << fCnaCommand
5422  << "]> Correlation matrix between samples. "
5423  << fStinName.Data() << ": " << cStexStin_A << ", channel " << i0StinEcha + ChOffset
5424  << ", option: " << option_plot;
5425  MessageCnaCommandReplyA(option_plot);
5426 
5430  fHistos->PlotMatrix("Cor", "Mss", cStexStin_A, i0StinEcha, option_plot);
5431 
5432 
5433  MessageCnaCommandReplyB(option_plot);
5434 }
5435 
5436 void TEcnaGui::ViewMatrixCovarianceSamples(const Int_t& cStexStin_A, const Int_t& i0StinEcha,
5437  const TString option_plot)
5438 {
5439 // Plot of covariance matrix between samples for a given channel
5440 
5441  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5444 
5445  Int_t ChOffset = 0;
5446  if(fSubDet == "EE"){ChOffset = 1;}
5447 
5448  fCnaCommand++;
5449  cout << " *TEcnaGui [" << fCnaCommand
5450  << "]> Covariance matrix between samples. "
5451  << fStinName.Data() << ": " << cStexStin_A << ", channel " << i0StinEcha + ChOffset
5452  << ", option: " << option_plot;
5453  MessageCnaCommandReplyA(option_plot);
5454 
5455  fHistos->SetHistoMin(fKeyVminD_TNo_ChNb); // same as mean sample sigmas
5458  fHistos->PlotMatrix("Cov", "Mss", cStexStin_A, i0StinEcha, option_plot);
5459 
5460  MessageCnaCommandReplyB(option_plot);
5461 }
5462 
5463 //==========================================================================
5464 //
5465 // ViewStin...
5466 //
5467 // StexStin ==> (sample,sample) matrices for all the crystal of cStexStin
5468 //
5469 //==========================================================================
5470 void TEcnaGui::ViewStinCorrelationSamples(const Int_t& cStexStin)
5471 {
5472  // Plot of (sample,sample) correlation matrices for all the crystal of a given Stin
5473 
5474  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5477 
5478  fCnaCommand++;
5479  cout << " *TEcnaGui [" << fCnaCommand
5480  << "]> Correlation matrices between samples for each channel of "
5481  << fStinName.Data() << " " << cStexStin;
5482  MessageCnaCommandReplyA("DUMMY");
5483 
5487  fHistos->CorrelationsBetweenSamples(cStexStin);
5488 
5489  MessageCnaCommandReplyB("DUMMY");
5490 }
5491 
5492 void TEcnaGui::ViewStinCovarianceSamples(const Int_t& cStexStin)
5493 {
5494  // Plot of (sample,sample) covariance matrices for all the crystal of a given Stin
5495 
5496  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5499 
5500  fCnaCommand++;
5501  cout << " *TEcnaGui [" << fCnaCommand
5502  << "]> Covariance matrices between samples for each channel of "
5503  << fStinName.Data() << " " << cStexStin;
5504  MessageCnaCommandReplyA("DUMMY");
5505 
5506  fHistos->SetHistoMin(fKeyVminD_TNo_ChNb); // same as mean sample sigmas
5509  fHistos->CovariancesBetweenSamples(cStexStin);
5510 
5511  MessageCnaCommandReplyB("DUMMY");
5512 }
5513 //==========================================================================
5514 //
5515 // ViewSorS (eta,phi)
5516 //
5517 //==========================================================================
5518 
5520 {
5521  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5522 
5523  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5524  {
5527  fCnaCommand++;
5528  cout << " *TEcnaGui [" << fCnaCommand
5529  << "]> Number of Events. 2D histo. "
5530  << fStexName.Data() << ": " << fKeyStexNumber;
5531  }
5532  if( fKeyStexNumber == 0 )
5533  {
5536  fCnaCommand++;
5537  cout << " *TEcnaGui [" << fCnaCommand
5538  << "]> Average Number of Events. 2D histo for "
5539  << fSubDet.Data();
5540  }
5541 
5542  MessageCnaCommandReplyA("DUMMY");
5543 
5547  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5548  {fHistos->PlotDetector("NOE", "SM");}
5549  if( fKeyStexNumber == 0 )
5550  {fHistos->PlotDetector("NOE", "EB");}
5551 
5552  MessageCnaCommandReplyB("DUMMY");
5553 }
5554 
5556 {
5557  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5558 
5559  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5560  {
5563  fCnaCommand++;
5564  cout << " *TEcnaGui [" << fCnaCommand
5565  << "]> Pedestals. 2D histo. "
5566  << fStexName.Data() << ": " << fKeyStexNumber;
5567  }
5568  if( fKeyStexNumber == 0 )
5569  {
5572  fCnaCommand++;
5573  cout << " *TEcnaGui [" << fCnaCommand
5574  << "]> Pedestals. 2D histo for "
5575  << fSubDet.Data();
5576  }
5577  MessageCnaCommandReplyA("DUMMY");
5578 
5582 
5583  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5584  {fHistos->PlotDetector("Ped", "SM");}
5585  if( fKeyStexNumber == 0 )
5586  {fHistos->PlotDetector("Ped", "EB");}
5587 
5588  MessageCnaCommandReplyB("DUMMY");
5589 }
5590 
5592 {
5593  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5594 
5595  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5596  {
5599  fCnaCommand++;
5600  cout << " *TEcnaGui [" << fCnaCommand
5601  << "]> Total noise. 2D histo. "
5602  << fStexName.Data() << ": " << fKeyStexNumber;
5603  }
5604  if( fKeyStexNumber == 0 )
5605  {
5608  fCnaCommand++;
5609  cout << " *TEcnaGui [" << fCnaCommand
5610  << "]> Average total noise. 2D histo for "
5611  << fSubDet.Data();
5612  }
5613  MessageCnaCommandReplyA("DUMMY");
5614 
5618  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5619  {fHistos->PlotDetector("TNo", "SM");}
5620  if( fKeyStexNumber == 0 )
5621  {fHistos->PlotDetector("TNo", "EB");}
5622 
5623  MessageCnaCommandReplyB("DUMMY");
5624 }
5625 
5626 
5628 {
5629  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5630 
5631  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5632  {
5635  fCnaCommand++;
5636  cout << " *TEcnaGui [" << fCnaCommand
5637  << "]> Low frequency noise. 2D histo. "
5638  << fStexName.Data() << ": " << fKeyStexNumber;
5639  }
5640  if( fKeyStexNumber == 0 )
5641  {
5644  fCnaCommand++;
5645  cout << " *TEcnaGui [" << fCnaCommand
5646  << "]> Average low frequency noise. 2D histo for "
5647  << fSubDet.Data();
5648  }
5649  MessageCnaCommandReplyA("DUMMY");
5650 
5654  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5655  {fHistos->PlotDetector("LFN", "SM");}
5656  if( fKeyStexNumber == 0 )
5657  {fHistos->PlotDetector("LFN", "EB");}
5658 
5659  MessageCnaCommandReplyB("DUMMY");
5660 }
5661 
5663 {
5664  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5665 
5666  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5667  {
5670  fCnaCommand++;
5671  cout << " *TEcnaGui [" << fCnaCommand
5672  << "]> High frequency noise. 2D histo. "
5673  << fStexName.Data() << ": " << fKeyStexNumber;
5674  }
5675  if( fKeyStexNumber == 0 )
5676  {
5679  fCnaCommand++;
5680  cout << " *TEcnaGui [" << fCnaCommand
5681  << "]> Average high frequency noise. 2D histo for "
5682  << fSubDet.Data();
5683  }
5684  MessageCnaCommandReplyA("DUMMY");
5685 
5689  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5690  {
5691  fHistos->PlotDetector("HFN", "SM");
5692  }
5693  if( fKeyStexNumber == 0 )
5694  {
5695  fHistos->PlotDetector("HFN", "EB");
5696  }
5697 
5698  MessageCnaCommandReplyB("DUMMY");
5699 }
5700 
5702 {
5703  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5704 
5705  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5706  {
5709  fCnaCommand++;
5710  cout << " *TEcnaGui [" << fCnaCommand
5711  << "]> Mean cor(s,s'). 2D histo. "
5712  << fStexName.Data() << ": " << fKeyStexNumber;
5713  }
5714  if( fKeyStexNumber == 0 )
5715  {
5718  fCnaCommand++;
5719  cout << " *TEcnaGui [" << fCnaCommand
5720  << "]> Average mean cor(s,s'). 2D histo for "
5721  << fSubDet.Data();
5722  }
5723  MessageCnaCommandReplyA("DUMMY");
5724 
5728  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5729  {
5730  fHistos->PlotDetector("MCs", "SM");
5731  }
5732  if( fKeyStexNumber == 0 )
5733  {
5734  fHistos->PlotDetector("MCs", "EB");
5735  }
5736 
5737  MessageCnaCommandReplyB("DUMMY");
5738 }
5739 
5741 {
5742  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5743 
5744  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5745  {
5748  fCnaCommand++;
5749  cout << " *TEcnaGui [" << fCnaCommand
5750  << "]> Sigma of Cor(s,s'). 2D histo. "
5751  << fStexName.Data() << ": " << fKeyStexNumber;
5752  }
5753  if( fKeyStexNumber == 0 )
5754  {
5757  fCnaCommand++;
5758  cout << " *TEcnaGui [" << fCnaCommand
5759  << "]> Average sigma of Cor(s,s'). 2D histo for "
5760  << fSubDet.Data();
5761  }
5762  MessageCnaCommandReplyA("DUMMY");
5763 
5767  if( fKeyStexNumber > 0 && fKeyStexNumber <= fEcal->MaxStexInStas() )
5768  {
5769  fHistos->PlotDetector("SCs", "SM");
5770  }
5771  if( fKeyStexNumber == 0 )
5772  {
5773  fHistos->PlotDetector("SCs", "EB");
5774  }
5775 
5776  MessageCnaCommandReplyB("DUMMY");
5777 }
5778 
5779 //=======================================================================================
5780 //
5781 // ViewStinCrystalNumbering
5782 //
5783 //=======================================================================================
5784 void TEcnaGui::ViewStinCrystalNumbering(const Int_t& StexStinEcna)
5785 {
5786  // Plot the crystal numbering of one Stin
5787 
5788  Int_t StinNumber = -1;
5789  if( fSubDet == "EB" ){StinNumber = StexStinEcna;}
5790  if( fSubDet == "EE" && fKeyStexNumber != 0 )
5791  {StinNumber = fEcalNumbering->GetDeeSCConsFrom1DeeSCEcna(fKeyStexNumber,StexStinEcna);}
5792 
5793  fCnaCommand++;
5794  cout << " *TEcnaGui [" << fCnaCommand
5795  << "]> Crystal numbering for " << " " << fStexName.Data() << " "
5796  << fKeyStexNumber << ", " << fStinName.Data() << " " << StinNumber << endl;
5797 
5798  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5801 }
5802 //----------------> end of ViewStinCrystalNumbering()
5803 
5804 //===========================================================================
5805 //
5806 // ViewStexStinNumbering
5807 //
5808 //===========================================================================
5810 {
5811  // Plot the Stin numbering of one Stex.
5812  // No argument here since the Stex number is a part of the ROOT file name
5813  // and is in the entry field of the Stex button (fKeyStexNumber)
5814 
5815  fCnaCommand++;
5816  cout << " *TEcnaGui [" << fCnaCommand
5817  << "]> " << fStinName.Data() << " numbering for " << fStexName.Data()
5818  << " " << fKeyStexNumber << endl;
5819 
5820  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5823 }
5824 //----------------> end of ViewStexStinNumbering()
5825 
5826 //===============================================================================
5827 //
5828 // ViewHisto...
5829 //
5830 //===============================================================================
5831 //......................... Nb of evts
5832 void TEcnaGui::ViewHistoSorSNumberOfEventsOfCrystals(const TString first_same_plot)
5833 {
5834 // Plot the 1D histogram of the number of events (found in the data)
5835 // as a function of crystals (grouped by Stins)
5836 
5837  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5840 
5841  fCnaCommand++;
5842  cout << " *TEcnaGui [" << fCnaCommand
5843  << "]> Number of events for crystals";
5844  MessageCnaCommandReplyA(first_same_plot);
5845 
5851  fHistos->Plot1DHisto("Xtal", "NOE", "SM", first_same_plot); // "SM" not active since fFapStexNumber is defined "outside"
5852 
5853  MessageCnaCommandReplyB(first_same_plot);
5854 }
5855 
5856 void TEcnaGui::ViewHistoSorSNumberOfEventsDistribution(const TString first_same_plot)
5857 {
5858 // Plot the 1D histogram of the number of events distribution for a Stex
5859 
5860  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5863 
5864  fCnaCommand++;
5865  cout << " *TEcnaGui [" << fCnaCommand
5866  << "]> Number of events distribution";
5867  MessageCnaCommandReplyA(first_same_plot);
5868 
5874  fHistos->Plot1DHisto("NOE", "NOX", "SM", first_same_plot);
5875 
5876  MessageCnaCommandReplyB(first_same_plot);
5877 }
5878 
5879 //........................... Pedestals
5880 void TEcnaGui::ViewHistoSorSPedestalsOfCrystals(const TString first_same_plot)
5881 {
5882 // Plot the 1D histogram of the pedestals as a function of crystals (grouped by Stins)
5883 
5884  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5887 
5888  fCnaCommand++;
5889  cout << " *TEcnaGui [" << fCnaCommand
5890  << "]> Pedestals";
5891  MessageCnaCommandReplyA(first_same_plot);
5892 
5898  fHistos->Plot1DHisto("Xtal", "Ped", "SM", first_same_plot);
5899 
5900  MessageCnaCommandReplyB(first_same_plot);
5901 }
5902 
5903 void TEcnaGui::ViewHistoSorSPedestalsDistribution(const TString first_same_plot)
5904 {
5905 // Plot the 1D histogram of the pedestals distribution for a Stex
5906 
5907  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5910 
5911  fCnaCommand++;
5912  cout << " *TEcnaGui [" << fCnaCommand
5913  << "]> Pedestals distribution";
5914  MessageCnaCommandReplyA(first_same_plot);
5915 
5921  fHistos->Plot1DHisto("Ped", "NOX", "SM", first_same_plot);
5922 
5923  MessageCnaCommandReplyB(first_same_plot);
5924 }
5925 
5926 //............................... Total noise
5927 void TEcnaGui::ViewHistoSorSTotalNoiseOfCrystals(const TString first_same_plot)
5928 {
5929 // Plot the 1D histogram of the mean sample sigmas as a function of crystals (grouped by Stins)
5930 
5931  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5934 
5935  fCnaCommand++;
5936  cout << " *TEcnaGui [" << fCnaCommand
5937  << "]> Total noise";
5938  MessageCnaCommandReplyA(first_same_plot);
5939 
5945  fHistos->Plot1DHisto("Xtal", "TNo", "SM", first_same_plot);
5946 
5947  MessageCnaCommandReplyB(first_same_plot);
5948 }
5949 
5950 void TEcnaGui::ViewHistoSorSTotalNoiseDistribution(const TString first_same_plot)
5951 {
5952 // Plot the 1D histogram of the mean sample sigmas distribution for a Stex
5953 
5954  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5957 
5958  fCnaCommand++;
5959  cout << " *TEcnaGui [" << fCnaCommand
5960  << "]> Total noise distribution";
5961  MessageCnaCommandReplyA(first_same_plot);
5962 
5968  fHistos->Plot1DHisto("TNo", "NOX", "SM", first_same_plot);
5969 
5970  MessageCnaCommandReplyB(first_same_plot);
5971 }
5972 
5973 
5974 //............................ Low frequency noise
5975 void TEcnaGui::ViewHistoSorSLowFrequencyNoiseOfCrystals(const TString first_same_plot)
5976 {
5977 // Plot the 1D histogram of the pedestals as a function of crystals (grouped by Stins)
5978 
5979  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
5982 
5983  fCnaCommand++;
5984  cout << " *TEcnaGui [" << fCnaCommand
5985  << "]> Low frequency noise";
5986  MessageCnaCommandReplyA(first_same_plot);
5987 
5993  fHistos->Plot1DHisto("Xtal", "LFN", "SM", first_same_plot);
5994 
5995  MessageCnaCommandReplyB(first_same_plot);
5996 }
5997 
5998 void TEcnaGui::ViewHistoSorSLowFrequencyNoiseDistribution(const TString first_same_plot)
5999 {
6000 // Plot the 1D histogram of the pedestals distribution for a Stex
6001 
6002  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6005 
6006  fCnaCommand++;
6007  cout << " *TEcnaGui [" << fCnaCommand
6008  << "]> Low frequency noise distribution";
6009  MessageCnaCommandReplyA(first_same_plot);
6010 
6016  fHistos->Plot1DHisto("LFN", "NOX", "SM", first_same_plot);
6017 
6018  MessageCnaCommandReplyB(first_same_plot);
6019 }
6020 
6021 //............................ High frequency noise
6022 void TEcnaGui::ViewHistoSorSHighFrequencyNoiseOfCrystals(const TString first_same_plot)
6023 {
6024 // Plot the 1D histogram of the mean sample sigmas as a function of crystals (grouped by Stins)
6025 
6026  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6029 
6030  fCnaCommand++;
6031  cout << " *TEcnaGui [" << fCnaCommand
6032  << "]> High frequency noise";
6033  MessageCnaCommandReplyA(first_same_plot);
6034 
6040  fHistos->Plot1DHisto("Xtal", "HFN", "SM", first_same_plot);
6041 
6042  MessageCnaCommandReplyB(first_same_plot);
6043 }
6044 
6046 {
6047 // Plot the 1D histogram of the mean sample sigmas distribution for a Stex
6048 
6049  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6052 
6053  fCnaCommand++;
6054  cout << " *TEcnaGui [" << fCnaCommand
6055  << "]> High frequency noise distribution";
6056  MessageCnaCommandReplyA(first_same_plot);
6057 
6063  fHistos->Plot1DHisto("HFN", "NOX", "SM", first_same_plot);
6064 
6065  MessageCnaCommandReplyB(first_same_plot);
6066 }
6067 
6068 //............................ Correlations between samples
6069 void TEcnaGui::ViewHistoSorSMeanCorssOfCrystals(const TString first_same_plot)
6070 {
6071 // Plot the 1D histogram of the mean cor(s,s') as a function of crystals (grouped by Stins)
6072 
6073  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6076 
6077  fCnaCommand++;
6078  cout << " *TEcnaGui [" << fCnaCommand
6079  << "]> Mean cor(s,s')";
6080  MessageCnaCommandReplyA(first_same_plot);
6081 
6087  fHistos->Plot1DHisto("Xtal", "MCs", "SM", first_same_plot);
6088 
6089  MessageCnaCommandReplyB(first_same_plot);
6090 }
6091 
6092 void TEcnaGui::ViewHistoSorSMeanCorssDistribution(const TString first_same_plot)
6093 {
6094 // Plot the 1D histogram of the mean cor(s,s') sigmas distribution for a Stex
6095 
6096  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6099 
6100  fCnaCommand++;
6101  cout << " *TEcnaGui [" << fCnaCommand
6102  << "]> Mean cor(s,s') distribution";
6103  MessageCnaCommandReplyA(first_same_plot);
6104 
6110  fHistos->Plot1DHisto("MCs", "NOX", "SM", first_same_plot);
6111 
6112  MessageCnaCommandReplyB(first_same_plot);
6113 }
6114 
6115 void TEcnaGui::ViewHistoSorSSigmaOfCorssOfCrystals(const TString first_same_plot)
6116 {
6117 // Plot the 1D histogram of the mean cor(s,s') as a function of crystals (grouped by Stins)
6118 
6119  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6122 
6123  fCnaCommand++;
6124  cout << " *TEcnaGui [" << fCnaCommand
6125  << "]> Sigma of cor(s,s')";
6126  MessageCnaCommandReplyA(first_same_plot);
6127 
6133  fHistos->Plot1DHisto("Xtal", "SCs", "SM", first_same_plot);
6134 
6135  MessageCnaCommandReplyB(first_same_plot);
6136 }
6137 
6138 void TEcnaGui::ViewHistoSorSSigmaOfCorssDistribution(const TString first_same_plot)
6139 {
6140 // Plot the 1D histogram of the mean cor(s,s') sigmas distribution for a Stex
6141 
6142  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6145 
6146  fCnaCommand++;
6147  cout << " *TEcnaGui [" << fCnaCommand
6148  << "]> Sigma of cor(s,s') distribution";
6149  MessageCnaCommandReplyA(first_same_plot);
6150 
6156  fHistos->Plot1DHisto("SCs", "NOX", "SM", first_same_plot);
6157 
6158  MessageCnaCommandReplyB(first_same_plot);
6159 }
6160 
6161 //........................................................................................................
6162 void TEcnaGui::ViewHistoCrystalSampleMeans(const Int_t& cStexStin_A, const Int_t& crystal,
6163  const TString first_same_plot)
6164 {
6165 // Plot the 1D histogram of the mean sample ADC for a crystal
6166 
6167  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6170 
6171  fCnaCommand++;
6172  cout << " *TEcnaGui [" << fCnaCommand
6173  << "]> Sample means"
6174  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6175  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6176  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal" << crystal
6177  << ", option: " << first_same_plot << endl;
6178 
6184  fHistos->Plot1DHisto("Sample#", "SampleMean", cStexStin_A, crystal, first_same_plot);
6185 }
6186 
6187 //........................................................................................................
6188 void TEcnaGui::ViewHistoCrystalSampleMeansDistribution(const Int_t& cStexStin_A, const Int_t& crystal,
6189  const TString first_same_plot)
6190 {
6191 // Plot the 1D histogram distribution of the mean sample ADC for a crystal
6192 
6193  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6196 
6197  fCnaCommand++;
6198  cout << " *TEcnaGui [" << fCnaCommand
6199  << "]> Sample means"
6200  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6201  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6202  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal" << crystal
6203  << ", option: " << first_same_plot << endl;
6204 
6210  fHistos->Plot1DHisto("SampleMean", "NbOfSamples", cStexStin_A, crystal, first_same_plot);
6211 }
6212 
6213 void TEcnaGui::ViewHistoCrystalSampleSigmas(const Int_t& cStexStin_A, const Int_t& crystal,
6214  const TString first_same_plot)
6215 {
6216 // Plot the 1D histogram of the sigmas of the sample ADC for a crystal
6217 
6218  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6221 
6222  fCnaCommand++;
6223  cout << " *TEcnaGui [" << fCnaCommand
6224  << "]> Sample sigmas"
6225  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6226  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6227  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal:" << crystal
6228  << ", option: " << first_same_plot << endl;
6229 
6235  fHistos->Plot1DHisto("Sample#", "SampleSigma", cStexStin_A, crystal, first_same_plot);
6236 }
6237 
6238 void TEcnaGui::ViewHistoCrystalSampleSigmasDistribution(const Int_t& cStexStin_A, const Int_t& crystal,
6239  const TString first_same_plot)
6240 {
6241 // Plot the 1D histogram distribution of the sigmas of the sample ADC for a crystal
6242 
6243  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6246 
6247  fCnaCommand++;
6248  cout << " *TEcnaGui [" << fCnaCommand
6249  << "]> Sample sigmas"
6250  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6251  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6252  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal:" << crystal
6253  << ", option: " << first_same_plot << endl;
6254 
6260  fHistos->Plot1DHisto("SampleSigma", "NbOfSamples", cStexStin_A, crystal, first_same_plot);
6261 }
6262 
6263 //............................ Sample values
6264 void TEcnaGui::ViewHistoCrystalSampleValues(const Int_t& cStexStin_A, const Int_t& crystal,
6265  const Int_t& sample, const TString first_same_plot)
6266 {
6267 // Plot the 1D histogram of the pedestals as a function of the event number for a crystal
6268 
6269  Int_t n1Sample = sample+1;
6270  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6273 
6274  fCnaCommand++;
6275  cout << " *TEcnaGui [" << fCnaCommand
6276  << "]> ADC sample values"
6277  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6278  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6279  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal: " << crystal
6280  << ", sample: " << n1Sample << ", option: " << first_same_plot << endl;
6281 
6287  fHistos->Plot1DHisto("Event#", "AdcValue", cStexStin_A, crystal, n1Sample, first_same_plot);
6288 }
6289 
6290 void TEcnaGui::ViewHistoSampleEventDistribution(const Int_t& cStexStin_A, const Int_t& crystal,
6291  const Int_t& sample, const TString first_same_plot)
6292 {
6293 // Plot the 1D histogram of the ADC event distribution for a sample
6294 
6295  Int_t n1Sample = sample+1;
6296  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6299 
6300  fCnaCommand++;
6301  cout << " *TEcnaGui [" << fCnaCommand
6302  << "]> ADC event distribution"
6303  << ". Analysis: " << fKeyAnaType << ", Run: " << fKeyRunNumber
6304  << ", 1st req. evt#: " << fKeyFirstReqEvtNumber << ", last req. evt#: " << fKeyLastReqEvtNumber
6305  << ", Stex: " << fKeyStexNumber << ", " << fStinName.Data() << ": " << cStexStin_A << ", crystal: " << crystal
6306  << ", sample " << n1Sample << ", option: " << first_same_plot << endl;
6307 
6313  fHistos->Plot1DHisto("AdcValue", "NbOfEvts", cStexStin_A, crystal, n1Sample, first_same_plot);
6314 }
6315 
6316 //------------------------------------------------------- Evolution in time (as a function of run date)
6317 void TEcnaGui::ViewHistimeCrystalPedestals(const TString run_par_file_name,
6318  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6319  const TString first_same_plot)
6320 {
6321 // Plot the graph of Pedestals evolution for a given channel
6322 
6323  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6324 
6325  fCnaCommand++;
6326  cout << " *TEcnaGui [" << fCnaCommand
6327  << "]> Pedestal history"
6328  << ". Run parameters file name: " << run_par_file_name
6329  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6330  << ", option: " << first_same_plot << endl;
6331 
6339  fHistos->PlotHistory("Time", "Ped", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6340 }
6341 
6342 void TEcnaGui::ViewHistimeCrystalPedestalsRuns(const TString run_par_file_name,
6343  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6344  const TString first_same_plot)
6345 {
6346 // Plot the graph of Pedestals evolution for a given channel
6347 
6348  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6349 
6350  fCnaCommand++;
6351  cout << " *TEcnaGui [" << fCnaCommand
6352  << "]> Pedestal history distribution"
6353  << ". Run parameters file name: " << run_par_file_name
6354  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6355  << ", option: " << first_same_plot << endl;
6356 
6364  fHistos->PlotHistory("Ped", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6365 }
6366 
6367 //....................................................................................................
6368 void TEcnaGui::ViewHistimeCrystalTotalNoise(const TString run_par_file_name,
6369  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6370  const TString first_same_plot)
6371 {
6372 // Plot the graph of total noise evolution for a given channel
6373 
6374  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6375 
6376  fCnaCommand++;
6377  cout << " *TEcnaGui [" << fCnaCommand
6378  << "]> Total noise history"
6379  << ". Run parameters file name: " << run_par_file_name
6380  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6381  << ", option: " << first_same_plot << endl;
6382 
6390  fHistos->PlotHistory("Time", "TNo", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6391 }
6392 
6393 void TEcnaGui::ViewHistimeCrystalTotalNoiseRuns(const TString run_par_file_name,
6394  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6395  const TString first_same_plot)
6396 {
6397 // Plot the graph of total noise evolution for a given channel
6398 
6399  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6400 
6401  fCnaCommand++;
6402  cout << " *TEcnaGui [" << fCnaCommand
6403  << "]> Total noise history distribution"
6404  << ". Run parameters file name: " << run_par_file_name
6405  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6406  << ", option: " << first_same_plot << endl;
6407 
6415  fHistos->PlotHistory("TNo", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6416 }
6417 //....................................................................................................
6418 void TEcnaGui::ViewHistimeCrystalLowFrequencyNoise(const TString run_par_file_name,
6419  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6420  const TString first_same_plot)
6421 {
6422 // Plot the graph of Low Frequency Noise evolution for a given channel
6423 
6424  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6425 
6426  fCnaCommand++;
6427  cout << " *TEcnaGui [" << fCnaCommand
6428  << "]> Low frequency noise history"
6429  << ". Run parameters file name: " << run_par_file_name
6430  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6431  << ", option: " << first_same_plot << endl;
6432 
6440  fHistos->PlotHistory("Time", "LFN", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6441 }
6442 
6443 void TEcnaGui::ViewHistimeCrystalLowFrequencyNoiseRuns(const TString run_par_file_name,
6444  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6445  const TString first_same_plot)
6446 {
6447 // Plot the graph of Low Frequency Noise evolution for a given channel
6448 
6449  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6450 
6451  fCnaCommand++;
6452  cout << " *TEcnaGui [" << fCnaCommand
6453  << "]> Low frequency noise history distribution"
6454  << ". Run parameters file name: " << run_par_file_name
6455  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6456  << ", option: " << first_same_plot << endl;
6457 
6465  fHistos->PlotHistory("LFN", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6466 }
6467 //....................................................................................................
6468 void TEcnaGui::ViewHistimeCrystalHighFrequencyNoise(const TString run_par_file_name,
6469  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6470  const TString first_same_plot)
6471 {
6472 // Plot the graph of High Frequency Noise evolution for a given channel
6473 
6474  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6475 
6476  fCnaCommand++;
6477  cout << " *TEcnaGui [" << fCnaCommand
6478  << "]> High frequency noise history"
6479  << ". Run parameters file name: " << run_par_file_name
6480  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6481  << ", option: " << first_same_plot << endl;
6482 
6490  fHistos->PlotHistory("Time", "HFN", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6491 }
6492 
6493 void TEcnaGui::ViewHistimeCrystalHighFrequencyNoiseRuns(const TString run_par_file_name,
6494  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6495  const TString first_same_plot)
6496 {
6497 // Plot the graph of High Frequency Noise evolution for a given channel
6498 
6499  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6500 
6501  fCnaCommand++;
6502  cout << " *TEcnaGui [" << fCnaCommand
6503  << "]> High frequency noise history distribution"
6504  << ". Run parameters file name: " << run_par_file_name
6505  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6506  << ", option: " << first_same_plot << endl;
6507 
6515  fHistos->PlotHistory("HFN", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6516 }
6517 //....................................................................................................
6518 void TEcnaGui::ViewHistimeCrystalMeanCorss(const TString run_par_file_name,
6519  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6520  const TString first_same_plot)
6521 {
6522 // Plot the graph for Mean Corss evolution for a given channel
6523 
6524  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6525 
6526  fCnaCommand++;
6527  cout << " *TEcnaGui [" << fCnaCommand
6528  << "]> Mean corss history"
6529  << ". Run parameters file name: " << run_par_file_name
6530  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6531  << ", option: " << first_same_plot << endl;
6532 
6540  fHistos->PlotHistory("Time", "MCs", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6541 }
6542 
6543 void TEcnaGui::ViewHistimeCrystalMeanCorssRuns(const TString run_par_file_name,
6544  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6545  const TString first_same_plot)
6546 {
6547 // Plot the graph for Mean Corss evolution for a given channel
6548 
6549  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/ ;}
6550 
6551  fCnaCommand++;
6552  cout << " *TEcnaGui [" << fCnaCommand
6553  << "]> Mean corss history distribution"
6554  << ". Run parameters file name: " << run_par_file_name
6555  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6556  << ", option: " << first_same_plot << endl;
6557 
6565  fHistos->PlotHistory("MCs", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6566 }
6567 //....................................................................................................
6568 void TEcnaGui::ViewHistimeCrystalSigmaOfCorss(const TString run_par_file_name,
6569  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6570  const TString first_same_plot)
6571 {
6572 // Plot the graph of Mean Corss evolution for a given channel
6573 
6574  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/;}
6575 
6576  fCnaCommand++;
6577  cout << " *TEcnaGui [" << fCnaCommand
6578  << "]> Sigma of corss history"
6579  << ". Run parameters file name: " << run_par_file_name
6580  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6581  << ", option: " << first_same_plot << endl;
6582 
6590  fHistos->PlotHistory("Time", "SCs", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6591 }
6592 
6593 void TEcnaGui::ViewHistimeCrystalSigmaOfCorssRuns(const TString run_par_file_name,
6594  const Int_t& cStexStin_A, const Int_t& i0StinEcha,
6595  const TString first_same_plot)
6596 {
6597 // Plot the graph of Mean Corss evolution for a given channel
6598 
6599  if( fHistos == 0 ){fHistos = new TEcnaHistos(fObjectManager, fSubDet.Data()); /*fCnew++*/;}
6600 
6601  fCnaCommand++;
6602  cout << " *TEcnaGui [" << fCnaCommand
6603  << "]> Sigma of corss history distribution"
6604  << ". Run parameters file name: " << run_par_file_name
6605  << ", " << fStinName.Data() << ": " << cStexStin_A << ", channel: " << i0StinEcha
6606  << ", option: " << first_same_plot << endl;
6607 
6615  fHistos->PlotHistory("SCs", "NOR", run_par_file_name, cStexStin_A, i0StinEcha, first_same_plot);
6616 }
6617 
6618 //====================================================================================================
6619 
6621 {
6622  //.....Input widgets for: analysis, run, channel, sample,
6623  // number of events, first event number, etc...
6624 
6625  //fKeyPyf = "";
6626 
6627  fKeyAnaType = "StdPeg12";
6628  Int_t MaxCar = fgMaxCar;
6629  fKeyRunListInitCode.Resize(MaxCar);
6630  fKeyRunListInitCode = "0123";
6631 
6632  MaxCar = fgMaxCar;
6633  fKeyFileNameRunList.Resize(MaxCar);
6635 
6637  fKeyNbOfSamplesString = "10"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyNbOfSamples VALUE
6638 
6640  fKeyNbOfSampForCalcString = "10"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyNbOfSampForCalc VALUE
6641 
6642  fKeyRunNumber = 0;
6643 
6645  fKeyFirstReqEvtNumberString = "1"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyFirstReqEvtNumber VALUE
6646 
6648  fKeyLastReqEvtNumberString = "0"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyLastReqEvtNumber VALUE
6649 
6650  fKeyReqNbOfEvts = 150;
6651  fKeyReqNbOfEvtsString = "150"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyReqNbOfEvts VALUE
6652 
6653  fKeyStexNumber = 1;
6654  fKeyStexNumberString = "1"; // ! THE NUMBER IN STRING MUST BE EQUAL TO fKeyStexNumber VALUE
6655 
6656  fKeyChanNumber = 0;
6657  fKeySampNumber = 0;
6658 
6659  fKeyStinANumber = 1;
6660  fKeyStinBNumber = 1;
6661  if( fSubDet == "EE" )
6662  {if( fKeyStexNumber == 1 || fKeyStexNumber == 3 )
6663  {
6666  }
6667  }
6668 
6669  MaxCar = fgMaxCar;
6670  fKeyScaleX.Resize(MaxCar);
6671  fKeyScaleX = "LIN";
6672  MaxCar = fgMaxCar;
6673  fKeyScaleY.Resize(MaxCar);
6674  fKeyScaleY = "LIN";
6675  fKeyGeneralTitle = "Ecal Correlated Noise Analysis";
6676 
6677  fKeyColPal = "ECCNAColor";
6678 
6679  //.... ymin and ymax values => values which are displayed on the dialog box
6680 
6681  fKeyVminD_NOE_ChNb = (Double_t)0.;
6683 
6684  fKeyVminD_Ped_ChNb = (Double_t)0.;
6685  fKeyVmaxD_Ped_ChNb = (Double_t)0.;
6686 
6687  fKeyVminD_TNo_ChNb = (Double_t)0.;
6688  fKeyVmaxD_TNo_ChNb = (Double_t)0.;
6689 
6690  fKeyVminD_LFN_ChNb = (Double_t)0.;
6691  fKeyVmaxD_LFN_ChNb = (Double_t)0.;
6692 
6693  fKeyVminD_HFN_ChNb = (Double_t)0.;
6694  fKeyVmaxD_HFN_ChNb = (Double_t)0.;
6695 
6696  fKeyVminD_MCs_ChNb = (Double_t)(-1.);
6697  fKeyVmaxD_MCs_ChNb = (Double_t)1.;
6698 
6699  fKeyVminD_SCs_ChNb = (Double_t)0.;
6700  fKeyVmaxD_SCs_ChNb = (Double_t)0.;
6701 
6704 
6705  fKeyVminLFccMos = (Double_t)-1.;
6706  fKeyVmaxLFccMos = (Double_t)1.;
6707  fKeyVminHFccMos = (Double_t)0.;
6708  fKeyVmaxHFccMos = (Double_t)1.;
6709 
6710  fKeyFileNameRunList = "";
6711 }
6712 
6713 void TEcnaGui::DisplayInEntryField(TGTextEntry* StringOfField, Int_t& value)
6714 {
6715  char* f_in = new char[20]; fCnew++;
6716  sprintf( f_in, "%d", value );
6717  StringOfField->SetText(f_in);
6718  delete [] f_in; fCdelete++;
6719 }
6720 
6721 void TEcnaGui::DisplayInEntryField(TGTextEntry* StringOfField, Double_t& value)
6722 {
6723  char* f_in = new char[20]; fCnew++;
6724  sprintf( f_in, "%g", value );
6725  StringOfField->SetText(f_in);
6726  delete [] f_in; fCdelete++;
6727 }
6728 void TEcnaGui::DisplayInEntryField(TGTextEntry* StringOfField, const TString value)
6729 {
6730  //StringOfField->Insert(value);
6731  StringOfField->SetText(value);
6732 }
Int_t fMenuH_LFN_DatePolmSameC
Definition: TEcnaGui.h:816
TGTextButton * fStinBBut
Definition: TEcnaGui.h:701
TGPopupMenu * fMenuD_TNo_ChNb
Definition: TEcnaGui.h:449
void GeneralTitle(const TString)
Definition: TEcnaHistos.cc:797
TGTextEntry * fVminD_TNo_ChNbText
Definition: TEcnaGui.h:445
Int_t fMenuCleanAllC
Definition: TEcnaGui.h:311
Int_t fMenuD_SSp_SpDsLineSameC
Definition: TEcnaGui.h:769
Int_t fMenuCorssSurf3C
Definition: TEcnaGui.h:742
TString fKeyFileNameRunList
Definition: TEcnaGui.h:900
TGLayoutHints * fLayoutMenuBarD_SCs_ChNb
Definition: TEcnaGui.h:571
void GetCMSSWParameters()
TGTextButton * fVmaxD_HFN_ChNbBut
Definition: TEcnaGui.h:494
TGLayoutHints * fLayoutMenuBarD_HFN_ChNb
Definition: TEcnaGui.h:511
void ViewHistimeCrystalLowFrequencyNoise(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6418
TGMenuBar * fMenuBarHFccMos
Definition: TEcnaGui.h:656
TGLayoutHints * fLayoutStexNbBut
Definition: TEcnaGui.h:346
TGLayoutHints * fLayoutVminD_LFN_ChNbFrame
Definition: TEcnaGui.h:477
TGMenuBar * fMenuBarCorssAll
Definition: TEcnaGui.h:688
void DoButtonChNb()
Definition: TEcnaGui.cc:3972
TGCompositeFrame * fGentFrame
Definition: TEcnaGui.h:841
TGLayoutHints * fLayoutGeneral
Definition: TEcnaGui.h:252
void DoButtonChan()
Definition: TEcnaGui.cc:3979
TGPopupMenu * fMenuCorssAll
Definition: TEcnaGui.h:687
TGTextBuffer * fEntryVmaxLHFccNumber
Definition: TEcnaGui.h:591
TEcnaGui()
Definition: TEcnaGui.cc:621
TGLayoutHints * fLayoutStexFieldText
Definition: TEcnaGui.h:327
void ViewHistoSorSSigmaOfCorssOfCrystals(const TString)
Definition: TEcnaGui.cc:6115
TGLayoutHints * fLayoutRevFieldFrame
Definition: TEcnaGui.h:337
TGLayoutHints * fLayoutNorsBut
Definition: TEcnaGui.h:295
void DoButtonFev()
Definition: TEcnaGui.cc:3363
Int_t fMenuCovssTextC
Definition: TEcnaGui.h:747
Int_t fCdelete
Definition: TEcnaGui.h:221
TGLayoutHints * fLayoutStexHozFrame
Definition: TEcnaGui.h:582
TGTextButton * fFevBut
Definition: TEcnaGui.h:273
TGLayoutHints * fLayoutVmmD_HFN_ChNbFrame
Definition: TEcnaGui.h:518
TGCompositeFrame * fVminLHFccFrame
Definition: TEcnaGui.h:595
TGMenuBar * fMenuBarCorss
Definition: TEcnaGui.h:739
TGLayoutHints * fLayoutRootBut
Definition: TEcnaGui.h:872
Int_t fMenuCorssLegoC
Definition: TEcnaGui.h:741
TGCheckButton * fButLogx
Definition: TEcnaGui.h:827
TGTextBuffer * fEntryVminD_Ped_ChNbNumber
Definition: TEcnaGui.h:416
TGMenuBar * fMenuBarLFCorcc
Definition: TEcnaGui.h:714
void SetHistoColorPalette(const TString)
Definition: TEcnaHistos.cc:811
TGLayoutHints * fLayoutVmaxD_Ped_ChNbFrame
Definition: TEcnaGui.h:410
void Calculations(const TString)
Definition: TEcnaGui.cc:5020
Int_t fMenuD_SCs_ChNbFullC
Definition: TEcnaGui.h:572
TGCompositeFrame * fAnaNorsRunFrame
Definition: TEcnaGui.h:261
void Plot1DHisto(const TVectorD &, const TString, const TString, const TString)
TGLayoutHints * fLayoutMenuBarLFccMos
Definition: TEcnaGui.h:631
TGCheckButton * fButProjy
Definition: TEcnaGui.h:836
Int_t fMenuSubmit8nhC
Definition: TEcnaGui.h:316
TGTextBuffer * fEntryVmaxD_SCs_ChNbNumber
Definition: TEcnaGui.h:557
TGTextButton * fNorsBut
Definition: TEcnaGui.h:293
TGCompositeFrame * fVmaxD_NOE_ChNbFrame
Definition: TEcnaGui.h:372
void Expert1Calculations()
Definition: TEcnaRun.cc:1296
TGTextButton * fLevBut
Definition: TEcnaGui.h:302
TGLayoutHints * fLayoutTopRight
Definition: TEcnaGui.h:253
TGLayoutHints * fLayoutFevFieldText
Definition: TEcnaGui.h:277
TGTextBuffer * fEntryRunNumber
Definition: TEcnaGui.h:285
Int_t fMenuD_HFN_ChNbFullC
Definition: TEcnaGui.h:512
void ViewMatrixCorrelationSamples(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:5408
TGLayoutHints * fLayoutVminD_Ped_ChNbFrame
Definition: TEcnaGui.h:418
TString fSubDet
Definition: TEcnaGui.h:237
TGLayoutHints * fLayoutVmmD_NOE_ChNbFrame
Definition: TEcnaGui.h:396
TGTextEntry * fLevText
Definition: TEcnaGui.h:304
Int_t fMenuAdcProjSampLineSameC
Definition: TEcnaGui.h:798
TGCompositeFrame * fStinAFrame
Definition: TEcnaGui.h:673
void DoButtonVmaxHFccMos()
Definition: TEcnaGui.cc:3797
void DoButtonStinA()
Definition: TEcnaGui.cc:3852
Int_t fMenuHFccColzC
Definition: TEcnaGui.h:606
TGPopupMenu * fMenuSubmit
Definition: TEcnaGui.h:314
TGLayoutHints * fLayoutVmaxD_NOE_ChNbFieldText
Definition: TEcnaGui.h:377
Int_t fMenuH_HFN_DatePolmSameC
Definition: TEcnaGui.h:817
Int_t Get1DeeSCEcnaFromDeeSCCons(const Int_t &, const Int_t &)
void ViewHistoSorSSigmaOfCorssDistribution(const TString)
Definition: TEcnaGui.cc:6138
Int_t fMenuCorssSurf1C
Definition: TEcnaGui.h:742
Double_t fKeyVmaxD_SCs_ChNb
Definition: TEcnaGui.h:941
void DoButtonVminLHFcc()
Definition: TEcnaGui.cc:3814
void DoButtonVmaxD_NOE_ChNb()
Definition: TEcnaGui.cc:3540
Double_t fKeyVmaxD_MCs_ChNb
Definition: TEcnaGui.h:932
TGLayoutHints * fLayoutVminLHFccFrame
Definition: TEcnaGui.h:601
TGTextEntry * fVmaxD_Ped_ChNbText
Definition: TEcnaGui.h:407
TGPopupMenu * fMenuCovss
Definition: TEcnaGui.h:745
TGCompositeFrame * fVminD_HFN_ChNbFrame
Definition: TEcnaGui.h:501
TEcnaHistos * fHistos
Definition: TEcnaGui.h:242
Int_t fMenuH_SCs_DatePolmFullC
Definition: TEcnaGui.h:819
Int_t fMenuCovssSurf1C
Definition: TEcnaGui.h:749
void SetHistoScaleX(const TString)
Definition: TEcnaHistos.cc:801
TGCompositeFrame * fVminD_MCs_ChNbFrame
Definition: TEcnaGui.h:531
TGCompositeFrame * fVmaxD_LFN_ChNbFrame
Definition: TEcnaGui.h:463
Int_t fMenuLFCorccColzC
Definition: TEcnaGui.h:715
TGLayoutHints * fLayoutRevFieldText
Definition: TEcnaGui.h:336
TGLayoutHints * fLayoutVminHFccMosFieldText
Definition: TEcnaGui.h:652
TGTextEntry * fRevText
Definition: TEcnaGui.h:334
TGCompositeFrame * fTxSubFrame
Definition: TEcnaGui.h:671
void ViewHistoCrystalSampleSigmasDistribution(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6238
TGTextEntry * fVmaxD_SCs_ChNbText
Definition: TEcnaGui.h:556
TGCompositeFrame * fNbSampForCalcFrame
Definition: TEcnaGui.h:348
void DoButtonRun()
Definition: TEcnaGui.cc:3348
Int_t fMenuD_NOE_ChNbFullC
Definition: TEcnaGui.h:391
Int_t fMenuH_TNo_DatePolmFullC
Definition: TEcnaGui.h:815
TGTextButton * fVminD_LFN_ChNbBut
Definition: TEcnaGui.h:472
TGLayoutHints * fLayoutStexFieldFrame
Definition: TEcnaGui.h:328
Int_t fCnaError
Definition: TEcnaGui.h:226
Int_t fButRootC
Definition: TEcnaGui.h:871
TGPopupMenu * fMenuD_LFN_ChNb
Definition: TEcnaGui.h:479
TGTextEntry * fVmaxD_NOE_ChNbText
Definition: TEcnaGui.h:376
void MessageCnaCommandReplyA(const TString)
Definition: TEcnaGui.cc:5221
void DoButtonVminD_SCs_ChNb()
Definition: TEcnaGui.cc:3717
TGLayoutHints * fLayoutRunBut
Definition: TEcnaGui.h:283
void CorrelationsBetweenSamples(const Int_t &)
void ViewHistimeCrystalHighFrequencyNoise(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6468
TString fOptPlotSame
Definition: TEcnaGui.h:960
TGPopupMenu * fMenuHistory
Definition: TEcnaGui.h:812
TGLayoutHints * fLayoutVmaxLFccMosFieldText
Definition: TEcnaGui.h:618
TGTextButton * fNbSampForCalcBut
Definition: TEcnaGui.h:349
TGTextEntry * fVminD_HFN_ChNbText
Definition: TEcnaGui.h:505
TGTextEntry * fStinAText
Definition: TEcnaGui.h:678
void DoButtonVminD_HFN_ChNb()
Definition: TEcnaGui.cc:3685
void ViewSorSTotalNoise()
Definition: TEcnaGui.cc:5591
TGPopupMenu * fMenuComput
Definition: TEcnaGui.h:356
TGTextEntry * fSampText
Definition: TEcnaGui.h:781
TGTextButton * fButRoot
Definition: TEcnaGui.h:870
TGLayoutHints * fLayoutFevBut
Definition: TEcnaGui.h:274
TGPopupMenu * fMenuD_NOE_ChNb
Definition: TEcnaGui.h:388
Int_t fMenuCorssTextC
Definition: TEcnaGui.h:740
TGCompositeFrame * fVmmLFccMosFrame
Definition: TEcnaGui.h:611
TGCompositeFrame * fColorExitFrame
Definition: TEcnaGui.h:850
Int_t fMenuSubmit1nwC
Definition: TEcnaGui.h:316
TGLayoutHints * fLayoutSampField
Definition: TEcnaGui.h:783
TGTextBuffer * fEntryVminD_LFN_ChNbNumber
Definition: TEcnaGui.h:474
Int_t fMenuCorssContzC
Definition: TEcnaGui.h:741
TGLayoutHints * fLayoutVmaxD_MCs_ChNbBut
Definition: TEcnaGui.h:525
TGLayoutHints * fLayoutVminD_MCs_ChNbFrame
Definition: TEcnaGui.h:537
Int_t fMenuCorssAsciiFileC
Definition: TEcnaGui.h:743
TEcnaParPaths * fCnaParPaths
Definition: TEcnaGui.h:244
void DoButtonClone()
Definition: TEcnaGui.cc:4161
TGLayoutHints * fLayoutCenterYRight
Definition: TEcnaGui.h:254
Int_t fKeyNbOfSamples
Definition: TEcnaGui.h:884
TGLayoutHints * fLayoutVmaxD_TNo_ChNbFieldText
Definition: TEcnaGui.h:438
TGLayoutHints * fLayoutSampBut
Definition: TEcnaGui.h:779
TGTextButton * fStinABut
Definition: TEcnaGui.h:674
void ViewHistimeCrystalLowFrequencyNoiseRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6443
TGLayoutHints * fLayoutVminD_Ped_ChNbFieldText
Definition: TEcnaGui.h:417
void ViewHistimeCrystalMeanCorss(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6518
void HandleMenu(Int_t)
Definition: TEcnaGui.cc:4193
void ViewSorSLowFrequencyNoise()
Definition: TEcnaGui.cc:5627
TString fKeyColPal
Definition: TEcnaGui.h:910
TString fStinName
Definition: TEcnaGui.h:238
TGTextEntry * fStexText
Definition: TEcnaGui.h:325
void DoButtonRoot()
Definition: TEcnaGui.cc:4171
TGTextBuffer * fEntryVminD_TNo_ChNbNumber
Definition: TEcnaGui.h:444
void DoButtonLogy()
Definition: TEcnaGui.cc:4108
TGLayoutHints * fLayoutFevFieldFrame
Definition: TEcnaGui.h:278
TGTextButton * fVminD_SCs_ChNbBut
Definition: TEcnaGui.h:562
TGLayoutHints * fLayoutVmaxD_LFN_ChNbFieldText
Definition: TEcnaGui.h:468
TGLayoutHints * fLayoutVminD_SCs_ChNbFieldText
Definition: TEcnaGui.h:566
TString CMSSWBase()
TGTextButton * fVminLHFccBut
Definition: TEcnaGui.h:596
Int_t fMenuCovssSurf4C
Definition: TEcnaGui.h:749
TGPopupMenu * fMenuD_SCs_ChNb
Definition: TEcnaGui.h:569
TGLayoutHints * fLayoutChSpFrame
Definition: TEcnaGui.h:791
TGCompositeFrame * fVminD_LFN_ChNbFrame
Definition: TEcnaGui.h:471
void ViewHistoSorSMeanCorssOfCrystals(const TString)
Definition: TEcnaGui.cc:6069
Int_t MaxSMInEBPlus()
TString fOptPlotSameP
Definition: TEcnaGui.h:961
TGLayoutHints * fLayoutVminD_Ped_ChNbBut
Definition: TEcnaGui.h:414
TGCompositeFrame * fChSpFrame
Definition: TEcnaGui.h:724
TGTextEntry * fVminD_Ped_ChNbText
Definition: TEcnaGui.h:415
TGTextEntry * fVmaxD_TNo_ChNbText
Definition: TEcnaGui.h:437
TGTextEntry * fAnaText
Definition: TEcnaGui.h:268
TGMenuBar * fMenuBarD_LFN_ChNb
Definition: TEcnaGui.h:480
void Init()
Definition: TEcnaGui.cc:716
TGLayoutHints * fLayoutGentFieldText
Definition: TEcnaGui.h:846
TGTextButton * fVminD_Ped_ChNbBut
Definition: TEcnaGui.h:413
TGTextButton * fVminD_MCs_ChNbBut
Definition: TEcnaGui.h:532
void DoButtonStinB()
Definition: TEcnaGui.cc:3915
Int_t fMenuCleanSubC
Definition: TEcnaGui.h:311
Int_t fMenuHFccLegoC
Definition: TEcnaGui.h:606
Int_t fChanButC
Definition: TEcnaGui.h:731
Int_t fMenuHFccMosColzC
Definition: TEcnaGui.h:658
void Expert2Calculations()
Definition: TEcnaRun.cc:1304
TGLayoutHints * fLayoutVminLFccMosBut
Definition: TEcnaGui.h:623
Int_t fgMaxCar
Definition: TEcnaGui.h:219
TGLayoutHints * fLayoutVmaxLHFccFieldText
Definition: TEcnaGui.h:592
TGTextBuffer * fEntryNorsNumber
Definition: TEcnaGui.h:297
Int_t fMenuHFCorccColzC
Definition: TEcnaGui.h:719
TGLayoutHints * fLayoutVmaxLHFccFrame
Definition: TEcnaGui.h:593
TGPopupMenu * fMenuLFCorcc
Definition: TEcnaGui.h:713
Int_t fMenuH_Ped_DatePolmSameC
Definition: TEcnaGui.h:814
TGLayoutHints * fLayoutChanBut
Definition: TEcnaGui.h:732
TGLayoutHints * fLayoutNbSampForCalcFieldFrame
Definition: TEcnaGui.h:354
Int_t fMenuLFccColzC
Definition: TEcnaGui.h:606
TGTextButton * fGentBut
Definition: TEcnaGui.h:842
TGMenuBar * fMenuBarClean
Definition: TEcnaGui.h:310
TGTextButton * fRunBut
Definition: TEcnaGui.h:281
Int_t fMenuCorssBoxC
Definition: TEcnaGui.h:740
TGLayoutHints * fLayoutVminD_TNo_ChNbFieldText
Definition: TEcnaGui.h:446
Int_t fMenuD_TNo_ChNbHocoVecoC
Definition: TEcnaGui.h:455
TString fKeyGeneralTitle
Definition: TEcnaGui.h:911
TGLayoutHints * fLayoutLevFieldText
Definition: TEcnaGui.h:306
TGMenuBar * fMenuBarD_SCs_ChNb
Definition: TEcnaGui.h:570
void ViewHistoSorSHighFrequencyNoiseOfCrystals(const TString)
Definition: TEcnaGui.cc:6022
TGPopupMenu * fMenuD_MSp_SpDs
Definition: TEcnaGui.h:757
Int_t fMenuD_SCs_ChNbSamePC
Definition: TEcnaGui.h:574
TGTextBuffer * fEntryVmaxD_LFN_ChNbNumber
Definition: TEcnaGui.h:467
TGTextBuffer * fEntryStinANumber
Definition: TEcnaGui.h:677
TGTextButton * fVminD_NOE_ChNbBut
Definition: TEcnaGui.h:381
TGCompositeFrame * fStexUpFrame
Definition: TEcnaGui.h:364
void CovariancesBetweenSamples(const Int_t &)
TEcnaParEcal * fEcal
Definition: TEcnaGui.h:246
void PlotDetector(const TVectorD &, const TString, const TString)
Int_t fMenuD_SSp_SpDsLineFullC
Definition: TEcnaGui.h:769
TGCompositeFrame * fVmmD_Ped_ChNbFrame
Definition: TEcnaGui.h:402
Int_t fMenuD_SSp_SpNbLineSameC
Definition: TEcnaGui.h:764
TGLayoutHints * fLayoutTxSubFrame
Definition: TEcnaGui.h:695
TGTextEntry * fVmaxD_MCs_ChNbText
Definition: TEcnaGui.h:526
TGCompositeFrame * fRevFrame
Definition: TEcnaGui.h:331
TGCheckButton * fButColPal
Definition: TEcnaGui.h:854
Int_t fMenuCorssColzC
Definition: TEcnaGui.h:740
void ViewMatrixLowFrequencyMeanCorrelationsBetweenStins(const TString)
Definition: TEcnaGui.cc:5266
Int_t fConfirmCalcScc
Definition: TEcnaGui.h:231
TGTextButton * fVmaxLFccMosBut
Definition: TEcnaGui.h:614
Int_t fMenuD_MSp_SpDsLineAllStinC
Definition: TEcnaGui.h:759
TGCompositeFrame * fRulFrame
Definition: TEcnaGui.h:803
TEcnaWrite * fCnaWrite
Definition: TEcnaGui.h:248
Double_t fKeyVminHFccMos
Definition: TEcnaGui.h:945
TGLayoutHints * fLayoutChanField
Definition: TEcnaGui.h:735
TGCompositeFrame * fVminD_SCs_ChNbFrame
Definition: TEcnaGui.h:561
TGCompositeFrame * fVmaxD_TNo_ChNbFrame
Definition: TEcnaGui.h:433
void DoButtonVmaxD_TNo_ChNb()
Definition: TEcnaGui.cc:3604
TGTextBuffer * fEntryGentNumber
Definition: TEcnaGui.h:845
TGLayoutHints * fLayoutRulBut
Definition: TEcnaGui.h:805
Int_t fMenuLFccLegoC
Definition: TEcnaGui.h:606
TGLayoutHints * fLayoutRunField
Definition: TEcnaGui.h:286
TGTextEntry * fVminHFccMosText
Definition: TEcnaGui.h:650
TGTextButton * fVminD_TNo_ChNbBut
Definition: TEcnaGui.h:442
void ViewMatrixHighFrequencyCorrelationsBetweenChannels(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:5336
TGLayoutHints * fLayoutProjyBut
Definition: TEcnaGui.h:838
void GetReadyToCompute()
Definition: TEcnaRun.cc:1216
TGTextButton * fRulBut
Definition: TEcnaGui.h:804
void DoButtonVmaxLHFcc()
Definition: TEcnaGui.cc:3830
TString fTTBELL
Definition: TEcnaGui.h:224
TGCompositeFrame * fVmaxD_Ped_ChNbFrame
Definition: TEcnaGui.h:404
Int_t fCnew
Definition: TEcnaGui.h:221
Int_t fSampButC
Definition: TEcnaGui.h:780
void ViewHistoSorSLowFrequencyNoiseOfCrystals(const TString)
Definition: TEcnaGui.cc:5975
void ViewStexStinNumbering()
Definition: TEcnaGui.cc:5809
TGLayoutHints * fLayoutVminHFccMosFrame
Definition: TEcnaGui.h:653
Int_t fMenuD_SSp_SpNbLineAllStinC
Definition: TEcnaGui.h:764
TGLayoutHints * fLayoutTySubFrame
Definition: TEcnaGui.h:708
TGTextBuffer * fEntryRevNumber
Definition: TEcnaGui.h:335
Double_t fKeyVminD_MCs_ChNb
Definition: TEcnaGui.h:931
TGLayoutHints * fLayoutVmaxD_Ped_ChNbBut
Definition: TEcnaGui.h:406
TGLayoutHints * fLayoutStexBut
Definition: TEcnaGui.h:324
Int_t fButHelpC
Definition: TEcnaGui.h:875
TGLayoutHints * fLayoutColorExitFrame
Definition: TEcnaGui.h:851
TGLayoutHints * fLayoutVminLFccMosFieldText
Definition: TEcnaGui.h:626
void DoButtonHelp()
Definition: TEcnaGui.cc:4179
TString GetRootFileNameShort()
Definition: TEcnaRun.cc:1183
Int_t fMenuCovssAsciiFileC
Definition: TEcnaGui.h:750
TGTextEntry * fVminD_LFN_ChNbText
Definition: TEcnaGui.h:475
Int_t fMenuH_SCs_DatePolmSamePC
Definition: TEcnaGui.h:819
TGTextButton * fRevBut
Definition: TEcnaGui.h:332
Long_t GetPointerValue(const TString)
Definition: TEcnaObject.cc:229
TGPopupMenu * fMenuHFccMos
Definition: TEcnaGui.h:655
Int_t fButColPalC
Definition: TEcnaGui.h:855
TGTextButton * fAnaBut
Definition: TEcnaGui.h:265
void StexStinNumbering(const Int_t &)
Int_t fMenuH_Ped_DatePolmFullC
Definition: TEcnaGui.h:814
TGLayoutHints * fLayoutMenuBarD_TNo_ChNb
Definition: TEcnaGui.h:451
void ViewHistoSorSMeanCorssDistribution(const TString)
Definition: TEcnaGui.cc:6092
TGLayoutHints * fLayoutCompStRqFrame
Definition: TEcnaGui.h:320
TGLayoutHints * fLayoutVmaxLFccMosBut
Definition: TEcnaGui.h:615
TGTextBuffer * fEntryVmaxD_MCs_ChNbNumber
Definition: TEcnaGui.h:527
TGTextBuffer * fEntryVmaxHFccMosNumber
Definition: TEcnaGui.h:643
Int_t fKeyStinANumber
Definition: TEcnaGui.h:915
void ViewSorSPedestals()
Definition: TEcnaGui.cc:5555
void ViewHistoCrystalSampleMeansDistribution(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6188
TString fKeyProjY
Definition: TEcnaGui.h:909
TGLayoutHints * fLayoutSpSubFrame
Definition: TEcnaGui.h:785
void DoButtonExit()
Definition: TEcnaGui.cc:4149
TGLayoutHints * fLayoutVmaxD_Ped_ChNbFieldText
Definition: TEcnaGui.h:409
TGLayoutHints * fLayoutMenuBarD_LFN_ChNb
Definition: TEcnaGui.h:481
TGLayoutHints * fLayoutVminLHFccFieldText
Definition: TEcnaGui.h:600
TGTextButton * fVmaxD_Ped_ChNbBut
Definition: TEcnaGui.h:405
TGCompositeFrame * fAnaFrame
Definition: TEcnaGui.h:264
TGLayoutHints * fLayoutVminD_SCs_ChNbBut
Definition: TEcnaGui.h:563
TGCompositeFrame * fVoidFrame
Definition: TEcnaGui.h:256
Int_t fMenuD_LFN_ChNbFullC
Definition: TEcnaGui.h:482
void DoButtonSamp()
Definition: TEcnaGui.cc:4010
Int_t fMenuD_LFN_ChNbHocoVecoC
Definition: TEcnaGui.h:485
TGCompositeFrame * fVmmHFccMosFrame
Definition: TEcnaGui.h:637
TGCompositeFrame * fVmaxD_HFN_ChNbFrame
Definition: TEcnaGui.h:493
TGLayoutHints * fLayoutCompStnbFrame
Definition: TEcnaGui.h:341
TGTextBuffer * fEntryChanNumber
Definition: TEcnaGui.h:733
Int_t fConfirmRunNumber
Definition: TEcnaGui.h:229
TGCompositeFrame * fVmmD_NOE_ChNbFrame
Definition: TEcnaGui.h:370
TGCompositeFrame * fNorsFrame
Definition: TEcnaGui.h:292
TGLayoutHints * fLayoutVmaxD_SCs_ChNbFrame
Definition: TEcnaGui.h:559
TGMenuBar * fMenuBarSubmit
Definition: TEcnaGui.h:315
Int_t fMenuD_NOE_ChNbHocoVecoC
Definition: TEcnaGui.h:393
TGTextBuffer * fEntryStexNumber
Definition: TEcnaGui.h:326
TGMenuBar * fMenuBarD_MCs_ChNb
Definition: TEcnaGui.h:540
Int_t fButProjyC
Definition: TEcnaGui.h:837
void InitKeys()
Definition: TEcnaGui.cc:6620
TEcnaObject * fObjectManager
Definition: TEcnaGui.h:241
Int_t fMenuLFccMosColzC
Definition: TEcnaGui.h:632
TGLayoutHints * fLayoutLogyBut
Definition: TEcnaGui.h:833
TGLayoutHints * fLayoutVminD_HFN_ChNbFrame
Definition: TEcnaGui.h:507
TGLayoutHints * fLayoutVmaxD_MCs_ChNbFieldText
Definition: TEcnaGui.h:528
TGLayoutHints * fLayoutVminD_SCs_ChNbFrame
Definition: TEcnaGui.h:567
TString fKeyScaleX
Definition: TEcnaGui.h:907
TString fOptPlotFull
Definition: TEcnaGui.h:959
Int_t fMenuD_SCs_ChNbHocoVecoC
Definition: TEcnaGui.h:575
Double_t fKeyVminLFccMos
Definition: TEcnaGui.h:943
TGPopupMenu * fMenuLFccMos
Definition: TEcnaGui.h:629
TGCompositeFrame * fStinBFrame
Definition: TEcnaGui.h:700
TString fKeyScaleY
Definition: TEcnaGui.h:908
TString fPythonFileName
Definition: TEcnaGui.h:905
TGCompositeFrame * fChanFrame
Definition: TEcnaGui.h:729
Int_t fMenuH_LFN_DatePolmSamePC
Definition: TEcnaGui.h:816
TString CMSSWSubsystem()
void ViewHistoSorSLowFrequencyNoiseDistribution(const TString)
Definition: TEcnaGui.cc:5998
void ViewStinCovarianceSamples(const Int_t &)
Definition: TEcnaGui.cc:5492
TGLayoutHints * fLayoutStinABut
Definition: TEcnaGui.h:676
TGLayoutHints * fLayoutCenterXTop
Definition: TEcnaGui.h:254
TGTextButton * fButClone
Definition: TEcnaGui.h:866
TGLayoutHints * fLayoutStinSpFrame
Definition: TEcnaGui.h:710
Double_t fKeyVmaxD_NOE_ChNb
Definition: TEcnaGui.h:923
TGCompositeFrame * fStexHozFrame
Definition: TEcnaGui.h:399
Int_t fButLogyC
Definition: TEcnaGui.h:832
TGTextButton * fVmaxLHFccBut
Definition: TEcnaGui.h:588
TString fOptPlotSameInStin
Definition: TEcnaGui.h:962
TGLayoutHints * fLayoutStinBField
Definition: TEcnaGui.h:706
void DoButtonAna()
Definition: TEcnaGui.cc:3262
Int_t fMenuD_HFN_ChNbSamePC
Definition: TEcnaGui.h:514
TGTextBuffer * fEntryLevNumber
Definition: TEcnaGui.h:305
TGLayoutHints * fLayoutVminD_HFN_ChNbBut
Definition: TEcnaGui.h:503
void GetReadyToReadData(TString, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &)
Definition: TEcnaRun.cc:504
TString fMemoProjY
Definition: TEcnaGui.h:955
TGLayoutHints * fLayoutAnaBut
Definition: TEcnaGui.h:267
void DoButtonVmaxLFccMos()
Definition: TEcnaGui.cc:3765
Int_t fCnewRoot
Definition: TEcnaGui.h:222
TGLayoutHints * fLayoutVminD_TNo_ChNbFrame
Definition: TEcnaGui.h:447
TGTextBuffer * fEntrySampNumber
Definition: TEcnaGui.h:782
void ViewHistoCrystalSampleValues(const Int_t &, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6264
void DoButtonVminD_NOE_ChNb()
Definition: TEcnaGui.cc:3524
void DoButtonGent()
Definition: TEcnaGui.cc:4079
TString fOptAscii
Definition: TEcnaGui.h:963
void DoButtonVminD_Ped_ChNb()
Definition: TEcnaGui.cc:3556
TGLayoutHints * fLayoutVmaxHFccMosFrame
Definition: TEcnaGui.h:645
TGLayoutHints * fLayoutVmmLHFccFrame
Definition: TEcnaGui.h:608
void DoButtonVminHFccMos()
Definition: TEcnaGui.cc:3781
TGLayoutHints * fLayoutVminLHFccBut
Definition: TEcnaGui.h:597
TString fMemoScaleX
Definition: TEcnaGui.h:953
void DoButtonVmaxD_LFN_ChNb()
Definition: TEcnaGui.cc:3669
Int_t fMenuD_TNo_ChNbSameC
Definition: TEcnaGui.h:453
Int_t fMenuCovssLegoC
Definition: TEcnaGui.h:748
TGLayoutHints * fLayoutVmaxD_MCs_ChNbFrame
Definition: TEcnaGui.h:529
TGCompositeFrame * fVminD_Ped_ChNbFrame
Definition: TEcnaGui.h:412
TGLayoutHints * fLayoutVmmD_TNo_ChNbFrame
Definition: TEcnaGui.h:458
void ViewMatrixHighFrequencyMeanCorrelationsBetweenStins(const TString)
Definition: TEcnaGui.cc:5288
Double_t fKeyVmaxD_Ped_ChNb
Definition: TEcnaGui.h:926
Double_t fKeyVmaxLFccMos
Definition: TEcnaGui.h:944
TGLayoutHints * fLayoutRulFieldFrame
Definition: TEcnaGui.h:809
Int_t fAnaButC
Definition: TEcnaGui.h:266
Int_t fMenuD_TNo_ChNbSamePC
Definition: TEcnaGui.h:454
TGLayoutHints * fLayoutVmmD_MCs_ChNbFrame
Definition: TEcnaGui.h:548
TGLayoutHints * fLayoutVmaxLFccMosFrame
Definition: TEcnaGui.h:619
Double_t fKeyVmaxD_TNo_ChNb
Definition: TEcnaGui.h:929
TGTextBuffer * fEntryVmaxD_TNo_ChNbNumber
Definition: TEcnaGui.h:436
TGLayoutHints * fLayoutVmaxHFccMosFieldText
Definition: TEcnaGui.h:644
Bool_t ReadSampleAdcValues()
Definition: TEcnaRun.cc:1054
Int_t fMenuAdcProjLineLinySameC
Definition: TEcnaGui.h:797
Int_t fMenuHFCorccLegoC
Definition: TEcnaGui.h:719
Double_t fKeyVminD_TNo_ChNb
Definition: TEcnaGui.h:928
void ViewHistoCrystalSampleSigmas(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6213
TGLayoutHints * fLayoutVmaxD_NOE_ChNbFrame
Definition: TEcnaGui.h:378
TGLayoutHints * fLayoutMenuBarD_NOE_ChNb
Definition: TEcnaGui.h:390
void ViewHistoSorSPedestalsOfCrystals(const TString)
Definition: TEcnaGui.cc:5880
void ViewHistimeCrystalPedestals(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6317
void ViewHistimeCrystalTotalNoise(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6368
TGLayoutHints * fLayoutBottRight
Definition: TEcnaGui.h:252
Bool_t GetPaths()
void DoButtonProjy()
Definition: TEcnaGui.cc:4119
TGTextEntry * fVmaxD_HFN_ChNbText
Definition: TEcnaGui.h:496
void FileParameters(const TString, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &, const Int_t &)
Definition: TEcnaHistos.cc:748
Int_t fMenuD_TNo_ChNbAsciiFileC
Definition: TEcnaGui.h:456
TString PathModulesData()
TGMenuBar * fMenuBarD_SSp_SpDs
Definition: TEcnaGui.h:768
TGTextButton * fVmaxD_MCs_ChNbBut
Definition: TEcnaGui.h:524
void DoButtonVmaxD_MCs_ChNb()
Definition: TEcnaGui.cc:3636
Bool_t StatusFileFound()
Definition: TEcnaHistos.cc:831
TGLayoutHints * fLayoutVminD_NOE_ChNbFieldText
Definition: TEcnaGui.h:385
void DoButtonStex()
Definition: TEcnaGui.cc:3448
TGTextEntry * fVminLFccMosText
Definition: TEcnaGui.h:624
Int_t fMenuCleanPythC
Definition: TEcnaGui.h:311
TGCompositeFrame * fStinSpFrame
Definition: TEcnaGui.h:668
TGLayoutHints * fLayoutStinAField
Definition: TEcnaGui.h:679
TGLayoutHints * fLayoutChNbBut
Definition: TEcnaGui.h:684
Int_t MaxSMInEBMinus()
Int_t fStinAButC
Definition: TEcnaGui.h:675
Int_t fMenuCovssSurf2C
Definition: TEcnaGui.h:749
TGLayoutHints * fLayoutVmaxHFccMosBut
Definition: TEcnaGui.h:641
void DoButtonColPal()
Definition: TEcnaGui.cc:4132
TGLayoutHints * fLayoutVmaxD_HFN_ChNbBut
Definition: TEcnaGui.h:495
void PlotHistory(const TString, const TString, const TString, const Int_t &, const Int_t &)
Int_t fMenuD_SSp_SpNbLineFullC
Definition: TEcnaGui.h:764
TGTextBuffer * fEntryNbSampForCalcNumber
Definition: TEcnaGui.h:352
TGLayoutHints * fLayoutMenuBarD_Ped_ChNb
Definition: TEcnaGui.h:422
TGCompositeFrame * fLinLogFrame
Definition: TEcnaGui.h:824
Int_t fMenuD_MSp_SpNbLineSameC
Definition: TEcnaGui.h:754
TGTextEntry * fNbSampForCalcText
Definition: TEcnaGui.h:351
Int_t fButStexNbC
Definition: TEcnaGui.h:345
TGLayoutHints * fLayoutNbSampForCalcFieldText
Definition: TEcnaGui.h:353
TGMenuBar * fMenuBarHFCorcc
Definition: TEcnaGui.h:718
Int_t fMenuD_Ped_ChNbAsciiFileC
Definition: TEcnaGui.h:426
TGPopupMenu * fMenuD_HFN_ChNb
Definition: TEcnaGui.h:509
TGLayoutHints * fLayoutGentBut
Definition: TEcnaGui.h:843
TGTextBuffer * fEntryStinBNumber
Definition: TEcnaGui.h:704
Double_t fKeyVmaxLHFcc
Definition: TEcnaGui.h:949
Int_t fMenuCleanJobC
Definition: TEcnaGui.h:311
Double_t fKeyVmaxD_HFN_ChNb
Definition: TEcnaGui.h:938
TGTextBuffer * fEntryAnaNumber
Definition: TEcnaGui.h:269
Int_t fKeyStinBNumber
Definition: TEcnaGui.h:916
Int_t fRunButC
Definition: TEcnaGui.h:282
Int_t fMenuCovssBoxC
Definition: TEcnaGui.h:747
Int_t fKeyReqNbOfEvts
Definition: TEcnaGui.h:892
TString fMemoColPal
Definition: TEcnaGui.h:957
Int_t fMenuCovssContzC
Definition: TEcnaGui.h:748
Int_t fMenuH_SCs_DatePolmSameC
Definition: TEcnaGui.h:819
Int_t fButChNbC
Definition: TEcnaGui.h:683
void DoButtonVminD_MCs_ChNb()
Definition: TEcnaGui.cc:3620
TGMenuBar * fMenuBarComput
Definition: TEcnaGui.h:357
Int_t fMenuCorssSurf4C
Definition: TEcnaGui.h:742
TGLayoutHints * fLayoutExitBut
Definition: TEcnaGui.h:860
Bool_t WriteNewRootFile(const TString)
Definition: TEcnaRun.cc:3067
TEcnaNumbering * fEcalNumbering
Definition: TEcnaGui.h:247
TGTextEntry * fVminD_NOE_ChNbText
Definition: TEcnaGui.h:384
Int_t MaxCrysInStin()
TGLayoutHints * fLayoutGentFieldFrame
Definition: TEcnaGui.h:847
void DoButtonVmaxD_SCs_ChNb()
Definition: TEcnaGui.cc:3733
TGCompositeFrame * fTySubFrame
Definition: TEcnaGui.h:698
void StandardCalculations()
Definition: TEcnaRun.cc:1275
Int_t fMenuD_LFN_ChNbSameC
Definition: TEcnaGui.h:483
TGPopupMenu * fMenuCorss
Definition: TEcnaGui.h:738
TGLayoutHints * fLayoutVmaxD_TNo_ChNbBut
Definition: TEcnaGui.h:435
TGPopupMenu * fMenuClean
Definition: TEcnaGui.h:309
void DisplayInEntryField(TGTextEntry *, Int_t &)
Definition: TEcnaGui.cc:6713
TGLayoutHints * fLayoutHelpBut
Definition: TEcnaGui.h:876
TString fConfirmRunNumberString
Definition: TEcnaGui.h:230
TString fMemoScaleY
Definition: TEcnaGui.h:954
void SetHistoScaleY(const TString)
Definition: TEcnaHistos.cc:806
TGTextEntry * fRulText
Definition: TEcnaGui.h:806
TGTextEntry * fNorsText
Definition: TEcnaGui.h:296
void MessageCnaCommandReplyB(const TString)
Definition: TEcnaGui.cc:5236
Int_t fMenuD_MCs_ChNbAsciiFileC
Definition: TEcnaGui.h:546
TGPopupMenu * fMenuAdcProj
Definition: TEcnaGui.h:794
void DoButtonNbSampForCalc()
Definition: TEcnaGui.cc:3321
TGLayoutHints * fLayoutVmmD_SCs_ChNbFrame
Definition: TEcnaGui.h:578
Int_t fMenuD_NOE_ChNbSameC
Definition: TEcnaGui.h:392
Bool_t RegisterPointer(const TString, const Long_t &)
Definition: TEcnaObject.cc:102
Int_t fMenuD_Ped_ChNbSameC
Definition: TEcnaGui.h:424
Int_t fMenuCovssAllColzC
Definition: TEcnaGui.h:689
TGLayoutHints * fLayoutVmmHFccMosFrame
Definition: TEcnaGui.h:660
Int_t fMenuD_MCs_ChNbSameC
Definition: TEcnaGui.h:543
Int_t fMenuLFCorccLegoC
Definition: TEcnaGui.h:715
void ViewHistimeCrystalSigmaOfCorssRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6593
TGPopupMenu * fMenuD_SSp_SpNb
Definition: TEcnaGui.h:762
Int_t GetDeeSCConsFrom1DeeSCEcna(const Int_t &, const Int_t &)
TGLayoutHints * fLayoutMenuBarD_MCs_ChNb
Definition: TEcnaGui.h:541
TGLayoutHints * fLayoutVmaxD_LFN_ChNbBut
Definition: TEcnaGui.h:465
TGLayoutHints * fLayoutVmaxD_TNo_ChNbFrame
Definition: TEcnaGui.h:439
TString fKeyRunListInitCode
Definition: TEcnaGui.h:901
void ViewMatrixCovarianceSamples(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:5436
TGLayoutHints * fLayoutRevBut
Definition: TEcnaGui.h:333
TGPopupMenu * fMenuD_MSp_SpNb
Definition: TEcnaGui.h:752
TGLayoutHints * fLayoutMenuBarLHFcc
Definition: TEcnaGui.h:605
TGLayoutHints * fLayoutVminD_TNo_ChNbBut
Definition: TEcnaGui.h:443
TGCompositeFrame * fStexFrame
Definition: TEcnaGui.h:322
void DoButtonVminD_TNo_ChNb()
Definition: TEcnaGui.cc:3588
TGLayoutHints * fLayoutStexUpFrame
Definition: TEcnaGui.h:663
Int_t fMenuCovssColzC
Definition: TEcnaGui.h:747
TGTextBuffer * fEntryVminLFccMosNumber
Definition: TEcnaGui.h:625
TGMenuBar * fMenuBarD_TNo_ChNb
Definition: TEcnaGui.h:450
unsigned int UInt_t
Definition: FUTypes.h:12
TGLayoutHints * fLayoutVminHFccMosBut
Definition: TEcnaGui.h:649
Int_t fMenuAdcProjSampLineFullC
Definition: TEcnaGui.h:798
TGCompositeFrame * fVmmLHFccFrame
Definition: TEcnaGui.h:585
TGTextBuffer * fEntryVmaxD_NOE_ChNbNumber
Definition: TEcnaGui.h:375
Int_t fMenuD_MCs_ChNbFullC
Definition: TEcnaGui.h:542
void ViewStexLowFrequencyCorcc()
Definition: TEcnaGui.cc:5361
Int_t fMenuCorssSurf2C
Definition: TEcnaGui.h:742
TGTextButton * fVminHFccMosBut
Definition: TEcnaGui.h:648
TGLayoutHints * fLayoutVmaxD_HFN_ChNbFrame
Definition: TEcnaGui.h:499
void ViewStinCorrelationSamples(const Int_t &)
Definition: TEcnaGui.cc:5470
Int_t fMenuD_SCs_ChNbSameC
Definition: TEcnaGui.h:573
TGLayoutHints * fLayoutNorsField
Definition: TEcnaGui.h:298
TGTextEntry * fRunText
Definition: TEcnaGui.h:284
TGTextEntry * fStinBText
Definition: TEcnaGui.h:705
void DoButtonStexNb()
Definition: TEcnaGui.cc:3847
TGCompositeFrame * fFevFrame
Definition: TEcnaGui.h:272
void DoButtonLogx()
Definition: TEcnaGui.cc:4098
Int_t fMenuD_MSp_SpDsLineFullC
Definition: TEcnaGui.h:759
TGTextEntry * fVminD_SCs_ChNbText
Definition: TEcnaGui.h:564
TString GetNewRootFileNameShort()
Definition: TEcnaRun.cc:3101
Int_t fMenuD_Ped_ChNbHocoVecoC
Definition: TEcnaGui.h:425
TGTextButton * fVminLFccMosBut
Definition: TEcnaGui.h:622
TGLayoutHints * fLayoutColPalBut
Definition: TEcnaGui.h:856
TGMenuBar * fMenuBarAdcProj
Definition: TEcnaGui.h:795
Int_t fCnaCommand
Definition: TEcnaGui.h:226
TGLayoutHints * fLayoutCloneBut
Definition: TEcnaGui.h:868
TGTextButton * fVmaxHFccMosBut
Definition: TEcnaGui.h:640
Double_t fKeyVminD_SCs_ChNb
Definition: TEcnaGui.h:940
TGLayoutHints * fLayoutVminD_NOE_ChNbFrame
Definition: TEcnaGui.h:386
void StinCrystalNumbering(const Int_t &, const Int_t &)
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
Int_t fButCloneC
Definition: TEcnaGui.h:867
TGTextButton * fChanBut
Definition: TEcnaGui.h:730
TGTextBuffer * fEntryVminD_HFN_ChNbNumber
Definition: TEcnaGui.h:504
void ViewHistoSampleEventDistribution(const Int_t &, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6290
void ViewHistimeCrystalTotalNoiseRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6393
Int_t fNorsButC
Definition: TEcnaGui.h:294
TGTextBuffer * fEntryRulNumber
Definition: TEcnaGui.h:807
TGTextBuffer * fEntryVmaxLFccMosNumber
Definition: TEcnaGui.h:617
void ViewHistoSorSNumberOfEventsDistribution(const TString)
Definition: TEcnaGui.cc:5856
void ViewHistimeCrystalMeanCorssRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6543
void DoButtonVmaxD_Ped_ChNb()
Definition: TEcnaGui.cc:3572
Int_t fCdeleteRoot
Definition: TEcnaGui.h:222
void ViewHistoSorSNumberOfEventsOfCrystals(const TString)
Definition: TEcnaGui.cc:5832
TGMenuBar * fMenuBarD_SSp_SpNb
Definition: TEcnaGui.h:763
TGTextButton * fVmaxD_TNo_ChNbBut
Definition: TEcnaGui.h:434
TGLayoutHints * fLayoutVminD_HFN_ChNbFieldText
Definition: TEcnaGui.h:506
TGPopupMenu * fMenuD_Ped_ChNb
Definition: TEcnaGui.h:420
TGTextEntry * fFevText
Definition: TEcnaGui.h:275
Int_t fMenuSubmit8nmC
Definition: TEcnaGui.h:316
Int_t MaxStexInStas()
TGTextButton * fButStexNb
Definition: TEcnaGui.h:344
TGTextBuffer * fEntryVminD_NOE_ChNbNumber
Definition: TEcnaGui.h:383
void ViewMatrixLowFrequencyCorrelationsBetweenChannels(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:5311
Int_t fStinBButC
Definition: TEcnaGui.h:702
TGCompositeFrame * fSpSubFrame
Definition: TEcnaGui.h:775
TString fKeyNbOfSampForCalcString
Definition: TEcnaGui.h:898
TGTextEntry * fChanText
Definition: TEcnaGui.h:734
Int_t fMenuD_HFN_ChNbHocoVecoC
Definition: TEcnaGui.h:515
Int_t fKeyLastReqEvtNumber
Definition: TEcnaGui.h:890
TGLayoutHints * fLayoutChSubFrame
Definition: TEcnaGui.h:772
TGTextEntry * fVmaxHFccMosText
Definition: TEcnaGui.h:642
TGLayoutHints * fLayoutAnaNorsRunFrame
Definition: TEcnaGui.h:262
Int_t fMenuH_LFN_DatePolmFullC
Definition: TEcnaGui.h:816
TGLayoutHints * fLayoutCenterYLeft
Definition: TEcnaGui.h:254
void ViewHistimeCrystalPedestalsRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6342
void DoButtonVminLFccMos()
Definition: TEcnaGui.cc:3749
TString fKeyRunNumberString
Definition: TEcnaGui.h:887
TGCompositeFrame * fSampFrame
Definition: TEcnaGui.h:777
Int_t fButLogxC
Definition: TEcnaGui.h:828
Int_t fMenuComputSttC
Definition: TEcnaGui.h:358
TGCompositeFrame * fVmaxHFccMosFrame
Definition: TEcnaGui.h:639
void SetHistoMin(const Double_t &)
TGTextButton * fButHelp
Definition: TEcnaGui.h:874
TGLayoutHints * fLayoutVminD_MCs_ChNbFieldText
Definition: TEcnaGui.h:536
void DoButtonLev()
Definition: TEcnaGui.cc:3387
void DoButtonRul()
Definition: TEcnaGui.cc:4036
TGCompositeFrame * fVmaxLHFccFrame
Definition: TEcnaGui.h:587
void ViewHistoCrystalSampleMeans(const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6162
Double_t fKeyVminLHFcc
Definition: TEcnaGui.h:948
Int_t MaxSCForConsInDee()
TGTextBuffer * fEntryVminLHFccNumber
Definition: TEcnaGui.h:598
TGLayoutHints * fLayoutVmmLFccMosFrame
Definition: TEcnaGui.h:634
TGCompositeFrame * fVminD_NOE_ChNbFrame
Definition: TEcnaGui.h:380
TGCompositeFrame * fFevLevStexFrame
Definition: TEcnaGui.h:289
TGLayoutHints * fLayoutVmaxLHFccBut
Definition: TEcnaGui.h:589
Int_t fMenuCovssSurf3C
Definition: TEcnaGui.h:749
TGLayoutHints * fLayoutTopLeft
Definition: TEcnaGui.h:253
void ViewHistoSorSTotalNoiseDistribution(const TString)
Definition: TEcnaGui.cc:5950
TGCompositeFrame * fVminLFccMosFrame
Definition: TEcnaGui.h:621
Int_t fMenuD_MCs_ChNbHocoVecoC
Definition: TEcnaGui.h:545
Int_t fMenuAdcProjLineLinyFullC
Definition: TEcnaGui.h:797
Int_t fMenuH_HFN_DatePolmSamePC
Definition: TEcnaGui.h:817
TGLayoutHints * fLayoutBottLeft
Definition: TEcnaGui.h:252
TGLayoutHints * fLayoutStinBBut
Definition: TEcnaGui.h:703
TGMenuBar * fMenuBarD_NOE_ChNb
Definition: TEcnaGui.h:389
TGLayoutHints * fLayoutVminD_NOE_ChNbBut
Definition: TEcnaGui.h:382
TGLayoutHints * fLayoutVmaxD_HFN_ChNbFieldText
Definition: TEcnaGui.h:498
Double_t fKeyVminD_NOE_ChNb
Definition: TEcnaGui.h:922
Int_t fMenuH_MCs_DatePolmSameC
Definition: TEcnaGui.h:818
TGCompositeFrame * fVminD_TNo_ChNbFrame
Definition: TEcnaGui.h:441
TGCompositeFrame * fCompStRqFrame
Definition: TEcnaGui.h:319
Int_t fMenuD_LFN_ChNbSamePC
Definition: TEcnaGui.h:484
TString fKeyLastReqEvtNumberString
Definition: TEcnaGui.h:891
TGCompositeFrame * fChSubFrame
Definition: TEcnaGui.h:727
TGCompositeFrame * fVminHFccMosFrame
Definition: TEcnaGui.h:647
TGLayoutHints * fLayoutRulFieldText
Definition: TEcnaGui.h:808
Int_t fMenuD_MSp_SpDsLineSameC
Definition: TEcnaGui.h:759
TGCompositeFrame * fLastFrame
Definition: TEcnaGui.h:863
void ViewSorSHighFrequencyNoise()
Definition: TEcnaGui.cc:5662
TGTextEntry * fVmaxLFccMosText
Definition: TEcnaGui.h:616
Int_t fMenuCorssAllColzC
Definition: TEcnaGui.h:689
TGTextButton * fVminD_HFN_ChNbBut
Definition: TEcnaGui.h:502
TGCompositeFrame * fCompStnbFrame
Definition: TEcnaGui.h:340
TString AsciiFileName()
TGLayoutHints * fLayoutLogxBut
Definition: TEcnaGui.h:829
Int_t MaxSampADC()
TGCompositeFrame * fVmaxD_SCs_ChNbFrame
Definition: TEcnaGui.h:553
Int_t fMenuD_NOE_ChNbAsciiFileC
Definition: TEcnaGui.h:394
void ViewSorSSigmaOfCorss()
Definition: TEcnaGui.cc:5740
Double_t fKeyVminD_LFN_ChNb
Definition: TEcnaGui.h:934
TGCompositeFrame * fLevFrame
Definition: TEcnaGui.h:301
TGTextButton * fSampBut
Definition: TEcnaGui.h:778
Int_t fKeySampNumber
Definition: TEcnaGui.h:918
Int_t MaxDeeInEE()
void ViewHistoSorSHighFrequencyNoiseDistribution(const TString)
Definition: TEcnaGui.cc:6045
TGCompositeFrame * fVmaxLFccMosFrame
Definition: TEcnaGui.h:613
TGLayoutHints * fLayoutVmaxD_SCs_ChNbFieldText
Definition: TEcnaGui.h:558
TGLayoutHints * fLayoutLevFieldFrame
Definition: TEcnaGui.h:307
TGLayoutHints * fLayoutVminLFccMosFrame
Definition: TEcnaGui.h:627
void ViewStexHighFrequencyCorcc()
Definition: TEcnaGui.cc:5384
TString fKeyNbOfSamplesString
Definition: TEcnaGui.h:885
Int_t MaxSMInEB()
TString fKeyFirstReqEvtNumberString
Definition: TEcnaGui.h:889
TGTextBuffer * fEntryVmaxD_HFN_ChNbNumber
Definition: TEcnaGui.h:497
TGTextButton * fVmaxD_LFN_ChNbBut
Definition: TEcnaGui.h:464
TEcnaParHistos * fCnaParHistos
Definition: TEcnaGui.h:243
Int_t fMenuD_SCs_ChNbAsciiFileC
Definition: TEcnaGui.h:576
TGLayoutHints * fLayoutFevLevStexFrame
Definition: TEcnaGui.h:290
Int_t fMenuHFccMosLegoC
Definition: TEcnaGui.h:658
TGLayoutHints * fLayoutNbSampForCalcBut
Definition: TEcnaGui.h:350
Double_t fKeyVminD_Ped_ChNb
Definition: TEcnaGui.h:925
Int_t fMenuD_SSp_SpDsLineAllStinC
Definition: TEcnaGui.h:769
Int_t fMenuSubmit1ndC
Definition: TEcnaGui.h:316
TGMenuBar * fMenuBarD_MSp_SpNb
Definition: TEcnaGui.h:753
void SubmitOnBatchSystem(const TString)
Definition: TEcnaGui.cc:4633
TGLayoutHints * fLayoutVmaxD_NOE_ChNbBut
Definition: TEcnaGui.h:374
TGCompositeFrame * fVmaxD_MCs_ChNbFrame
Definition: TEcnaGui.h:523
void SetHistoMax(const Double_t &)
TGLayoutHints * fLayoutVminD_LFN_ChNbFieldText
Definition: TEcnaGui.h:476
TGLayoutHints * fLayoutVminD_LFN_ChNbBut
Definition: TEcnaGui.h:473
tuple cout
Definition: gather_cfg.py:121
Int_t MaxStinEcnaInStex()
Double_t fKeyVmaxD_LFN_ChNb
Definition: TEcnaGui.h:935
TGPopupMenu * fMenuD_SSp_SpDs
Definition: TEcnaGui.h:767
TString fKeyStexNumberString
Definition: TEcnaGui.h:896
Int_t fMenuD_HFN_ChNbAsciiFileC
Definition: TEcnaGui.h:516
TGLayoutHints * fLayoutVminD_MCs_ChNbBut
Definition: TEcnaGui.h:533
TGTextBuffer * fEntryVmaxD_Ped_ChNbNumber
Definition: TEcnaGui.h:408
TGPopupMenu * fMenuHFCorcc
Definition: TEcnaGui.h:717
void PlotMatrix(const TMatrixD &, const TString, const TString)
Definition: TEcnaHistos.cc:891
TGTextButton * fButChNb
Definition: TEcnaGui.h:682
Int_t fMenuSubmit1nhC
Definition: TEcnaGui.h:316
TGTextEntry * fVminD_MCs_ChNbText
Definition: TEcnaGui.h:535
TGLayoutHints * fLayoutVmaxD_LFN_ChNbFrame
Definition: TEcnaGui.h:469
void DoButtonRev()
Definition: TEcnaGui.cc:3411
TGCheckButton * fButLogy
Definition: TEcnaGui.h:831
Int_t fConfirmSubmit
Definition: TEcnaGui.h:228
TGCompositeFrame * fVmmD_LFN_ChNbFrame
Definition: TEcnaGui.h:461
Int_t fMenuH_MCs_DatePolmFullC
Definition: TEcnaGui.h:818
TGTextBuffer * fEntryVminHFccMosNumber
Definition: TEcnaGui.h:651
Int_t fMenuD_LFN_ChNbAsciiFileC
Definition: TEcnaGui.h:486
TGMenuBar * fMenuBarD_MSp_SpDs
Definition: TEcnaGui.h:758
Int_t fKeyNbOfSampForCalc
Definition: TEcnaGui.h:897
TGCompositeFrame * fVmmD_TNo_ChNbFrame
Definition: TEcnaGui.h:431
TGLayoutHints * fLayoutVmaxD_SCs_ChNbBut
Definition: TEcnaGui.h:555
TGCompositeFrame * fVmmD_MCs_ChNbFrame
Definition: TEcnaGui.h:521
void DoButtonVmaxD_HFN_ChNb()
Definition: TEcnaGui.cc:3701
Int_t fMenuD_MSp_SpNbLineAllStinC
Definition: TEcnaGui.h:754
Int_t fKeyFirstReqEvtNumber
Definition: TEcnaGui.h:888
Int_t fMenuH_HFN_DatePolmFullC
Definition: TEcnaGui.h:817
Int_t fMenuH_TNo_DatePolmSamePC
Definition: TEcnaGui.h:815
TGMenuBar * fMenuBarCovss
Definition: TEcnaGui.h:746
TGTextButton * fStexBut
Definition: TEcnaGui.h:323
void ViewHistoSorSTotalNoiseOfCrystals(const TString)
Definition: TEcnaGui.cc:5927
void CleanBatchFiles(const TString)
Definition: TEcnaGui.cc:4874
TGLayoutHints * fLayoutMenuBarAdcProj
Definition: TEcnaGui.h:796
TGCompositeFrame * fVmmD_HFN_ChNbFrame
Definition: TEcnaGui.h:491
Int_t fMenuH_TNo_DatePolmSameC
Definition: TEcnaGui.h:815
TGCompositeFrame * fVmmD_SCs_ChNbFrame
Definition: TEcnaGui.h:551
TGLayoutHints * fLayoutVmmD_Ped_ChNbFrame
Definition: TEcnaGui.h:428
void ViewHistimeCrystalSigmaOfCorss(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6568
Int_t fMenuH_MCs_DatePolmSamePC
Definition: TEcnaGui.h:818
Int_t fKeyRunNumber
Definition: TEcnaGui.h:886
TGPopupMenu * fMenuLHFcc
Definition: TEcnaGui.h:603
TGTextEntry * fGentText
Definition: TEcnaGui.h:844
TGMenuBar * fMenuBarD_Ped_ChNb
Definition: TEcnaGui.h:421
Int_t fMenuComputStdC
Definition: TEcnaGui.h:358
Double_t fKeyVmaxHFccMos
Definition: TEcnaGui.h:946
TGLayoutHints * fLayoutVmmD_LFN_ChNbFrame
Definition: TEcnaGui.h:488
TGLayoutHints * fLayoutMenuBarHFccMos
Definition: TEcnaGui.h:657
TGTextButton * fVmaxD_NOE_ChNbBut
Definition: TEcnaGui.h:373
void ViewSorSMeanCorss()
Definition: TEcnaGui.cc:5701
void ViewHistimeCrystalHighFrequencyNoiseRuns(const TString, const Int_t &, const Int_t &, const TString)
Definition: TEcnaGui.cc:6493
TGLayoutHints * fLayoutAnaField
Definition: TEcnaGui.h:270
void DoButtonVminD_LFN_ChNb()
Definition: TEcnaGui.cc:3653
TGMenuBar * fMenuBarHistory
Definition: TEcnaGui.h:813
TGTextButton * fVmaxD_SCs_ChNbBut
Definition: TEcnaGui.h:554
Int_t fButExitC
Definition: TEcnaGui.h:859
Int_t fMenuComputSccC
Definition: TEcnaGui.h:358
Int_t fMenuD_MCs_ChNbSamePC
Definition: TEcnaGui.h:544
TGTextButton * fButExit
Definition: TEcnaGui.h:858
TGCompositeFrame * fRunFrame
Definition: TEcnaGui.h:280
TEcnaParCout * fCnaParCout
Definition: TEcnaGui.h:245
void DoButtonNors()
Definition: TEcnaGui.cc:3278
TGTextBuffer * fEntryVminD_MCs_ChNbNumber
Definition: TEcnaGui.h:534
TGMenuBar * fMenuBarLFccMos
Definition: TEcnaGui.h:630
Int_t fMenuLFccMosLegoC
Definition: TEcnaGui.h:632
Int_t fMenuD_TNo_ChNbFullC
Definition: TEcnaGui.h:452
TGPopupMenu * fMenuD_MCs_ChNb
Definition: TEcnaGui.h:539
Int_t fKeyStexNumber
Definition: TEcnaGui.h:895
TGTextEntry * fVmaxLHFccText
Definition: TEcnaGui.h:590
TString fStexName
Definition: TEcnaGui.h:238
Int_t fKeyChanNumber
Definition: TEcnaGui.h:917
TString fKeyReqNbOfEvtsString
Definition: TEcnaGui.h:893
Double_t fKeyVminD_HFN_ChNb
Definition: TEcnaGui.h:937
Int_t fMenuD_Ped_ChNbFullC
Definition: TEcnaGui.h:423
Bool_t StatusDataExist()
Definition: TEcnaHistos.cc:832
TGMenuBar * fMenuBarD_HFN_ChNb
Definition: TEcnaGui.h:510
TString fKeyAnaType
Definition: TEcnaGui.h:882
Int_t fMenuD_MSp_SpNbLineFullC
Definition: TEcnaGui.h:754
TGMenuBar * fMenuBarLHFcc
Definition: TEcnaGui.h:604
void ViewSorSNumberOfEvents()
Definition: TEcnaGui.cc:5519
void ViewStinCrystalNumbering(const Int_t &)
Definition: TEcnaGui.cc:5784
void PlotCloneOfCurrentCanvas()
TGTextEntry * fVminLHFccText
Definition: TEcnaGui.h:599
T w() const
TGTextEntry * fVmaxD_LFN_ChNbText
Definition: TEcnaGui.h:466
TGLayoutHints * fLayoutLevBut
Definition: TEcnaGui.h:303
TGTextBuffer * fEntryFevNumber
Definition: TEcnaGui.h:276
Int_t fMenuD_HFN_ChNbSameC
Definition: TEcnaGui.h:513
TString PathTestScramArch()
void ViewHistoSorSPedestalsDistribution(const TString)
Definition: TEcnaGui.cc:5903
TGTextBuffer * fEntryVminD_SCs_ChNbNumber
Definition: TEcnaGui.h:565
void DialogBox()
Definition: TEcnaGui.cc:1491