17namespace HLT {
namespace MET {
30 const EventContext& context,
38 return StatusCode::FAILURE;
42 std::array<METComponent, 4> mhtSums;
48 std::size_t componentIdx = 0;
53 mhtSums.at(componentIdx) += ijet->p4();
57 std::accumulate(mhtSums.begin(), mhtSums.end(),
METComponent{}).fillMET(
met);
59 for (std::size_t ii = 0; ii < 4; ++ii)
60 mhtSums.at(ii).fillMETComponent(ii,
met);
62 return StatusCode::SUCCESS;
#define CHECK(...)
Evaluate an expression and check for errors.
FexBase(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
StatusCode initializeBase(const std::vector< std::string > &componentNames)
Initialize the base class.
Helper struct to build up MET values before moving them into the EDM.
SG::ReadHandleKey< xAOD::JetContainer > m_jetKey
Input jets.
MHTFex(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
virtual StatusCode fillMET(xAOD::TrigMissingET &met, const EventContext &context, MonGroupBuilder &monitors) const override
Calculate and fill the output MET value.
Gaudi::Property< float > m_forwardPtCut
Forward pT cut.
bool isCentral(const xAOD::Jet *ijet) const
Is a jet central or forward.
virtual StatusCode initialize() override
Initialize the fex.
Gaudi::Property< float > m_centralPtCut
Central pT cut.
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
Jet_v1 Jet
Definition of the current "jet version".
TrigMissingET_v1 TrigMissingET
Define the most recent version of the TrigMissingET class.