ATLAS Offline Software
MetMakerAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
8 
9 #ifndef MET_ANALYSIS_ALGORITHMS__MET_MAKER_ALG_H
10 #define MET_ANALYSIS_ALGORITHMS__MET_MAKER_ALG_H
11 
18 #include <METInterface/IMETMaker.h>
24 
25 namespace CP
26 {
36 
38  {
40  public:
42  StatusCode initialize () override;
43  StatusCode execute () override;
44 
45 
46 
48  private:
49  ToolHandle<IMETMaker> m_makerTool {this, "makerTool", "METMaker", "the METMaker tool we apply"};
50 
52  private:
53  ToolHandle<IMETSystematicsTool> m_systematicsTool {this, "systematicsTool", "", "the systematics tool we apply"};
54 
56  private:
57  Gaudi::Property<std::string> m_metCoreName {this, "metCore", "", "the name of the core MissingETContainer"};
58 
60  private:
61  Gaudi::Property<std::string> m_metAssociationName {this, "metAssociation", "", "the name of the MissingETAssociationMap"};
62 
64  private:
66 
68  private:
70  this, "electrons", "", "the electron container to use" };
71 
73  private:
75  this, "electronsSelection", "", "the selection on the input electrons" };
76 
78  private:
79  Gaudi::Property<std::string> m_electronsKey {this, "electronsKey", "RefEle", "the key for the electrons"};
80 
82  private:
84  this, "photons", "", "the photon container to use" };
85 
87  private:
89  this, "photonsSelection", "", "the selection on the input photons" };
90 
92  private:
93  Gaudi::Property<std::string> m_photonsKey {this, "photonsKey", "RefGamma", "the key for the photons"};
94 
96  private:
98  this, "muons", "", "the muon container to use" };
99 
101  private:
103  this, "muonsSelection", "", "the selection on the input muons" };
104 
106  private:
107  Gaudi::Property<std::string> m_muonsKey {this, "muonsKey", "Muons", "the key for the muons"};
108 
110  private:
112  this, "taus", "", "the tau container to use" };
113 
115  private:
117  this, "tausSelection", "", "the selection on the input taus" };
118 
120  private:
121  Gaudi::Property<std::string> m_tausKey {this, "tausKey", "RefTau", "the key for the taus"};
122 
124  private:
126  this, "jets", "", "the jet collection we use"};
127 
129  private:
131  this, "invisible", {}, "Any particles to treat as invisible."};
132 
134  private:
136  this, "invisibleSelection", {}, "the selection on the particles to be treated as invisible." };
137 
139  private:
140  Gaudi::Property<std::string> m_jetsKey {this, "jetsKey", "RefJet", "the key for the jets"};
141 
143  private:
144  Gaudi::Property<std::string> m_softTermKey {this, "softTermKey", "PVSoftTrk", "the soft term key"};
145 
147  private:
148  Gaudi::Property<bool> m_doTrackMet {this, "doTrackMet", false, "whether to use track-met instead of jet-met"};
149 
151  private:
152  Gaudi::Property<bool> m_doJetJVT {this, "doJetJVT", true, "whether to do jet JVT"};
153 
155  private:
157  this, "met", "MissingET_%SYS%", "the met collection we produce"};
158  };
159 }
160 
161 #endif
CP::MetMakerAlg
an algorithm for calling IMETMaker
Definition: MetMakerAlg.h:38
PropertyWrapper.h
CP::MetMakerAlg::m_tausHandle
SysReadHandle< xAOD::IParticleContainer > m_tausHandle
the electron container to use
Definition: MetMakerAlg.h:111
CP::SysListHandle
a class managing the property to configure the list of systematics to process
Definition: SysListHandle.h:33
CP::MetMakerAlg::m_photonsSelection
SysReadSelectionHandle m_photonsSelection
the selection on the input photons
Definition: MetMakerAlg.h:88
CP::SysWriteHandle
a data handle for writing systematics varied input data
Definition: SysWriteHandle.h:31
SysListHandle.h
CP::MetMakerAlg::m_softTermKey
Gaudi::Property< std::string > m_softTermKey
the soft term key
Definition: MetMakerAlg.h:144
CP::MetMakerAlg::m_muonsHandle
SysReadHandle< xAOD::IParticleContainer > m_muonsHandle
the muon container to use
Definition: MetMakerAlg.h:97
CP::MetMakerAlg::m_electronsHandle
SysReadHandle< xAOD::IParticleContainer > m_electronsHandle
the electron container to use
Definition: MetMakerAlg.h:69
IMETMaker.h
CP::MetMakerAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: MetMakerAlg.h:65
IMETSystematicsTool.h
CP::SysReadHandle
a data handle for reading systematics varied input data
Definition: SysReadHandle.h:32
CP::MetMakerAlg::m_electronsSelection
SysReadSelectionHandle m_electronsSelection
the selection on the input electrons
Definition: MetMakerAlg.h:74
CP::MetMakerAlg::m_jetsKey
Gaudi::Property< std::string > m_jetsKey
the key for m_jetsHandle
Definition: MetMakerAlg.h:140
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:49
EL::AnaAlgorithm::AnaAlgorithm
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Definition: AnaAlgorithm.cxx:40
SysReadHandle.h
CP::MetMakerAlg::m_metAssociationName
Gaudi::Property< std::string > m_metAssociationName
the name of the MissingETAssociationMap
Definition: MetMakerAlg.h:61
SysWriteHandle.h
SysHandleArray.h
AnaAlgorithm.h
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition: AnaAlgorithm.h:73
CP::MetMakerAlg::m_systematicsTool
ToolHandle< IMETSystematicsTool > m_systematicsTool
the systematics tool
Definition: MetMakerAlg.h:53
CP::MetMakerAlg::m_metCoreName
Gaudi::Property< std::string > m_metCoreName
the name of the core MissingETContainer
Definition: MetMakerAlg.h:57
CP::MetMakerAlg::m_invisSelections
SysReadSelectionHandleArray m_invisSelections
the selection on the invisible container
Definition: MetMakerAlg.h:135
CP::MetMakerAlg::m_photonsHandle
SysReadHandle< xAOD::IParticleContainer > m_photonsHandle
the photon container to use
Definition: MetMakerAlg.h:83
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
MissingETAuxContainer.h
CP::MetMakerAlg::initialize
StatusCode initialize() override
Definition: MetMakerAlg.cxx:28
CP::MetMakerAlg::m_jetsHandle
SysReadHandle< xAOD::JetContainer > m_jetsHandle
the input jet collection we run on
Definition: MetMakerAlg.h:125
CP::MetMakerAlg::m_metHandle
SysWriteHandle< xAOD::MissingETContainer, xAOD::MissingETAuxContainer > m_metHandle
the met collection we run on
Definition: MetMakerAlg.h:156
CP::MetMakerAlg::m_doTrackMet
Gaudi::Property< bool > m_doTrackMet
whether to use track-met instead of jet-met
Definition: MetMakerAlg.h:148
CP::MetMakerAlg::m_tausSelection
SysReadSelectionHandle m_tausSelection
the selection on the input taus
Definition: MetMakerAlg.h:116
columnar::final
CM final
Definition: ColumnAccessor.h:106
CP::MetMakerAlg::m_muonsSelection
SysReadSelectionHandle m_muonsSelection
the selection on the input muons
Definition: MetMakerAlg.h:102
SysReadSelectionHandle.h
CP::MetMakerAlg::m_electronsKey
Gaudi::Property< std::string > m_electronsKey
the key for m_electronsHandle
Definition: MetMakerAlg.h:79
CP::MetMakerAlg::m_muonsKey
Gaudi::Property< std::string > m_muonsKey
the key for m_muonsHandle
Definition: MetMakerAlg.h:107
CP::MetMakerAlg::m_doJetJVT
Gaudi::Property< bool > m_doJetJVT
whether to do jet JVT
Definition: MetMakerAlg.h:152
CP::SysReadSelectionHandle
a data handle for reading systematically varied selection properties from objects
Definition: SysReadSelectionHandle.h:32
CP::MetMakerAlg::execute
StatusCode execute() override
Definition: MetMakerAlg.cxx:68
CP::SysHandleArray
Vector-like class for systematic handles which interact with decorations.
Definition: SysHandleArray.h:26
MissingETContainer.h
CP::MetMakerAlg::m_invisHandles
SysHandleArray< SysReadHandle< xAOD::IParticleContainer > > m_invisHandles
the container to be marked as invisible particles
Definition: MetMakerAlg.h:130
CP::MetMakerAlg::m_makerTool
ToolHandle< IMETMaker > m_makerTool
the maker tool
Definition: MetMakerAlg.h:49
CP::MetMakerAlg::m_tausKey
Gaudi::Property< std::string > m_tausKey
the key for m_tausHandle
Definition: MetMakerAlg.h:121
CP::MetMakerAlg::m_photonsKey
Gaudi::Property< std::string > m_photonsKey
the key for m_photonsHandle
Definition: MetMakerAlg.h:93