Belle II Software  release-06-01-15
TrgEclMaster Class Reference

ETM class. More...

#include <TrgEclMaster.h>

Collaboration diagram for TrgEclMaster:

Public Member Functions

 TrgEclMaster (void)
 TrgEclMaster Constructor.
 
virtual ~TrgEclMaster ()
 TrgEclMaster Destructor.
 
 TrgEclMaster (TrgEclMaster &)=delete
 Copy constructor, deleted.
 
TrgEclMasteroperator= (TrgEclMaster &)=delete
 Assignment operator, deleted.
 
void initialize (int)
 initialize
 
void simulate01 (int)
 simulates ECL trigger for Global Cosmic data

 
void simulate02 (int)
 simulates ECL trigger for Data Analysis
 
std::string name (void) const
 returns name.
 
std::string version (void) const
 returns version.
 
void setRS (std::vector< int >, std::vector< double >, std::vector< double > &, std::vector< std::vector< double >> &)
 ECL bit information for GDL. More...
 
void setClusterMethod (int cluster)
 Get Event timing. More...
 
void setClusterLimit (int limit)
 Set the limit # of Cluster.
 
void setBhabhaMethod (int bhabha)
 Set Bhabha.
 
void setEventTimingMethod (int EventTiming)
 Set Cluster.
 
void setTimeWindow (int timewindow)
 Set Trigger Decision window size.
 
void setOverlapWindow (int overlapwindow)
 Set Trigger Decision overlap window size.
 
void setNofTopTC (int noftoptc)
 set # of considered TC in energy weighted Timing method
 
void makeLowMultiTriggerBit (std::vector< int >, std::vector< double >)
 make LowMultiTriggerBit
 
void makeTriggerBit (int, int, int, int, double, int, int, std::vector< int >, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int)
 make Trigger bit except for Low Multiplicity related bit
 
double setTotalEnergy (std::vector< double >)
 Set Total Energy.
 
int getTriggerbit (int i)
 Get ECL Trigger bit.
 
int getLowmultibit ()
 Get Low Multiplicity Trigger Bit.
 
void set2DBhabhaThreshold (const std::vector< double > &i2DBhabhaThresholdFWD, const std::vector< double > &i2DBhabhaThresholdBWD)
 set 2D Bhabha Energy Threshold
 
void set3DBhabhaSelectionThreshold (const std::vector< double > &i3DBhabhaSelectionThreshold)
 set 3D selection Bhabha Energy Threshold
 
void set3DBhabhaVetoThreshold (const std::vector< double > &i3DBhabhaVetoThreshold)
 set 3D veto Bhabha Energy Threshold
 
void set3DBhabhaSelectionAngle (const std::vector< double > &i3DBhabhaSelectionAngle)
 set 3D selection Bhabha Energy Angle
 
void set3DBhabhaVetoAngle (const std::vector< double > &i3DBhabhaVetoAngle)
 set 3D veto Bhabha Energy Angle
 
void setmumuThreshold (int mumuThreshold)
 set mumu bit Threshold
 
void setmumuAngle (const std::vector< double > &imumuAngle)
 set mumu bit Angle selection
 
void set3DBhabhaAddAngleCut (const std::vector< double > &i3DBhabhaAddAngleCut)
 set 3D Bhabha addtion Angle selection
 
void setTaub2bAngleCut (const std::vector< int > &itaub2bAngleCut)
 set tau b2b 2 cluster angle cut
 
void setTaub2bEtotCut (double itaub2bEtotCut)
 set tau b2b total energy cut
 
void setTaub2bClusterECut (double itaub2bClusterECut1, double itaub2bClusterECut2)
 set tau b2b 1Cluster energy cut
 
void setTaub2b2Cut (const std::vector< int > &iTaub2b2AngleCut, const double iTaub2b2EtotCut, const double iTaub2b2CLEEndcapCut, const double iTaub2b2CLECut)
 
