28 StatusCode MetMakerAlg ::
46 <<
") doesn't match number of invisible handles (" <<
m_invisHandles.size() <<
")");
47 return StatusCode::FAILURE;
67 return StatusCode::SUCCESS;
72 StatusCode MetMakerAlg ::
73 execute (
const EventContext& ctx)
86 auto met = std::make_unique<xAOD::MissingETContainer> ();
87 auto aux = std::make_unique<xAOD::MissingETAuxContainer> ();
88 met->setStore (aux.get());
101 if (invisSelected.size() > 0)
106 auto processParticles =
110 const std::string& term) -> StatusCode {
115 ANA_MSG_ERROR (
"evaluateNNMET requires a container for every "
116 "hard-object type, but the handle for term \""
117 << term <<
"\" is not configured");
118 return StatusCode::FAILURE;
120 return StatusCode::SUCCESS;
130 return StatusCode::SUCCESS;
176 if (!metTerm)
continue;
188 if (softTerm ==
nullptr)
191 return StatusCode::FAILURE;
207 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
DataVector adapter that acts like it holds const pointers.
Helper class to provide type-safe access to aux data.
ServiceHandle< StoreGateSvc > & evtStore()
Gaudi::Property< bool > m_doTrackMet
whether to use track-met instead of jet-met
SysReadSelectionHandle m_muonsSelection
the selection on the input muons
SysReadHandle< xAOD::IParticleContainer > m_tausHandle
the electron container to use
SysWriteHandle< xAOD::MissingETContainer, xAOD::MissingETAuxContainer > m_metHandle
the met collection we run on
SysReadHandle< xAOD::IParticleContainer > m_electronsHandle
the electron container to use
Gaudi::Property< std::vector< std::string > > m_invisSelectionKeys
the selection on the invisible container
Gaudi::Property< std::string > m_electronsKey
the key for m_electronsHandle
Gaudi::Property< std::string > m_photonsKey
the key for m_photonsHandle
ToolHandle< IMETSystematicsTool > m_systematicsTool
the systematics tool
Gaudi::Property< std::string > m_softTermKey
the soft term key
SysReadSelectionHandle m_photonsSelection
the selection on the input photons
std::vector< SysReadSelectionHandle > m_invisSelections
ToolHandle< IMETMaker > m_makerTool
the maker tool
SysHandleArray< SysReadHandle< xAOD::IParticleContainer > > m_invisHandles
the container to be marked as invisible particles
Gaudi::Property< std::string > m_metCoreName
the name of the core MissingETContainer
Gaudi::Property< std::string > m_tausKey
the key for m_tausHandle
Gaudi::Property< std::string > m_finalKey
the name of the total MET term written by evaluateNNMET
Gaudi::Property< std::string > m_jetsKey
the key for m_jetsHandle
SysReadHandle< xAOD::IParticleContainer > m_photonsHandle
the photon container to use
Gaudi::Property< bool > m_doJetJVT
whether to do jet JVT
SysReadHandle< xAOD::IParticleContainer > m_muonsHandle
the muon container to use
SysReadSelectionHandle m_tausSelection
the selection on the input taus
Gaudi::Property< bool > m_switchTauMuonOrder
whether to switch order of taus and muons
Gaudi::Property< std::string > m_metAssociationName
the name of the MissingETAssociationMap
Gaudi::Property< bool > m_evaluateNNMET
whether to run NN-based MET inference (evaluateNNMET) after rebuildJetMET
SysReadSelectionHandle m_electronsSelection
the selection on the input electrons
SysReadHandle< xAOD::JetContainer > m_jetsHandle
the input jet collection we run on
Gaudi::Property< std::string > m_muonsKey
the key for m_muonsHandle
SysListHandle m_systematicsList
the systematics list we run
a data handle for reading systematics varied input data
a data handle for reading systematically varied selection properties from objects
DataVector adapter that acts like it holds const pointers.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
const DV * asDataVector() const
Return a pointer to this object, as a const DataVector.
void handle(const Incident &inc)
receive the given incident
Class providing the definition of the 4-vector interface.
void resetObjSelectionFlags()
float phi() const
Returns .
const std::string selection
Select isolated Photons, Electrons and Muons.
static const SG::Decorator< float > met_phi_dec("phi")
static const SG::Decorator< float > met_met_dec("met")
SG::Decorator< T, ALLOC > Decorator
Helper class to provide type-safe access to aux data, specialized for JaggedVecElt.
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
ObjectType
Type of objects that have a representation in the xAOD EDM.
@ Photon
The object is a photon.
@ Muon
The object is a muon.
@ Electron
The object is an electron.
@ Tau
The object is a tau (jet).
MissingET_v1 MissingET
Version control by type defintion.
MissingETContainer_v1 MissingETContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
MissingETAssociationMap_v1 MissingETAssociationMap
Version control by type defintion.
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.