5#ifndef ASG_ANALYSIS_ALGORITHMS__JET_TRIGGER_DECORATOR_ALG_H
6#define ASG_ANALYSIS_ALGORITHMS__JET_TRIGGER_DECORATOR_ALG_H
28 ISvcLocator *svcLoc =
nullptr);
31 StatusCode
execute (
const EventContext& ctx)
override;
42 this,
"jets",
"",
"the jet container to use"};
45 this,
"L1Jets",
"LVL1JetRoIs",
"Legacy L1Calo jet RoI container"
49 this,
"L1JetsPhaseI",
"L1_jFexSRJetRoI",
50 "Phase-I L1Calo jFEX SR jet RoI container"
53 this,
"HLTJets",
"HLT_AntiKt4EMPFlowJets_subresjesgscIS_ftf_bJets",
58 this,
"trigger", {},
"trigger to match"
64 this,
"triggerBugList", {},
"List of buggy triggers"
66 Gaudi::Property<float>
m_l1dR{
this,
"l1dR_cut", 0.4,
67 "ΔR cone for L1 (jFEX) matching"};
68 Gaudi::Property<float>
m_hltDR{
this,
"hltDR_cut", 0.4,
69 "ΔR cone for HLT matching"};
73#ifndef XAOD_STANDALONE
76 this,
"TrigDecisionTool",
"Trig::TrigDecisionTool/TrigDecisionTool",
77 "trigger decision tool"};
81 this,
"TrigDecisionTool",
"Trig::TrigDecisionTool/TrigDecisionTool",
82 "trigger decision tool"};
85 {
this,
"trigEmulationTool",
"",
"Jet trigger emulation tool, to be used for Run 2"};
88 this,
"usePhaseIL1",
false,
89 "If true, use Phase-I L1Calo jFEX SR jet RoI container for L1 matching."
93 this,
"l1ThresholdType",
"jJ",
94 "L1 threshold type for jFEX bit→name lookup (Phase-I L1 only)."
98 this,
"TrigConfigTool",
"TrigConf::xAODConfigTool/xAODConfigTool",
99 "Trigger configuration tool (Phase-I L1 menu access)"
109 "do trigger L1 matching?" };
117 "do trigger HLT matching?" };
119 "use HLT jet trigger emulation tool" };
SysListHandle m_systematicsList
the systematics list we run
ToolHandle< TrigConf::ITrigConfigTool > m_trigConfigTool
Gaudi::Property< bool > m_doHLTMatching
Gaudi::Property< float > m_l1dR
JetTriggerDecoratorAlg(const std::string &name, ISvcLocator *svcLoc=nullptr)
Gaudi::Property< bool > m_useEmulationTool
Gaudi::Property< bool > m_usePhaseIL1
CP::SysWriteDecorHandle< std::vector< int > > m_L1Threshold_decor
CP::SysWriteDecorHandle< float > m_HLTPt_decor
CP::SysWriteDecorHandle< float > m_HLTPhi_decor
CP::SysWriteDecorHandle< std::vector< int > > m_HLTThreshold_decor
ToolHandle< Trig::ITrigBtagEmulationTool > m_emulationTool
bool isSameJet(const xAOD::IParticle *jet1, const xAOD::IParticle *jet2) const
SG::ReadHandleKey< xAOD::jFexSRJetRoIContainer > m_L1JetsPhaseIInKey
Gaudi::Property< std::vector< std::string > > m_triggerNavBug
CP::SysWriteDecorHandle< float > m_L1Eta_decor
Gaudi::Property< float > m_hltDR
CP::SysWriteDecorHandle< float > m_L1DR_decor
StatusCode rebuildJfexThresholdTable(const EventContext &ctx)
PublicToolHandle< Trig::TrigDecisionTool > m_trigDecisionTool
CP::SysReadHandle< xAOD::JetContainer > m_jetsHandle
SG::ReadHandleKey< xAOD::JetContainer > m_HLTJetsInKey
CP::SysWriteDecorHandle< float > m_HLTEta_decor
Gaudi::Property< std::string > m_trigger
std::vector< std::string > m_jfexThresholdNames
CP::SysWriteDecorHandle< float > m_HLTDR_decor
CP::SysWriteDecorHandle< float > m_L1Et_decor
SG::ReadHandleKey< xAOD::JetRoIContainer > m_L1JetsInKey
Gaudi::Property< std::string > m_l1ThresholdType
StatusCode initialize() override
Gaudi::Property< bool > m_doL1Matching
CP::SysWriteDecorHandle< float > m_L1Phi_decor
bool m_thresholdNamesLoaded
std::string m_cachedL1MenuName
a class managing the property to configure the list of systematics to process
a data handle for reading systematics varied input data
a data handle for reading systematics varied input data
the (new) base class for EventLoop algorithms
virtual::StatusCode execute()
execute this algorithm
Property holding a SG store/key/clid from which a ReadHandle is made.
Class providing the definition of the 4-vector interface.
Select isolated Photons, Electrons and Muons.