void setn300MeVClusterThreshold (int n300MeVCluster)
 set the number of cluster exceeding 300 MeV
 
void setECLBurstThreshold (int ECLBurstThreshold)
 set mumu bit Threshold
 
void setTotalEnergyThreshold (const std::vector< double > &iTotalEnergy)
 set Total Energy Theshold (low, high, lum)
 
void setLowMultiplicityThreshold (const std::vector< double > &iLowMultiThreshold)
 set Low Multiplicity Threshold
 
void set3DBhabhaVetoInTrackThetaRegion (const std::vector< int > &i3DBhabhaVetoInTrackThetaRegion)
 
void setEventTimingQualityThresholds (const std::vector< double > &iEventTimingQualityThresholds)
 

Static Public Member Functions

static TrgEclMastergetTrgEclMaster (void)
 get pointer of TrgEclMaster object
 

Private Attributes

std::vector< std::vector< double > > TCEnergy
 Hit TC Energy.
 
std::vector< std::vector< double > > TCTiming
 Hit TC Timing.
 
std::vector< std::vector< int > > TCBeamBkgTag
 Hit TC Beam Background tag.
 
std::vector< int > HitTCId
 Hit TC Energy in time window.
 
std::vector< double > TCHitEnergy
 Hit TC Energy in time window.
 
std::vector< double > TCHitTiming
 Hit TC Timing in time window.
 
std::vector< int > TCHitBeamBkgTag
 Hit TC Beam Background tag in time window.
 
std::vector< std::vector< double > > PhiRingSum
 Phi ring sum.
 
std::vector< std::vector< std::vector< double > > > ThetaRingSum
 Theta ring sum.
 
double TimeWindow
 Hit TC Energy in time window. More...
 
double OverlapWindow
 TRG Decision overlap window.
 
int _Clustering
 clutering option
 
int _Bhabha
 Bhabha option.
 
int _EventTiming
 EventTiming option.
 
int _NofTopTC
 
int _ClusterLimit
 The limit number of Cluster.
 
int _Triggerbit [4]
 ECL Trigger bit.
 
int _Lowmultibit
 Low Multiplicity bit.
 
int _PrescaleFactor
 Bhabha Prescale Factor.
 
int _PrescaleCounter
 Bhabha Prescale Countor.
 
std::vector< double > _2DBhabhaThresholdFWD
 2D Bhabha Energy Threshold
 
std::vector< double > _2DBhabhaThresholdBWD
 2D Bhabha Energy Threshold
 
std::vector< double > _3DBhabhaSelectionThreshold
 3D Selection Bhabha Energy Threshold
 
std::vector< double > _3DBhabhaVetoThreshold
 3D Veto Bhabha Energy Threshold
 
std::vector< double > _3DBhabhaSelectionAngle
 3D Selection Bhabha Energy Angle
 
std::vector< double > _3DBhabhaVetoAngle
 3D Veto Bhabha Energy Angle
 
double _mumuThreshold
 mumu bit Energy Threshold
 
std::vector< double > _mumuAngle
 mumu bit Angle
 
std::vector< double > m_3DBhabhaAddAngleCut
 
std::vector< int > m_taub2bAngleCut
 tau b2b 2 cluster angle cut (degree)
 
double m_taub2bEtotCut
 tau b2b total energy (TC theta ID =1-17) (GeV)
 
double m_taub2bClusterECut1
 taub2b one Cluster energy selection (GeV)
 
double m_taub2bClusterECut2
 
std::vector< int > m_taub2b2AngleCut
 
double m_taub2b2EtotCut
 taub2b2 total energy (TC theta ID =1-17) (GeV)
 
double m_taub2b2CLEEndcapCut
 
double m_taub2b2CLECut
 taub2b2 cluseter energy cut (GeV)
 
int _n300MeVCluster
 The number of Cluster exceeding 300 MeV.
 
