Belle II Software  release-08-01-10
TRGECLModule.cc
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #define TRGECL_SHORT_NAMES
10 
11 #include <framework/core/ModuleParamList.templateDetails.h>
12 #include <framework/core/ModuleParamList.h>
13 
14 #include "trg/ecl/TrgEclMaster.h"
15 //trg package headers
16 #include "trg/trg/Debug.h"
17 #include "trg/ecl/modules/trgecl/TRGECLModule.h"
18 #include "trg/ecl/dbobjects/TRGECLETMPara.h"
19 
20 #include <iostream>
21 
22 using namespace std;
23 
24 namespace Belle2 {
29  //
30  //
32  REG_MODULE(TRGECL);
33  //
34  //
35  //
36  string
37  TRGECLModule::version() const
38  {
39  return string("TRGECLModule 1.00");
40  }
41  //
42  //
43  //
44  TRGECLModule::TRGECLModule():
45  Module::Module(), _debugLevel(0), _Bhabha(0),
46  _Clustering(1), _ClusterLimit(6), _EventTiming(1),
47  _TimeWindow(250.0), _OverlapWindow(125.0), _NofTopTC(3),
48  _SelectEvent(1), _ConditionDB(0), _mumuThreshold(20),
49  _n300MeVCluster(1), _ECLBurstThreshold(200)
50  {
51 
52  string desc = "TRGECLModule(" + version() + ")";
53  setDescription(desc);
55 
56  addParam("DebugLevel",
58  "TRGECL debug level",
59  _debugLevel);
60  addParam("Bhabha",
61  _Bhabha,
62  "TRGECL Bhabha method 0 : Belle I, 1 :belle II(defult)",
63  _Bhabha);
64  addParam("Clustering",
66  "TRGECL Clustering method 0 : use only ICN, 1 : ICN + Energy(Defult)",
67  _Clustering);
68  addParam("ClusterLimit",
70  "The Limit number of cluster (Defult:6)",
72  addParam("EventTiming",
74  "TRGECL EventTiming method 0 : Belle I, 1 : Energetic TC, 2 : Energy Weighted timing (defult)",
75  _EventTiming);
76  addParam("NofTopTC",
77  _NofTopTC,
78  "TRGECL # of considered TC in energy weighted Timing method(Only work for EvenTiming Method 2)",
79  _NofTopTC);
80  addParam("TimeWindow",
82  "TRGECL Trigger decision Time Window",
83  _TimeWindow);
84  addParam("OverlapWindow",
86  "TRGECL Trigger decision Time Window",
88  addParam("EventSelect",
90  "TRGECL Select one trigger window for logic study",
91  _SelectEvent);
92  addParam("ConditionDB",
94  "Flag to use Condition Database(Defult 0)",
95  _ConditionDB);
96  addParam("3DBhabhaVetoInTrackThetaRegion",
98  "set 3DBhabhaVetoInTrackThetaRegion (low TCID and high TCID)",
100  addParam("EventTimingQualityThresholds",
102  "set EventTimingQualityThresholds (low energy(GeV) and high energy(GeV))",
104  addParam("3DBhabhaAddAngleCut",
106  "set Angle Cut of Bhbaha Additional veto for hie (dphi low and high, theta sum low and high(degree)",
108  addParam("Taub2bAngleCut",
110  "set Taub2bAngleCut(dphi low and high, theta sum low and high(degree)",
112  addParam("Taub2bEtotCut",
114  "set Taub2b total energy cut in TC ThetaID 1-17(GeV)",
116  addParam("Taub2bClusterECut1",
118  "set Taub2b 1 cluster energy Cut (GeV) for CL1 : ",
120  addParam("Taub2bClusterECut2",
122  "set Taub2b 1 cluster energy Cut (GeV) for CL2 : ",
124 
125  addParam("Taub2b2AngleCut",
127  "set Taub2b2AngleCut(dphi low and high, theta sum low and high(degree))",
129  addParam("Taub2b2EtotCut",
131  "set Taub2b2 total energy cut in TC ThetaID 1-17(GeV)",
133  addParam("Taub2b2CLEEndcapCut",
135  "set Taub2b2 energy Cut (GeV) for cluseter in endcap (GeV) : ",
137  addParam("Taub2b2CLECut",
139  "set Taub2b2 cluster energy Cut (GeV) : ",
141 
142  addParam("Taub2b3AngleCut",
144  "set Taub2b3AngleCut(dphi low and high, theta sum low and high in cms (degree))",
146  addParam("Taub2b3EtotCut",
148  "set Taub2b3 total energy cut in lab in ThetaID 1-17(GeV)",
150  addParam("Taub2b3CLEb2bCut",
152  "set Taub2b3 cluster energy Cut in lab for one of b2b clusters (GeV) : ",
154  addParam("Taub2b3CLELowCut",
156  "set Taub2b3 cluster energy low Cut in lab for all clusters (GeV) : ",
158  addParam("Taub2b3CLEHighCut",
160  "set Taub2b3 cluster energy high Cut in lab for all clusters (GeV) : ",
162 
163  _2DBhabhaThresholdFWD.clear();
164  _2DBhabhaThresholdBWD.clear();
166  _3DBhabhaVetoThreshold.clear();
167  _3DBhabhaSelectionAngle.clear();
168  _3DBhabhaVetoAngle.clear();
169  _mumuAngle.clear();
170  m_3DBhabhaAddAngleCut.clear();
171  m_taub2bAngleCut.clear();
172  m_taub2b2AngleCut.clear();
173  m_taub2b3AngleCut.clear();
174 
175  _TotalEnergy.clear();
176  _LowMultiThreshold.clear();
177 
178  _TotalEnergy = {5, 10, 30}; // /100 MeV
179  _2DBhabhaThresholdFWD = {40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 30, 35}; // /100 MeV
180  _2DBhabhaThresholdBWD = {25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 30, 30}; // /100 MeV
181  _3DBhabhaVetoThreshold = {30, 45}; // /100 MeV
182  _3DBhabhaSelectionThreshold = {20, 40}; // /100 MeV
183  _3DBhabhaVetoAngle = {160, 200, 165, 190}; // /100 MeV
184  _3DBhabhaSelectionAngle = {140, 220, 160, 200}; // /100 MeV
185  _mumuThreshold = 20; //100 MeV
186  _mumuAngle = {160, 200, 165, 190}; // degree
187  m_3DBhabhaAddAngleCut = {150, 210, 160, 200}; // degree
188  _LowMultiThreshold = {10, 20, 25, 30}; // degree
189  _n300MeVCluster = 1;
190  _ECLBurstThreshold = 20;
192  m_EventTimingQualityThresholds = {0.5, 10}; // GeV
193  // taub2b
194  m_taub2bAngleCut = {110, 250, 130, 230}; // degree
195  m_taub2bEtotCut = 7; // GeV
196  m_taub2bClusterECut1 = 1.9; // GeV
197  m_taub2bClusterECut2 = 999; // GeV
198  // taub2b2
199  m_taub2b2AngleCut = {120, 240, 140, 220}; // degree
200  m_taub2b2EtotCut = 7.0; // GeV
201  m_taub2b2CLEEndcapCut = 3.0; // GeV
202  m_taub2b2CLECut = 0.162; // GeV
203  // taub2b3
204  m_taub2b3AngleCut = {120, 240, 140, 220}; // degree
205  m_taub2b3EtotCut = 7.0; // GeV
206  m_taub2b3CLEb2bCut = 0.14; // GeV
207  m_taub2b3CLELowCut = 0.12; // GeV
208  m_taub2b3CLEHighCut = 4.50; // GeV
209 
210  if (TRGDebug::level()) {
211  std::cout << "TRGECLModule ... created" << std::endl;
212  }
213  }
214  //
215  //
216  //
218  {
219  if (TRGDebug::level()) {
220  std::cout << "TRGECLModule ... destructed " << std::endl;
221 
222  }
223  }
224  //
225  //
226  //
227  void
229  {
230 
232 
233  if (TRGDebug::level()) {
234  std::cout << "TRGECLModule::initialize ... options" << std::endl;
235  std::cout << TRGDebug::tab(4) << "debug level = " << TRGDebug::level()
236  << std::endl;
237  }
238  //
239  //
240  //
241  m_nRun = 0 ;
242  m_nEvent = 0 ;
243  m_hitNum = 0;
244  m_hitTCNum = 0;
245 
246  m_TRGECLHit.registerInDataStore();
247  m_TRGECLTrg.registerInDataStore();
248  m_TRGECLCluster.registerInDataStore();
249 
250  }
251  //
252  //
253  //
254  void
256  {
257  if (_ConditionDB == 1) {
258  for (const auto& para : m_ETMPara) {
259  _TotalEnergy = {(double)para.getELow(),
260  (double)para.getELow(),
261  (double)para.getELow()
262  };
263  for (int index = 0; index < 14; index ++) {
264  _2DBhabhaThresholdFWD.push_back((double)para.get2DBhabhaFWD(index));
265  _2DBhabhaThresholdBWD.push_back((double)para.get2DBhabhaBWD(index));
266  }
268  (double)para.get3DBhabhaVetoThreshold(0),
269  (double)para.get3DBhabhaVetoThreshold(1)
270  }; // /100 MeV
272  (double)para.get3DBhabhaSelectionThreshold(0),
273  (double)para.get3DBhabhaSelectionThreshold(1)
274  }; // /100 MeV
276  (double)para.get3DBhabhaVetoAngle(0),
277  (double)para.get3DBhabhaVetoAngle(1),
278  (double)para.get3DBhabhaVetoAngle(2),
279  (double)para.get3DBhabhaVetoAngle(3)
280  };
282  (double)para.get3DBhabhaSelectionAngle(0),
283  (double)para.get3DBhabhaSelectionAngle(1),
284  (double)para.get3DBhabhaSelectionAngle(2),
285  (double)para.get3DBhabhaSelectionAngle(3)
286  };
288  (double)(para.getmumuThreshold());
289  _mumuAngle = {
290  (double)para.getmumuAngle(0),
291  (double)para.getmumuAngle(1),
292  (double)para.getmumuAngle(2)
293  };
295  (double)para.getLowMultiThreshold(0),
296  (double)para.getLowMultiThreshold(1),
297  (double)para.getLowMultiThreshold(2),
298  (double)para.getLowMultiThreshold(3)
299  }; // /100 MeV
300  }
301  }
302 
303  B2INFO("[TRGECLModule] 3DBhabhaVetoInTrackThetaRegion (low : high) = ("
304  << m_3DBhabhaVetoInTrackThetaRegion[0] << " : "
305  << m_3DBhabhaVetoInTrackThetaRegion[1] << ")");
306 
307  B2INFO("[TRGECLModule] EventTimingQualityThresholds (low : high)= ("
308  << m_EventTimingQualityThresholds[0] << " : "
309  << m_EventTimingQualityThresholds[1] << ") (GeV)");
310 
311  B2INFO("[TRGECLModule] Taub2b two CL Angle cut in CM (degree) (dphi L, H, theta sum L, H ) = ("
312  << m_taub2bAngleCut[0] << ","
313  << m_taub2bAngleCut[1] << ","
314  << m_taub2bAngleCut[2] << ","
315  << m_taub2bAngleCut[3] << ")");
316  B2INFO("[TRGECLModule] Taub2b Total Energy Cut in lab. (GeV) = "
317  << m_taub2bEtotCut);
318  B2INFO("[TRGECLModule] Taub2b Cluster Energy Cut in lab. (GeV) : (E(CL1), E(CL2)) = ("
319  << m_taub2bClusterECut1 << ", "
320  << m_taub2bClusterECut2 << ")");
321  B2INFO("[TRGECLModule] Bhabha Add Angle cut in CM (degree) (dphi L, H, theta sum L, H) = ("
322  << m_3DBhabhaAddAngleCut[0] << ","
323  << m_3DBhabhaAddAngleCut[1] << ","
324  << m_3DBhabhaAddAngleCut[2] << ","
325  << m_3DBhabhaAddAngleCut[3] << ")");
326 
327  B2INFO("[TRGECLModule] Taub2b2 two CL Angle cut in CM (degree) (dphi L, H, theta sum L, H) = ("
328  << m_taub2b2AngleCut[0] << ","
329  << m_taub2b2AngleCut[1] << ","
330  << m_taub2b2AngleCut[2] << ","
331  << m_taub2b2AngleCut[3] << ")");
332  B2INFO("[TRGECLModule] Taub2b2 Total Energy Cut in lab. (GeV) = "
333  << m_taub2b2EtotCut);
334  B2INFO("[TRGECLModule] Taub2b2 Energy Cut in lab. for cluster in endcap (GeV) = "
336  B2INFO("[TRGECLModule] Taub2b2 Cluster energy cut in lab. (GeV) = "
337  << m_taub2b2CLECut);
338 
339  B2INFO("[TRGECLModule] Taub2b3 two CL Angle cut in CM (degree) (dphi L, H, theta sum L, H) = ("
340  << m_taub2b3AngleCut[0] << ","
341  << m_taub2b3AngleCut[1] << ","
342  << m_taub2b3AngleCut[2] << ","
343  << m_taub2b3AngleCut[3] << ")");
344  B2INFO("[TRGECLModule] Taub2b3 Total Energy Cut in lab. (GeV) = "
345  << m_taub2b3EtotCut);
346  B2INFO("[TRGECLModule] Taub2b3 Cluster energy cut in lab. for one of b2b clusters (GeV) = "
347  << m_taub2b3CLEb2bCut);
348  B2INFO("[TRGECLModule] Taub2b3 Cluster energy low cut in lab. for all clusters (GeV) = "
349  << m_taub2b3CLELowCut);
350  B2INFO("[TRGECLModule] Taub2b3 Cluster energy high cut in lab. for all clusters(GeV) = "
352 
353  if (TRGDebug::level()) {
354  std::cout << "TRGECLModule ... beginRun called " << std::endl;
355  }
356  // _ecl = TrgEcl::getTrgEcl();
357 
358  }
359  //
360  //
361  //
362  void
364  {
365 
366  if (TRGDebug::level()) {
367  std::cout << "TRGECLMoudle ... event called" << std::endl;
368  }
369  //
370  // simulation
371  //
372  TrgEclMaster* _ecl = new TrgEclMaster();
373 
374  _ecl->initialize(m_nEvent);
377  _ecl->setBhabhaMethod(_Bhabha);
379  _ecl->setTimeWindow(_TimeWindow);
381  _ecl->setNofTopTC(_NofTopTC);
388  _ecl->setmumuAngle(_mumuAngle);
409 
410  if (_SelectEvent == 0) {
411  _ecl->simulate01(m_nEvent);
412  } else if (_SelectEvent == 1) {
413  _ecl->simulate02(m_nEvent);
414  }
415  // printf("TRGECLModule> eventId = %d \n", m_nEvent);
416  //
417  //
418  m_nEvent++;
419  //
420  //
421  //
422  delete _ecl;
423  }
424  //
425  //
426  //
427  void
429  {
430  if (TRGDebug::level()) {
431  std::cout << "TRGECLModule ... endRun called " << std::endl;
432  }
433  }
434  //
435  //
436  //
437  void
439  {
440  if (TRGDebug::level()) {
441  std::cout << "TRGECLModule ... terminate called " << std::endl;
442  }
443  }
444  //
445  //
446  //
448 } // namespace Belle2
Base class for Modules.
Definition: Module.h:72
void setDescription(const std::string &description)
Sets the description of the module.
Definition: Module.cc:214
void setPropertyFlags(unsigned int propertyFlags)
Sets the flags for the module properties.
Definition: Module.cc:208
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
Definition: Module.h:80
double m_taub2b3CLELowCut
taub2b3 cluster energy low cut in lab for all clusters (GeV)
Definition: TRGECLModule.h:166
int _Clustering
Clustering option.
Definition: TRGECLModule.h:97
double _ECLBurstThreshold
ECL Burst Bit Threshold.
Definition: TRGECLModule.h:133
double m_taub2bEtotCut
taub2b total energy (TC theta ID =1-17) (GeV)
Definition: TRGECLModule.h:146
double m_taub2b3CLEHighCut
taub2b3 cluster energy high cut in lab for all clusters (GeV)
Definition: TRGECLModule.h:168
int _ConditionDB
Flag to use Condition DB.
Definition: TRGECLModule.h:111
int _debugLevel
Parameters.
Definition: TRGECLModule.h:65
int _ClusterLimit
Cluster Limit.
Definition: TRGECLModule.h:99
std::vector< double > m_EventTimingQualityThresholds
Energy threshold(low, high) of event timing quality flag (GeV)
Definition: TRGECLModule.h:141
std::vector< int > m_taub2bAngleCut
taub2b 2 cluster angle cut (degree) (dphi low, dphi high, theta_sum low, theta_sum high)
Definition: TRGECLModule.h:144
DBArray< TRGECLETMPara > m_ETMPara
ETN Parameters.
Definition: TRGECLModule.h:176
double _mumuThreshold
mumu bit Energy Threshold
Definition: TRGECLModule.h:125
StoreArray< TRGECLTrg > m_TRGECLTrg
output for TRGECLTrg
Definition: TRGECLModule.h:172
std::vector< int > m_3DBhabhaVetoInTrackThetaRegion
Theta region (low, high) of 3D Bhabha Veto InTrack.
Definition: TRGECLModule.h:139
int m_hitNum
The current number of created hits in an event.
Definition: TRGECLModule.h:83
int m_hitTCNum
TC Hit number.
Definition: TRGECLModule.h:85
int _n300MeVCluster
The number of Cluster exceeding 300 MeV.
Definition: TRGECLModule.h:131
int _SelectEvent
Event selection.
Definition: TRGECLModule.h:109
int m_nRun
Run number.
Definition: TRGECLModule.h:91
std::vector< double > _TotalEnergy
Total Energy Theshold (low, high, lum)
Definition: TRGECLModule.h:135
std::vector< double > _mumuAngle
mumu bit Angle
Definition: TRGECLModule.h:127
std::vector< double > m_3DBhabhaAddAngleCut
Angle selection of additional Bhabha veto in CM frame.
Definition: TRGECLModule.h:129
std::vector< double > _3DBhabhaVetoThreshold
3D Veto Bhabha Energy Threshold
Definition: TRGECLModule.h:119
double m_taub2b2EtotCut
taub2b2 total energy cut (GeV)
Definition: TRGECLModule.h:152
double _TimeWindow
Trigger decision time window.
Definition: TRGECLModule.h:103
std::vector< double > _LowMultiThreshold
Low Multiplicity Threshold.
Definition: TRGECLModule.h:137
int m_nEvent
Event number.
Definition: TRGECLModule.h:93
int _EventTiming
Eventtiming option.
Definition: TRGECLModule.h:101
int _Bhabha
Bhabha option.
Definition: TRGECLModule.h:95
std::vector< double > _3DBhabhaSelectionAngle
3D Selection Bhabha Energy Angle
Definition: TRGECLModule.h:121
std::vector< double > _2DBhabhaThresholdBWD
2D Bhabha Energy Threshold
Definition: TRGECLModule.h:115
StoreArray< TRGECLCluster > m_TRGECLCluster
output for TRGECLCluster
Definition: TRGECLModule.h:174
double m_taub2bClusterECut2
taub2b Cluster energy selection (GeV)
Definition: TRGECLModule.h:150
std::vector< int > m_taub2b2AngleCut
taub2b2 two Cluster angle cut (degree)
Definition: TRGECLModule.h:154
double m_taub2b3EtotCut
taub2b3 total energy cut in lab (GeV)
Definition: TRGECLModule.h:160
std::vector< double > _3DBhabhaSelectionThreshold
3D Selection Bhabha Energy Threshold
Definition: TRGECLModule.h:117
double m_taub2b3CLEb2bCut
taub2b3 cluster energy cut in lab for one of b2b clusters (GeV)
Definition: TRGECLModule.h:164
StoreArray< TRGECLHit > m_TRGECLHit
output for TRGECLHit
Definition: TRGECLModule.h:170
double m_taub2bClusterECut1
taub2b Cluster energy selection (GeV)
Definition: TRGECLModule.h:148
double _OverlapWindow
Trigger decision overlap window in oder to avoid boundary effect.
Definition: TRGECLModule.h:105
double m_taub2b2CLECut
taub2b2 cluster energy cut (GeV)
Definition: TRGECLModule.h:158
std::vector< double > _2DBhabhaThresholdFWD
2D Bhabha Energy Threshold
Definition: TRGECLModule.h:113
std::vector< double > _3DBhabhaVetoAngle
3D Veto Bhabha Energy Angle
Definition: TRGECLModule.h:123
double m_taub2b2CLEEndcapCut
taub2b2 cluster energy cut for endcap cluster (GeV)
Definition: TRGECLModule.h:156
std::vector< int > m_taub2b3AngleCut
taub2b3 two Cluster angle cut in cms (degree)
Definition: TRGECLModule.h:162
void setLowMultiplicityThreshold(const std::vector< double > &iLowMultiThreshold)
set Low Multiplicity Threshold
Definition: TrgEclMaster.h:209
void setEventTimingQualityThresholds(const std::vector< double > &iEventTimingQualityThresholds)
set energy threshold(low and high) of event timing quality flag (GeV)
Definition: TrgEclMaster.h:219
void setNofTopTC(int noftoptc)
set # of considered TC in energy weighted Timing method
Definition: TrgEclMaster.h:90
void setBhabhaMethod(int bhabha)
Set Bhabha.
Definition: TrgEclMaster.h:82
void setTaub2bAngleCut(const std::vector< int > &itaub2bAngleCut)
set tau b2b 2 cluster angle cut
Definition: TrgEclMaster.h:153
void set3DBhabhaAddAngleCut(const std::vector< double > &i3DBhabhaAddAngleCut)
set 3D Bhabha addtion Angle selection
Definition: TrgEclMaster.h:148
void simulate02(int)
simulates ECL trigger for Data Analysis
void setTimeWindow(int timewindow)
Set Trigger Decision window size.
Definition: TrgEclMaster.h:86
void initialize(int)
initialize
void setEventTimingMethod(int EventTiming)
Set Cluster.
Definition: TrgEclMaster.h:84
void setTaub2bEtotCut(double itaub2bEtotCut)
set tau b2b total energy cut
Definition: TrgEclMaster.h:158
void setClusterLimit(int limit)
Set the limit # of Cluster.
Definition: TrgEclMaster.h:80
void setClusterMethod(int cluster)
Get Event timing.
Definition: TrgEclMaster.h:78
void setTotalEnergyThreshold(const std::vector< double > &iTotalEnergy)
set Total Energy Theshold (low, high, lum)
Definition: TrgEclMaster.h:204
void setmumuThreshold(int mumuThreshold)
set mumu bit Threshold
Definition: TrgEclMaster.h:141
void set2DBhabhaThreshold(const std::vector< double > &i2DBhabhaThresholdFWD, const std::vector< double > &i2DBhabhaThresholdBWD)
set 2D Bhabha Energy Threshold
Definition: TrgEclMaster.h:113
void set3DBhabhaVetoAngle(const std::vector< double > &i3DBhabhaVetoAngle)
set 3D veto Bhabha Energy Angle
Definition: TrgEclMaster.h:136
void setTaub2b2Cut(const std::vector< int > &iTaub2b2AngleCut, const double iTaub2b2EtotCut, const double iTaub2b2CLEEndcapCut, const double iTaub2b2CLECut)
set taub2b2 cut
Definition: TrgEclMaster.h:170
void set3DBhabhaSelectionAngle(const std::vector< double > &i3DBhabhaSelectionAngle)
set 3D selection Bhabha Energy Angle
Definition: TrgEclMaster.h:131
void set3DBhabhaSelectionThreshold(const std::vector< double > &i3DBhabhaSelectionThreshold)
set 3D selection Bhabha Energy Threshold
Definition: TrgEclMaster.h:120
void setECLBurstThreshold(int ECLBurstThreshold)
set mumu bit Threshold
Definition: TrgEclMaster.h:199
void simulate01(int)
simulates ECL trigger for Global Cosmic data
void setOverlapWindow(int overlapwindow)
Set Trigger Decision overlap window size.
Definition: TrgEclMaster.h:88
void set3DBhabhaVetoInTrackThetaRegion(const std::vector< int > &i3DBhabhaVetoInTrackThetaRegion)
set theta ID region (low and high) of 3DBhabhaVeto InTrack for gg selection
Definition: TrgEclMaster.h:214
void setn300MeVClusterThreshold(int n300MeVCluster)
set the number of cluster exceeding 300 MeV
Definition: TrgEclMaster.h:194
void set3DBhabhaVetoThreshold(const std::vector< double > &i3DBhabhaVetoThreshold)
set 3D veto Bhabha Energy Threshold
Definition: TrgEclMaster.h:125
void setmumuAngle(const std::vector< double > &imumuAngle)
set mumu bit Angle selection
Definition: TrgEclMaster.h:143
void setTaub2b3Cut(const std::vector< int > &iTaub2b3AngleCut, const double iTaub2b3EtotCut, const double iTaub2b3CLEb2bCut, const double iTaub2b3CLELowCut, const double iTaub2b3CLEHighCut)
set taub2b3 cut
Definition: TrgEclMaster.h:181
void setTaub2bClusterECut(double itaub2bClusterECut1, double itaub2bClusterECut2)
set tau b2b 1Cluster energy cut
Definition: TrgEclMaster.h:163
void addParam(const std::string &name, T &paramVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module.
Definition: Module.h:560
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
Definition: Module.h:650
virtual ~TRGECLModule()
Destructor
virtual void initialize() override
Initilizes TRGECLModule.
virtual void event() override
Called event by event.
virtual void endRun() override
Called when run ended.
virtual void terminate() override
Called when processing ended.
virtual void beginRun() override
Called when new run started.
std::string version(void) const
returns version of TRGECLModule.
Definition: TRGECLModule.cc:37
static std::string tab(void)
returns tab spaces.
Definition: Debug.cc:47
static int level(void)
returns the debug level.
Definition: Debug.cc:67
Abstract base class for different kinds of events.