ATLAS Offline Software
Loading...
Searching...
No Matches
TrigMissingETHypoTool.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
5// ********************************************************************
6//
7// NAME: TrigMissingETHypoTool.cxx
8// PACKAGE: Trigger/TrigHypothesis/TrigMissingET
9//
10//
11// ********************************************************************
12
14
15
17 const std::string& name,
18 const IInterface* parent):
19 base_class(type, name, parent),
20 m_decisionId(HLT::Identifier::fromToolName(name)) {}
21
22
24
25
27 ATH_MSG_DEBUG("Initializing TrigMissingETHypoTool");
28 ATH_MSG_DEBUG("MET threshold set to " << m_metThreshold );
29 return StatusCode::SUCCESS;
30}
31
33 return StatusCode::SUCCESS;
34}
35
36StatusCode TrigMissingETHypoTool::decide(const xAOD::TrigMissingETContainer* metContainer, bool& pass) const
37{
38 ATH_MSG_DEBUG("Executing decide() of " << name());
39 float ex = (*metContainer)[0]->ex();
40 float ey = (*metContainer)[0]->ey();
41 float met = std::hypot(ex,ey)/1000.;
42 pass = met > m_metThreshold;
43
44 ATH_MSG_VERBOSE("in " << name() << ": MET = " << met);
45 if (pass)
46 ATH_MSG_VERBOSE("Event passes the " << m_metThreshold << " GeV cut");
47 else
48 ATH_MSG_VERBOSE("Event fails the " << m_metThreshold << " GeV cut");
49
50 return StatusCode::SUCCESS;
51
52}
53
57
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_DEBUG(x)
virtual StatusCode finalize() override
virtual StatusCode decide(const xAOD::TrigMissingETContainer *, bool &pass) const override
virtual StatusCode initialize() override
virtual const HLT::Identifier & getId() const override
Gaudi::Property< float > m_metThreshold
TrigMissingETHypoTool(const std::string &type, const std::string &name, const IInterface *parent)
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
TrigMissingETContainer_v1 TrigMissingETContainer
DataVector of TrigMissingET - the current version.