5#ifndef TRIGMUONMONITORING_L2OVERLAPREMOVERMON_H
6#define TRIGMUONMONITORING_L2OVERLAPREMOVERMON_H
20 virtual StatusCode
fillVariablesPerChain(
const EventContext &ctx,
const std::string &chain)
const override;
45 static float calcinvMass(
double m1,
double pt1,
double eta1,
double phi1,
double m2,
double pt2,
double eta2,
double phi2) ;
50 Gaudi::Property< float >
m_dRSAThresBB {
this,
"DRThresBB", 0.05,
"DR threshold of L2SA in barel and barel region"};
51 Gaudi::Property< float >
m_massSAThresBB {
this,
"MassThresBB", 0.20,
"mass threshold of L2SA in barel and barel region"};
52 Gaudi::Property< float >
m_dRSAThresBE {
this,
"DRThresBE", 0.05,
"DR threshold of L2SA in barel and barel region"};
53 Gaudi::Property< float >
m_massSAThresBE {
this,
"MassThresBE", 0.20,
"mass threshold of L2SA in barel and endcap region"};
54 Gaudi::Property< std::vector<float> >
m_etaBins {
this,
"EtaBins", {0, 1.9, 2.1, 9.9},
"eta bins of DR and mass thresholds"};
55 Gaudi::Property< std::vector<float> >
m_dRSAThresEC {
this,
"DRThresEC", {0.06, 0.05, 0.05},
"DR threshold of L2SA in endcap and barel region"};
56 Gaudi::Property< std::vector<float> >
m_massSAThresEC {
this,
"MassThresEC", {0.20, 0.15, 0.10},
"mass threshold of L2SA in endcap and endcap region"};
57 Gaudi::Property< std::vector<float> >
m_dRCBThres {
this,
"DRThres", {0.06, 0.05, 0.05},
"DR threshold of L2CB"};
58 Gaudi::Property< std::vector<float> >
m_dRbySAThres {
this,
"dRbySAThres", {0.06, 0.05, 0.05},
"mufast DR threshold of L2CB"};
59 Gaudi::Property< std::vector<float> >
m_massCBThres {
this,
"MassThres", {0.20, 0.15, 0.10},
"mass threshold of L2CB"};
ElementLink implementation for ROOT usage.
Gaudi::Property< std::vector< float > > m_etaBins
Gaudi::Property< float > m_dRSAThresBE
Gaudi::Property< std::vector< float > > m_dRSAThresEC
static std::tuple< float, float, float > L2ORPosForMatchFunc(const xAOD::L2StandAloneMuon *trig)
StatusCode chooseBestMuon(const std::string &chain, const std::vector< TrigCompositeUtils::LinkInfo< xAOD::L2StandAloneMuonContainer > > &featureCont, const std::vector< unsigned int > &muResult) const
Function that choose best muon.
Gaudi::Property< std::vector< float > > m_dRCBThres
Gaudi::Property< std::vector< float > > m_massSAThresEC
static float calcinvMass(double m1, double pt1, double eta1, double phi1, double m2, double pt2, double eta2, double phi2)
L2OverlapRemoverMon(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< std::vector< float > > m_dRbySAThres
virtual StatusCode fillVariablesPerChain(const EventContext &ctx, const std::string &chain) const override
Function that fills variables of trigger objects associated to specified trigger chains.
Gaudi::Property< float > m_dRSAThresBB
Gaudi::Property< std::vector< float > > m_massCBThres
Gaudi::Property< float > m_massSAThresBB
StatusCode fillVariablesOverlapRemoverPlots(const std::string &chain, std::string &&trigstep) const
Function that fills variables of L2OverlapRemover plots.
Gaudi::Property< float > m_massSAThresBE
bool isOverlap(const std::string &chain, const ElementLink< xAOD::L2StandAloneMuonContainer > &muEL1, const ElementLink< xAOD::L2StandAloneMuonContainer > &muEL2) const
TrigMuonMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
L2CombinedMuon_v1 L2CombinedMuon
Define the latest version of the muon CB class.
L2StandAloneMuon_v2 L2StandAloneMuon
Define the latest version of the muon SA class.
Helper to keep a Decision object, ElementLink and ActiveState (with respect to some requested ChainGr...