ATLAS Offline Software
Loading...
Searching...
No Matches
JetOverlapLeptonDecoratorAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef FLAVORTAGJETDECORATORS_JETOVERLAPLEPTON_DECORATORALG_H
6#define FLAVORTAGJETDECORATORS_JETOVERLAPLEPTON_DECORATORALG_H
7
12
15
17
18
19namespace FlavorTagJetDecorators {
20
36 public:
37 JetOverlapLeptonDecoratorAlg(const std::string& name,
38 ISvcLocator* pSvcLocator);
39
40 virtual StatusCode initialize() override;
41 virtual StatusCode execute(const EventContext& ctx) const override;
42
43 private:
44 // Input containers
46 this, "JetContainer", "AntiKt4EMPFlowJets", "Jet container"};
48 this, "TruthElectronContainer", "TruthElectrons",
49 "Truth electron container"};
51 this, "TruthMuonContainer", "TruthMuons",
52 "Truth muon container"};
53
54 // Input decorations: classifierParticleOrigin on the truth leptons
55 // (written by MCTruthClassifier, a downstream algorithm).
57 this, "TruthElectronOriginKey", m_truthElectronKey,
58 "classifierParticleOrigin",
59 "MCTruthClassifier origin on truth electrons"};
61 this, "TruthMuonOriginKey", m_truthMuonKey,
62 "classifierParticleOrigin",
63 "MCTruthClassifier origin on truth muons"};
64
65 // Selection properties
66 Gaudi::Property<float> m_overlapDR{
67 this, "OverlapDR", 0.4f,
68 "Maximum DeltaR(jet, lepton) for overlap"};
69 Gaudi::Property<float> m_ptMinimum{
70 this, "PtMinimum", 2000.f,
71 "Minimum lepton pT [MeV]"};
72 Gaudi::Property<float> m_absEtaMaximum{
73 this, "AbsEtaMaximum", 2.9f,
74 "Maximum |eta| for lepton selection"};
75
76 // Output decoration
78 this, "hasOverlapLeptonKey", m_jetKey, "ftag_hasOverlapLepton",
79 "Whether jet overlaps with a truth lepton from W/Z/top"};
80 };
81
82}
83
84#endif // FLAVORTAGJETDECORATORS_JETOVERLAPLEPTON_DECORATORALG_H
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
JetOverlapLeptonDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthElectronKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_dec_hasOverlapLepton
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthMuonKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_truthElectronOriginKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_truthMuonOriginKey
virtual StatusCode execute(const EventContext &ctx) const override
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.