double _ECLBurstThreshold
 ECL Burst Bit Threshold.
 
std::vector< double > _TotalEnergy
 Total Energy Theshold (low, high, lum)
 
std::vector< double > _LowMultiThreshold
 Low Multiplicity Threshold.
 
std::vector< int > m_3DBhabhaVetoInTrackThetaRegion
 
std::vector< double > m_EventTimingQualityThresholds
 
TrgEclMappingobj_map
 Mapping object.
 
TrgEclClusterobj_cluster
 Cluster object.
 
TrgEclTimingobj_timing
 EventTiming object.
 
TrgEclBhabhaobj_bhabha
 Bhabha object.
 
TrgEclBeamBKGobj_beambkg
 Beam Backgroud veto object.
 
TrgEclDataBaseobj_database
 Beam Backgroud veto object.
 

Detailed Description

ETM class.

Definition at line 33 of file TrgEclMaster.h.

Member Function Documentation

◆ setClusterMethod()

void setClusterMethod ( int  cluster)
inline

Get Event timing.

Set Cluster

Definition at line 78 of file TrgEclMaster.h.

78 {_Clustering = cluster;}
int _Clustering
clutering option
Definition: TrgEclMaster.h:237

◆ setRS()

void setRS ( std::vector< int >  TCId,
std::vector< double >  TCHit,
std::vector< double > &  phiringsum,
std::vector< std::vector< double >> &  thetaringsum 
)

ECL bit information for GDL.

ECL bit information for GDL Set Phi Ring Sum

Definition at line 1036 of file TrgEclMaster.cc.

1040 {
1041  //
1042  //
1043  // TC Phi & Theta ring sum
1044  //
1045  //----------------------------------------
1046  // FW BR BW total
1047  //----------------------------------------
1048  //TC phi ring 3 12 2 17
1049  //ID 1-3 4-15 16-17
1050  //TC Theta ring 32 36 32
1051  //ID 1-32 1-36 1-32
1052 
1053  //----------------------------------------
1054  //
1055  thetaringsum.resize(3, std::vector<double>(36, 0.));
1056  phiringsum.resize(17);
1057  const int size_hit = TCHit.size();
1058  for (int iHit = 0; iHit < size_hit; iHit++) {
1059  int iTCId = TCId[iHit] - 1;
1060  if (TCHit[iHit] > 0) {
1061  int iTCThetaId = obj_map->getTCThetaIdFromTCId(iTCId + 1) - 1 ;
1062  int iTCPhiId = obj_map->getTCPhiIdFromTCId(iTCId + 1) - 1 ;
1063  phiringsum[iTCThetaId] += TCHit[iHit];
1064  if (iTCThetaId < 3) {
1065  //fwd
1066  if (iTCThetaId != 0) {
1067  thetaringsum[0][iTCPhiId] += TCHit[iHit];
1068  }
1069  } else if (iTCThetaId < 15) {
1070  //barrel
1071  thetaringsum[1][iTCPhiId] += TCHit[iHit];
1072  } else {
1073  //bwd
1074  thetaringsum[2][iTCPhiId] += TCHit[iHit];
1075  }
1076 
1077  }
1078 
1079  }
1080 
1081 }
int getTCThetaIdFromTCId(int)
get [TC Theta ID] from [TC ID]
int getTCPhiIdFromTCId(int)
get [TC Phi ID] from [TC ID]
TrgEclMapping * obj_map
Mapping object.
Definition: TrgEclMaster.h:304

Member Data Documentation

◆ _NofTopTC

int _NofTopTC
private

of considered TC in energy weighted Timing method

Definition at line 243 of file TrgEclMaster.h.

◆ TimeWindow

double TimeWindow
private

Hit TC Energy in time window.

Hit TC Timing in time window TRG Decision Time window

Definition at line 232 of file TrgEclMaster.h.


The documentation for this class was generated from the following files: