ATLAS Offline Software
TrigEgammaEmulationPrecisionElectronHypoTool.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3  * */
4 
5 
6 #ifndef TrigEgammaEmulationPrecisionElectronHypoTool_h
7 #define TrigEgammaEmulationPrecisionElectronHypoTool_h
8 
9 
10 #include "AsgTools/AsgTool.h"
14 
15 
16 namespace Trig{
17 
18 
21  {
22 
24 
25  public:
26 
27  TrigEgammaEmulationPrecisionElectronHypoTool(const std::string& myname);
29 
30 
31  virtual bool emulate( const TrigData &input, bool &pass) const override;
32 
33  virtual StatusCode initialize() override;
34 
35  private:
36 
37  bool decide( const Trig::TrigData &input, const xAOD::Electron *el) const;
38  int findCutIndex( float eta ) const;
39 
40  Gaudi::Property< std::string > m_pidName { this, "PidName", "" };
41  Gaudi::Property< float > m_detacluster { this, "dETACLUSTERthr", 0. , "" };
42  Gaudi::Property< float > m_dphicluster { this, "dPHICLUSTERthr", 0. , "" };
43  Gaudi::Property< float > m_RelPtConeCut { this, "RelPtConeCut", -999., "Track isolation cut" };
44  Gaudi::Property< std::vector<float> > m_etabin { this, "EtaBins", {} , "Bins of eta" };
45  Gaudi::Property< std::vector<float> > m_eTthr { this, "ETthr", {}, "ET Threshold" };
46  Gaudi::Property<float> m_d0{ this, "d0Cut", -1, "d0 cut" };
47 
48  Gaudi::Property<bool> m_acceptAll{ this, "AcceptAll", false, "Accept all events" };
49  Gaudi::Property< bool > m_doNoPid { this, "DoNoPid", false , "No Pid/Isolation applied" };
50 
51 
52 
53 
54 
55  };
56 
57 
58 }//namespace
59 #endif
Trig::TrigEgammaEmulationPrecisionElectronHypoTool
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:21
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::initialize
virtual StatusCode initialize() override
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.cxx:17
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_pidName
Gaudi::Property< std::string > m_pidName
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:40
Trig::ITrigEgammaEmulationBaseHypoTool
Definition: ITrigEgammaEmulationBaseHypoTool.h:20
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::findCutIndex
int findCutIndex(float eta) const
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.cxx:288
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::TrigEgammaEmulationPrecisionElectronHypoTool
TrigEgammaEmulationPrecisionElectronHypoTool(const std::string &myname)
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.cxx:9
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_doNoPid
Gaudi::Property< bool > m_doNoPid
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:49
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_acceptAll
Gaudi::Property< bool > m_acceptAll
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:48
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_etabin
Gaudi::Property< std::vector< float > > m_etabin
selection variable for PRECISION electron selection:eta bins
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:44
Trig::TrigEgammaEmulationBaseHypoTool
Definition: TrigEgammaEmulationBaseHypoTool.h:22
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::emulate
virtual bool emulate(const TrigData &input, bool &pass) const override
==========================================================================
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.cxx:25
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
plotIsoValidation.el
el
Definition: plotIsoValidation.py:197
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::decide
bool decide(const Trig::TrigData &input, const xAOD::Electron *el) const
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.cxx:54
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::~TrigEgammaEmulationPrecisionElectronHypoTool
~TrigEgammaEmulationPrecisionElectronHypoTool()=default
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_detacluster
Gaudi::Property< float > m_detacluster
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:41
xAOD::Electron_v1
Definition: Electron_v1.h:34
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_d0
Gaudi::Property< float > m_d0
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:46
TrigEgammaEmulationBaseHypoTool.h
ITrigEgammaEmulationBaseHypoTool.h
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
Trig::TrigData
Definition: TrigEgammaEmulationToolMT.h:40
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_eTthr
Gaudi::Property< std::vector< float > > m_eTthr
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:45
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_dphicluster
Gaudi::Property< float > m_dphicluster
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:42
AsgTool.h
Trig::TrigEgammaEmulationPrecisionElectronHypoTool::m_RelPtConeCut
Gaudi::Property< float > m_RelPtConeCut
Definition: TrigEgammaEmulationPrecisionElectronHypoTool.h:43
TrigEgammaEmulationToolMT.h