ATLAS Offline Software
ORMETMakerAlg.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // ORMETMakerAlg.h
8 
9 #ifndef ORMETMakerAlg_H
10 #define ORMETMakerAlg_H
11 
13 #include "METMakerAlg.h"
14 #include "GaudiKernel/ToolHandle.h"
15 #include "StoreGate/DataHandle.h"
16 
17 #include "xAODEgamma/Electron.h"
18 #include "xAODEgamma/Photon.h"
19 #include "xAODMuon/Muon.h"
20 #include "xAODTau/TauJet.h"
21 
22 #include "xAODJet/JetContainer.h"
23 #include "xAODMuon/MuonContainer.h"
27 
30 
31 
32 class IMETMaker;
35 namespace CP {
36  class IMuonSelectionTool;
37 }
38 namespace TauAnalysisTools {
39  class ITauSelectionTool;
40 }
41 
42 namespace met {
43  class ORMETMakerAlg : public METMakerAlg {
44 
45  public:
46 
48  ORMETMakerAlg(const std::string& name, ISvcLocator* pSvcLocator);
49 
51  virtual ~ORMETMakerAlg();
52 
54  virtual StatusCode initialize() override;
55  virtual StatusCode execute() override;
56  virtual StatusCode finalize() override;
57 
58  private:
59 
62 
63  virtual bool accept(const xAOD::Electron* el) final;
64  virtual bool accept(const xAOD::Photon* ph) final;
65  virtual bool accept(const xAOD::TauJet* tau) final;
66  virtual bool accept(const xAOD::Muon* muon) final;
67 
68 
69  std::string m_soft;
70 
72 
73  SG::WriteHandleKey<xAOD::PFOContainer> m_chargedPFOContainerWriteHandleKey{this,"PFOChargedOutputName","OverlapRemovedCHSChargedParticleFlowObjects","WriteHandleKey for charged PFO"}; //jetOR
74  SG::WriteHandleKey<xAOD::PFOContainer> m_neutralPFOContainerWriteHandleKey{this,"PFONeutralOutputName","OverlapRemovedCHSNeutralParticleFlowObjects","WriteHandleKey for charged PFO"}; //jetOR
75  SG::WriteHandleKey<xAOD::PFOContainer> m_PFOContainerWriteHandleKey{this,"PFOOutputName","OverlapRemovedCHSParticleFlowObjects","WriteHandleKey for PFO"}; //jetOR
76 
77 
78 SG::ReadHandleKey<xAOD::PFOContainer> m_inPFOKey{this, "InPFOKey", "", "ReadHandleKey for modified PFlow Objects"};
79 SG::WriteHandleKey<xAOD::PFOContainer> m_outPFOKey{this, "OutPFOKey", "", "WriteHandleKey for modified PFlow Objects"};
80 
83  bool m_doORMet;
84 
85 
86  double m_electronPT;
87  double m_muonPT;
88  double m_photonPT;
89  double m_tauPT;
90 
91  double m_electronETA;
92  double m_muonETA;
93  double m_photonETA;
94  double m_tauETA;
95 
96 
98  bool m_doJVT;
99 
100  };
101 
102 }
103 
104 #endif
105 
TauAnalysisTools
Definition: TruthCollectionMakerTau.h:16
met::ORMETMakerAlg
Definition: ORMETMakerAlg.h:43
xAOD::muon
@ muon
Definition: TrackingPrimitives.h:195
met::METMakerAlg
Definition: METMakerAlg.h:42
met::ORMETMakerAlg::ORMETMakerAlg
ORMETMakerAlg()
Default constructor:
met::ORMETMakerAlg::m_chargedPFOContainerWriteHandleKey
SG::WriteHandleKey< xAOD::PFOContainer > m_chargedPFOContainerWriteHandleKey
Definition: ORMETMakerAlg.h:73
Muon.h
met::ORMETMakerAlg::~ORMETMakerAlg
virtual ~ORMETMakerAlg()
Destructor:
met::ORMETMakerAlg::m_muonPT
double m_muonPT
Definition: ORMETMakerAlg.h:87
met::ORMETMakerAlg::m_soft
std::string m_soft
Definition: ORMETMakerAlg.h:69
met::ORMETMakerAlg::m_tauETA
double m_tauETA
Definition: ORMETMakerAlg.h:94
met::ORMETMakerAlg::accept
virtual bool accept(const xAOD::Electron *el) final
Definition: ORMETMakerAlg.cxx:351
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
DataHandle.h
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
met::ORMETMakerAlg::initialize
virtual StatusCode initialize() override
Athena algorithm's Hooks.
Definition: ORMETMakerAlg.cxx:66
met::ORMETMakerAlg::m_PFOContainerWriteHandleKey
SG::WriteHandleKey< xAOD::PFOContainer > m_PFOContainerWriteHandleKey
Definition: ORMETMakerAlg.h:75
AthAlgorithm.h
met::ORMETMakerAlg::m_electronETA
double m_electronETA
Definition: ORMETMakerAlg.h:91
IMETMaker
Definition: IMETMaker.h:28
met
Definition: IMETSignificance.h:24
met::ORMETMakerAlg::m_ORMetMapKey
SG::ReadHandleKey< xAOD::MissingETAssociationMap > m_ORMetMapKey
Definition: ORMETMakerAlg.h:71
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
met::ORMETMakerAlg::finalize
virtual StatusCode finalize() override
Definition: ORMETMakerAlg.cxx:82
ElectronContainer.h
met::ORMETMakerAlg::m_doRetrieveORconstit
bool m_doRetrieveORconstit
Definition: ORMETMakerAlg.h:81
Photon.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
met::ORMETMakerAlg::m_photonETA
double m_photonETA
Definition: ORMETMakerAlg.h:93
IAsgPhotonIsEMSelector
Interface to tool to select photons.
Definition: IAsgPhotonIsEMSelector.h:25
plotIsoValidation.el
el
Definition: plotIsoValidation.py:197
met::ORMETMakerAlg::m_tauPT
double m_tauPT
Definition: ORMETMakerAlg.h:89
met::ORMETMakerAlg::m_doJVT
bool m_doJVT
Definition: ORMETMakerAlg.h:98
met::ORMETMakerAlg::m_useUnmatched
bool m_useUnmatched
Definition: ORMETMakerAlg.h:97
TauJetContainer.h
METMakerAlg.h
met::ORMETMakerAlg::m_retainMuonConstit
bool m_retainMuonConstit
Definition: ORMETMakerAlg.h:82
met::ORMETMakerAlg::m_inPFOKey
SG::ReadHandleKey< xAOD::PFOContainer > m_inPFOKey
Definition: ORMETMakerAlg.h:78
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
met::ORMETMakerAlg::m_electronPT
double m_electronPT
Definition: ORMETMakerAlg.h:86
met::ORMETMakerAlg::execute
virtual StatusCode execute() override
Definition: ORMETMakerAlg.cxx:89
met::ORMETMakerAlg::m_neutralPFOContainerWriteHandleKey
SG::WriteHandleKey< xAOD::PFOContainer > m_neutralPFOContainerWriteHandleKey
Definition: ORMETMakerAlg.h:74
xAOD::Electron_v1
Definition: Electron_v1.h:34
met::ORMETMakerAlg::m_muonETA
double m_muonETA
Definition: ORMETMakerAlg.h:92
MuonContainer.h
IAsgElectronLikelihoodTool
Interface to tool to select electrons.
Definition: IAsgElectronLikelihoodTool.h:27
met::ORMETMakerAlg::m_photonPT
double m_photonPT
Definition: ORMETMakerAlg.h:88
met::ORMETMakerAlg::m_outPFOKey
SG::WriteHandleKey< xAOD::PFOContainer > m_outPFOKey
Definition: ORMETMakerAlg.h:79
JetContainer.h
xAOD::Photon_v1
Definition: Photon_v1.h:37
TauJet.h
MissingETAssociationMap.h
Electron.h
PhotonContainer.h
MissingETContainer.h
met::ORMETMakerAlg::m_doORMet
bool m_doORMet
Definition: ORMETMakerAlg.h:83