7#ifndef TRUTH__PARTICLELEVEL_OVERLAPREMOVAL__ALG_H
8#define TRUTH__PARTICLELEVEL_OVERLAPREMOVAL__ALG_H
23 virtual StatusCode
execute(
const EventContext &ctx)
const final;
27 this,
"jets",
"",
"the name of the input truth jet container"};
29 this,
"electrons",
"",
"the name of the input truth electrons container"};
31 this,
"muons",
"",
"the name of the input truth muons container"};
33 this,
"photons",
"",
"the name of the input truth photons container"};
35 this,
"decORjet",
"SetMe",
""};
37 this,
"decORelectron",
"TruthElectrons.passesOR",
""};
39 this,
"decORmuon",
"TruthMuons.passesOR",
""};
41 this,
"decORphoton",
"TruthPhotons.passesOR",
""};
43 this,
"jetSelection",
"",
"the selection on the input truth jets"};
45 this,
"electronSelection",
"",
46 "the selection on the input truth electrons"};
48 this,
"muonSelection",
"",
"the selection on the input truth muons"};
50 this,
"photonSelection",
"",
"the selection on the input truth photons"};
52 this,
"useRapidityForDeltaR",
true,
53 "whether to use rapidity instead of pseudo-rapidity for the calculation "
56 this,
"useDressedProperties",
true,
57 "whether to use dressed electron and muon kinematics rather than simple "
60 this,
"doJetElectronOR",
false,
61 "whether to perform jet-electron overlap removal"};
63 this,
"doJetMuonOR",
false,
64 "whether to perform jet-muon overlap removal"};
66 this,
"doJetPhotonOR",
false,
67 "whether to perform jet-photon overlap removal"};
69 this,
"labelOR",
"passesOR",
70 "decoration to apply to all particles for overlap removal"};
73 bool useRapidity)
const;
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_photonsKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORmuon
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_muonsKey
SG::ReadHandleKey< xAOD::JetContainer > m_jetsKey
float dressedDeltaR(const xAOD::Jet *p1, TLorentzVector &p2, bool useRapidity) const
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORphoton
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decORelectron
CP::SelectionReadHandle m_jetSelection
CP::SelectionReadHandle m_muonSelection
Gaudi::Property< bool > m_useDressedProperties
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
CP::SelectionReadHandle m_electronSelection
Gaudi::Property< bool > m_doJetMuonOR
Gaudi::Property< bool > m_useRapidity
Gaudi::Property< std::string > m_decLabelOR
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 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".