ATLAS Offline Software
METCut.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 /*********************************
5  * METCut.cpp
6  * Created by Joerg Stelzer on 11/16/12.
7  *
8  * @brief algorithm calculates the phi-distance between one or two lists and applies delta-phi criteria
9  *
10  * @param NumberLeading
11 **********************************/
12 
13 #include <cmath>
14 
16 #include "L1TopoCommon/Exception.h"
18 
19 #include "L1TopoEvent/MetTOB.h"
20 
22 
23 
24 TCS::METCut::METCut(const std::string & name) : DecisionAlg(name)
25 {
26  defineParameter("XE",0);
27  setNumberOutputBits(1);
28 }
29 
31 
32 
35  p_XE = parameter("XE").value();
36  TRG_MSG_INFO("XE : " << p_XE);
37  TRG_MSG_INFO("nummber output : " << numberOutputBits());
38  return StatusCode::SUCCESS;
39 }
40 
41 
42 
44 TCS::METCut::processBitCorrect( const std::vector<TCS::TOBArray const *> & input,
45  const std::vector<TCS::TOBArray *> & output,
46  Decision & decision )
47 
48 {
49  return process(input,output,decision);
50 }
51 
52 
54 TCS::METCut::process( const std::vector<TCS::TOBArray const *> & input,
55  const std::vector<TCS::TOBArray *> & /*output*/,
56  Decision & decision )
57 {
58 
59  if(input.size()!=1) {
60  TCS_EXCEPTION("METCut alg must have exactly one input list (MET list), but got " << input.size());
61  }
62 
63  if (input[0]->size()!=1) {
64  TCS_EXCEPTION("METCut alg needs input list with a single MET TOB, got " << input[0]->size());
65  }
66 
67  const TCS::GenericTOB & met = (*input[0])[0];
68 
69  TRG_MSG_DEBUG("Comparing MET " << met.Et() << " with cut " << p_XE << ". " << (met.Et() >= p_XE?"Pass":"Fail"));
70 
71 
72  decision.setBit(0, met.Et() >= p_XE );
73 
75 }
METCut.h
TCS::StatusCode::SUCCESS
@ SUCCESS
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:17
TCS::METCut::initialize
virtual StatusCode initialize()
Definition: METCut.cxx:34
TCS::METCut::processBitCorrect
virtual StatusCode processBitCorrect(const std::vector< TCS::TOBArray const * > &input, const std::vector< TCS::TOBArray * > &output, Decision &decison)
Definition: METCut.cxx:44
Decision.h
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
SUSY_SimplifiedModel_PostInclude.process
string process
Definition: SUSY_SimplifiedModel_PostInclude.py:42
TCS::DecisionAlg
Definition: Trigger/TrigT1/L1Topo/L1TopoInterfaces/L1TopoInterfaces/DecisionAlg.h:22
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
TCS::Decision::setBit
void setBit(unsigned int index, bool value)
Definition: L1Topo/L1TopoInterfaces/Root/Decision.cxx:12
met
Definition: IMETSignificance.h:24
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
TCS_EXCEPTION
#define TCS_EXCEPTION(MSG)
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/Exception.h:14
TCS::Decision
Definition: L1Topo/L1TopoInterfaces/L1TopoInterfaces/Decision.h:19
TRG_MSG_INFO
#define TRG_MSG_INFO(x)
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStreamMacros.h:27
TCS::METCut
Definition: METCut.h:16
merge.output
output
Definition: merge.py:17
TCS::GenericTOB
Definition: GenericTOB.h:35
REGISTER_ALG_TCS
#define REGISTER_ALG_TCS(CLASS)
Definition: AlgFactory.h:62
PhPy8EG_A14_ttbar_hdamp258p75_nonallhad_control.METCut
METCut
Definition: PhPy8EG_A14_ttbar_hdamp258p75_nonallhad_control.py:61
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TCS::METCut::process
virtual StatusCode process(const std::vector< TCS::TOBArray const * > &input, const std::vector< TCS::TOBArray * > &output, Decision &decison)
Definition: METCut.cxx:54
TCS
Definition: Global/GlobalSimulation/src/IO/Decision.h:18
Exception.h
MetTOB.h
TCS::METCut::~METCut
virtual ~METCut()
Definition: METCut.cxx:30
TRG_MSG_DEBUG
#define TRG_MSG_DEBUG(x)
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStreamMacros.h:25
TCS::StatusCode
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:15