7#ifndef TRUTH_PARTICLELEVEL_OVERLAPREMOVAL_ALG_H
8#define TRUTH_PARTICLELEVEL_OVERLAPREMOVAL_ALG_H
24 virtual StatusCode
execute(
const EventContext &ctx)
const final;
28 this,
"jets",
"",
"the name of the input truth jet container"};
30 this,
"electrons",
"",
"the name of the input truth electrons container"};
32 this,
"muons",
"",
"the name of the input truth muons container"};
34 this,
"photons",
"",
"the name of the input truth photons container"};
37 "the jet overlap-removal decoration; set by the config block from the "
38 "jet container name and labelOR, do not set directly"};
40 this,
"decORelectron",
"",
41 "the electron overlap-removal decoration; set by the config block "
42 "from the electron container name and labelOR, do not set directly"};
44 this,
"decORmuon",
"",
45 "the muon overlap-removal decoration; set by the config block from "
46 "the muon container name and labelOR, do not set directly"};
48 this,
"decORphoton",
"",
49 "the photon overlap-removal decoration; set by the config block from "
50 "the photon container name and labelOR, do not set directly"};
52 this,
"ptDressedElectron",
"",
53 "dressed electron pt decoration used for the DeltaR calculation; set "
54 "by the config block from the electron container name, do not set "
57 this,
"etaDressedElectron",
"",
58 "dressed electron eta decoration used for the DeltaR calculation; set "
59 "by the config block from the electron container name, do not set "
62 this,
"phiDressedElectron",
"",
63 "dressed electron phi decoration used for the DeltaR calculation; set "
64 "by the config block from the electron container name, do not set "
67 this,
"eDressedElectron",
"",
68 "dressed electron energy decoration used for the DeltaR calculation; "
69 "set by the config block from the electron container name, do not "
72 this,
"ptDressedMuon",
"",
73 "dressed muon pt decoration used for the DeltaR calculation; set by "
74 "the config block from the muon container name, do not set directly"};
76 this,
"etaDressedMuon",
"",
77 "dressed muon eta decoration used for the DeltaR calculation; set by "
78 "the config block from the muon container name, do not set directly"};
80 this,
"phiDressedMuon",
"",
81 "dressed muon phi decoration used for the DeltaR calculation; set by "
82 "the config block from the muon container name, do not set directly"};
84 this,
"eDressedMuon",
"",
85 "dressed muon energy decoration used for the DeltaR calculation; set "
86 "by the config block from the muon container name, do not set "
89 this,
"jetSelection",
"",
"the selection on the input truth jets"};
91 this,
"electronSelection",
"",
92 "the selection on the input truth electrons"};
94 this,
"muonSelection",
"",
"the selection on the input truth muons"};
96 this,
"photonSelection",
"",
"the selection on the input truth photons"};
98 this,
"useRapidityForDeltaR",
true,
99 "whether to use rapidity instead of pseudo-rapidity for the calculation "
102 this,
"useDressedProperties",
true,
103 "whether to use dressed electron and muon kinematics rather than simple "
106 this,
"doJetElectronOR",
false,
107 "whether to perform jet-electron overlap removal"};
109 this,
"doJetMuonOR",
false,
110 "whether to perform jet-muon overlap removal"};
112 this,
"doJetPhotonOR",
false,
113 "whether to perform jet-photon overlap removal"};
115 this,
"labelOR",
"passesOR",
116 "decoration to apply to all particles for overlap removal"};
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_phiDressedMuonKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_photonsKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORmuon
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_muonsKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_eDressedElectronKey
SG::ReadHandleKey< xAOD::JetContainer > m_jetsKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORphoton
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_ptDressedElectronKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_ptDressedMuonKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORelectron
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_etaDressedMuonKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_phiDressedElectronKey
CP::SelectionReadHandle m_jetSelection
CP::SelectionReadHandle m_muonSelection
Gaudi::Property< bool > m_useDressedProperties
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_eDressedMuonKey
virtual StatusCode execute(const EventContext &ctx) const final
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decORjet
virtual StatusCode initialize() final
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_electronsKey
Gaudi::Property< bool > m_doJetPhotonOR
Gaudi::Property< bool > m_doJetElectronOR
float dressedDeltaR(const xAOD::Jet *jet, double rapidityOrEta, double phi) const
CP::SelectionReadHandle m_electronSelection
Gaudi::Property< bool > m_doJetMuonOR
Gaudi::Property< bool > m_useRapidity
Gaudi::Property< std::string > m_decLabelOR
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_etaDressedElectronKey
CP::SelectionReadHandle m_photonSelection
a data handle for reading selection properties from objects
the base class for EventLoop reentrant algorithms
AnaReentrantAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
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.
Select isolated Photons, Electrons and Muons.
Jet_v1 Jet
Definition of the current "jet version".