14#include <framework/core/Module.h>
16#include "trg/ecl/TrgEclCluster.h"
17#include "trg/ecl/TrgEclTiming.h"
18#include "trg/ecl/TrgEclBhabha.h"
19#include "trg/ecl/TrgEclBeamBKG.h"
20#include "trg/ecl/TrgEclMapping.h"
64 std::string
name(
void)
const;
67 std::string
version(
void)
const;
73 void setRS(std::vector<int>, std::vector<double>,
74 std::vector<double>&, std::vector<std::vector<double>>&);
102 std::vector<int>,
int,
int,
int,
int,
103 int,
int,
int,
int,
int,
int,
int,
104 int,
int,
int,
int,
int);
114 const std::vector<double>& i2DBhabhaThresholdBWD)
164 double itaub2bClusterECut2)
171 const double iTaub2b2EtotCut,
172 const double iTaub2b2CLEEndcapCut,
173 const double iTaub2b2CLECut)
182 const double iTaub2b3EtotCut,
183 const double iTaub2b3CLEb2bCut,
184 const double iTaub2b3CLELowCut,
185 const double iTaub2b3CLEHighCut)
A Class of ECL Trigger clustering
A Class of ECL Trigger clustering
A Class of ECL Trigger clustering
double m_taub2b3CLELowCut
taub2b3 cluster energy low cut in lab for all clusters (GeV)
void setLowMultiplicityThreshold(const std::vector< double > &iLowMultiThreshold)
set Low Multiplicity Threshold
double m_taub2bEtotCut
tau b2b total energy (TC theta ID =1-17) (GeV)
double m_taub2b3CLEHighCut
taub2b3 cluster energy high cut in lab for all clusters (GeV)
void setEventTimingQualityThresholds(const std::vector< double > &iEventTimingQualityThresholds)
set energy threshold(low and high) of event timing quality flag (GeV)
TrgEclDataBase * m_obj_database
Beam Backgroud veto object.
std::vector< double > m_LowMultiThreshold
Low Multiplicity Threshold.
void setNofTopTC(int noftoptc)
set # of considered TC in energy weighted Timing method
std::vector< double > m_2DBhabhaThresholdBWD
2D Bhabha Energy Threshold
double m_ECLBurstThreshold
ECL Burst Bit Threshold.
void setBhabhaMethod(int bhabha)
Set Bhabha.
std::vector< double > m_mumuAngle
mumu bit Angle
int m_Clustering
clutering option
void setTaub2bAngleCut(const std::vector< int > &itaub2bAngleCut)
set tau b2b 2 cluster angle cut
std::vector< int > m_HitTCId
Hit TC Energy in time window.
std::vector< double > m_EventTimingQualityThresholds
energy threshold(low, high) for quality flag (GeV)
std::vector< double > m_TotalEnergy
Total Energy Theshold (low, high, lum)
std::vector< int > m_taub2bAngleCut
tau b2b 2 cluster angle cut (degree) (dphi low, dphi high, theta_sum low, theta_sum high)
void set3DBhabhaAddAngleCut(const std::vector< double > &i3DBhabhaAddAngleCut)
set 3D Bhabha addtion Angle selection
int m_ClusterLimit
The limit number of Cluster.
std::vector< std::vector< double > > m_PhiRingSum
Phi ring sum.
std::vector< double > m_TCHitTiming
Hit TC Timing in time window.
void simulate02(int)
simulates ECL trigger for Data Analysis
void setTimeWindow(int timewindow)
Set Trigger Decision window size.
std::vector< std::vector< double > > m_TCTiming
Hit TC Timing.
std::vector< int > m_3DBhabhaVetoInTrackThetaRegion
Theta region (low, high) of 3D Bhabha Veto InTrack.
int m_PrescaleCounter
Bhabha Prescale Countor.
std::string version(void) const
returns version.
TrgEclMaster(void)
TrgEclMaster Constructor.
int m_EventTiming
EventTiming option.
void initialize(int)
initialize
double setTotalEnergy(std::vector< double >)
Set Total Energy.
void setEventTimingMethod(int EventTiming)
Set Cluster.
void setTaub2bEtotCut(double itaub2bEtotCut)
set tau b2b total energy cut
void makeLowMultiTriggerBit(std::vector< int >, std::vector< double >)
make LowMultiTriggerBit
double m_OverlapWindow
TRG Decision overlap window.
void setClusterLimit(int limit)
Set the limit # of Cluster.
std::vector< std::vector< int > > m_TCBeamBkgTag
Hit TC Beam Background tag.
void setClusterMethod(int cluster)
Get Event timing.
int m_n300MeVCluster
The number of Cluster exceeding 300 MeV.
int m_Triggerbit[4]
ECL Trigger bit.
void setTotalEnergyThreshold(const std::vector< double > &iTotalEnergy)
set Total Energy Theshold (low, high, lum)
std::vector< double > m_3DBhabhaSelectionAngle
3D Selection Bhabha Energy Angle
std::vector< double > m_3DBhabhaVetoThreshold
3D Veto Bhabha Energy Threshold
std::vector< double > m_3DBhabhaAddAngleCut
Angle selection of additional Bhabha addition in CM frame.
double m_taub2b2EtotCut
taub2b2 total energy (TC theta ID =1-17) (GeV)
void setRS(std::vector< int >, std::vector< double >, std::vector< double > &, std::vector< std::vector< double > > &)
ECL bit information for GDL.
TrgEclMapping * m_obj_map
Mapping object.
std::vector< double > m_TCHitEnergy
Hit TC Energy in time window.
void setmumuThreshold(int mumuThreshold)
set mumu bit Threshold
void set2DBhabhaThreshold(const std::vector< double > &i2DBhabhaThresholdFWD, const std::vector< double > &i2DBhabhaThresholdBWD)
set 2D Bhabha Energy Threshold
void set3DBhabhaVetoAngle(const std::vector< double > &i3DBhabhaVetoAngle)
set 3D veto Bhabha Energy Angle
int m_Lowmultibit
Low Multiplicity bit.
int getTriggerbit(int i)
Get ECL Trigger bit.
void setTaub2b2Cut(const std::vector< int > &iTaub2b2AngleCut, const double iTaub2b2EtotCut, const double iTaub2b2CLEEndcapCut, const double iTaub2b2CLECut)
set taub2b2 cut
std::vector< double > m_3DBhabhaVetoAngle
3D Veto Bhabha Energy Angle
std::vector< double > m_3DBhabhaSelectionThreshold
3D Selection Bhabha Energy Threshold
void set3DBhabhaSelectionAngle(const std::vector< double > &i3DBhabhaSelectionAngle)
set 3D selection Bhabha Energy Angle
void set3DBhabhaSelectionThreshold(const std::vector< double > &i3DBhabhaSelectionThreshold)
set 3D selection Bhabha Energy Threshold
TrgEclMaster & operator=(TrgEclMaster &)=delete
Assignment operator, deleted.
int m_Bhabha
Bhabha option.
TrgEclBhabha * m_obj_bhabha
Bhabha object.
int getLowmultibit()
Get Low Multiplicity Trigger Bit.
void setECLBurstThreshold(int ECLBurstThreshold)
set mumu bit Threshold
double m_mumuThreshold
mumu bit Energy Threshold
int m_PrescaleFactor
Bhabha Prescale Factor.
double m_taub2bClusterECut2
taub2b one Cluster energy selection (GeV)
std::string name(void) const
returns name.
std::vector< int > m_taub2b2AngleCut
taub2b2 angle selection(degree) (3,2,1,0) = (dphi low, dphi high, theta_sum low, theta_sum high)
double m_taub2b3EtotCut
taub2b3 total energy (TC theta ID =1-17) (GeV)
std::vector< int > m_TCHitBeamBkgTag
Hit TC Beam Background tag in time window.
double m_taub2b3CLEb2bCut
taub2b3 cluster energy cut in lab for one of b2b clusters (GeV)
void simulate01(int)
simulates ECL trigger for Global Cosmic data
TrgEclBeamBKG * m_obj_beambkg
Beam Backgroud veto object.
static TrgEclMaster * getTrgEclMaster(void)
get pointer of TrgEclMaster object
void setOverlapWindow(int overlapwindow)
Set Trigger Decision overlap window size.
std::vector< std::vector< std::vector< double > > > m_ThetaRingSum
Theta ring sum.
void set3DBhabhaVetoInTrackThetaRegion(const std::vector< int > &i3DBhabhaVetoInTrackThetaRegion)
set theta ID region (low and high) of 3DBhabhaVeto InTrack for gg selection
double m_taub2bClusterECut1
taub2b one Cluster energy selection (GeV)
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, int)
make Trigger bit except for Low Multiplicity related bit
void setn300MeVClusterThreshold(int n300MeVCluster)
set the number of cluster exceeding 300 MeV
void set3DBhabhaVetoThreshold(const std::vector< double > &i3DBhabhaVetoThreshold)
set 3D veto Bhabha Energy Threshold
TrgEclCluster * m_obj_cluster
Cluster object.
void setmumuAngle(const std::vector< double > &imumuAngle)
set mumu bit Angle selection
virtual ~TrgEclMaster()
TrgEclMaster Destructor.
std::vector< double > m_2DBhabhaThresholdFWD
2D Bhabha Energy Threshold
std::vector< std::vector< double > > m_TCEnergy
Hit TC Energy.
TrgEclTiming * m_obj_timing
EventTiming object.
void setTaub2b3Cut(const std::vector< int > &iTaub2b3AngleCut, const double iTaub2b3EtotCut, const double iTaub2b3CLEb2bCut, const double iTaub2b3CLELowCut, const double iTaub2b3CLEHighCut)
set taub2b3 cut
double m_taub2b2CLECut
taub2b2 cluseter energy cut (GeV)
double m_taub2b2CLEEndcapCut
taub2b2 cluster energy cut for endcap cluster (GeV)
TrgEclMaster(TrgEclMaster &)=delete
Copy constructor, deleted.
void setTaub2bClusterECut(double itaub2bClusterECut1, double itaub2bClusterECut2)
set tau b2b 1Cluster energy cut
std::vector< int > m_taub2b3AngleCut
taub2b3 selection cuts (3,2,1,0) = (dphi low, dphi high, theta_sum low, theta_sum high)
double m_TimeWindow
Hit TC Energy in time window.
A Class of ECL Trigger clustering
Abstract base class for different kinds of events.