ATLAS Offline Software
TrigEgammaFastElectronHypoTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGEGAMMAHYPO_TrigEgammaFastElectronHypoTool_H
5 #define TRIGEGAMMAHYPO_TrigEgammaFastElectronHypoTool_H 1
6 
7 #include "Gaudi/Property.h"
8 #include "GaudiKernel/SystemOfUnits.h"
16 
17 
23 class TrigEgammaFastElectronHypoTool :public extends<AthAlgTool, ITrigEgammaFastElectronHypoTool>
24 {
25  public:
26  TrigEgammaFastElectronHypoTool( const std::string& type,
27  const std::string& name,
28  const IInterface* parent );
29 
30  virtual StatusCode initialize() override;
31 
32  virtual StatusCode decide( std::vector<ITrigEgammaFastElectronHypoTool::ElectronInfo>& input ) const override;
33 
34  virtual bool decide( const ITrigEgammaFastElectronHypoTool::ElectronInfo& i ) const override;
35 
36  private:
37 
40 
42 
43  Gaudi::Property<bool> m_acceptAll{ this, "AcceptAll", false, "Ignore selection" };
44  Gaudi::Property<bool> m_doLRT{ this, "DoLRT", false, "apply d0 cut for LRT triggers" };
45  Gaudi::Property<bool> m_doRinger{ this, "DoRinger", false, "apply NN ringer selection" };
46  Gaudi::Property<float> m_trackPt{ this, "TrackPt", 5.0*Gaudi::Units::GeV, "Track pT requirement ( separate threshold for each electron )" };
47  Gaudi::Property<float> m_caloTrackDEta{ this, "CaloTrackdETA", 0, "Delta Eta between the track and cluster" }; //loose cut
48  Gaudi::Property<float> m_caloTrackDPhi{ this, "CaloTrackdPHI", 0, "Delta Phi between track and cluster" }; //loose cut
49  Gaudi::Property<float> m_caloTrackdEoverPLow{ this, "CaloTrackdEoverPLow", 0, "Min E over Pt cut "};
50  Gaudi::Property<float> m_caloTrackdEoverPHigh{ this, "CaloTrackdEoverPHigh", 0, "Max E over pT cut" };
51  Gaudi::Property<float> m_trtRatio{ this, "TRTRatio", 0, "TRT HT ratio" };
52  Gaudi::Property<float> m_d0{ this, "d0Cut", 0, "d0 cut" };
53  Gaudi::Property<std::string> m_pidName{this,"PidName", "", "Pid name"};
54  ToolHandle<GenericMonitoringTool> m_monTool{ this, "MonTool", "", "Monitoring tool" };
55 };
56 
57 #endif //> !TRIGEGAMMAHYPO_TRIGEGAMMAFASTCALOHYPOTOOL_H
TrigEgammaFastElectronHypoTool::m_pidName
Gaudi::Property< std::string > m_pidName
Definition: TrigEgammaFastElectronHypoTool.h:53
GeV
#define GeV
Definition: PhysicsAnalysis/TauID/TauAnalysisTools/Root/HelperFunctions.cxx:17
TrigElectronContainer.h
TrigEgammaFastElectronHypoTool::m_acceptAll
Gaudi::Property< bool > m_acceptAll
Definition: TrigEgammaFastElectronHypoTool.h:43
TrigEgammaFastElectronHypoTool
Definition: TrigEgammaFastElectronHypoTool.h:24
ITrigEgammaFastElectronHypoTool.h
TrigEMCluster.h
TrigEgammaFastElectronHypoTool::decide_ringer
bool decide_ringer(const ITrigEgammaFastElectronHypoTool::ElectronInfo &i) const
Definition: TrigEgammaFastElectronHypoTool.cxx:190
TrigEgammaFastElectronHypoTool::initialize
virtual StatusCode initialize() override
Definition: TrigEgammaFastElectronHypoTool.cxx:24
TrigEgammaFastElectronHypoTool::m_doLRT
Gaudi::Property< bool > m_doLRT
Definition: TrigEgammaFastElectronHypoTool.h:44
TrigCompositeUtils.h
GenericMonitoringTool.h
TrigEgammaFastElectronHypoTool::TrigEgammaFastElectronHypoTool
TrigEgammaFastElectronHypoTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TrigEgammaFastElectronHypoTool.cxx:14
TrigEgammaFastElectronHypoTool::m_trtRatio
Gaudi::Property< float > m_trtRatio
Definition: TrigEgammaFastElectronHypoTool.h:51
lumiFormat.i
int i
Definition: lumiFormat.py:85
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
HLT::Identifier
Definition: TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:20
TrigEgammaFastElectronHypoTool::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrigEgammaFastElectronHypoTool.h:54
TrigEgammaFastElectronHypoTool::decide_cb
bool decide_cb(const ITrigEgammaFastElectronHypoTool::ElectronInfo &i) const
Definition: TrigEgammaFastElectronHypoTool.cxx:68
TrigEgammaFastElectronHypoTool::decide
virtual StatusCode decide(std::vector< ITrigEgammaFastElectronHypoTool::ElectronInfo > &input) const override
Definition: TrigEgammaFastElectronHypoTool.cxx:48
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
TrigEgammaFastElectronHypoTool::m_doRinger
Gaudi::Property< bool > m_doRinger
Definition: TrigEgammaFastElectronHypoTool.h:45
TrigEgammaFastElectronHypoTool::m_caloTrackdEoverPHigh
Gaudi::Property< float > m_caloTrackdEoverPHigh
Definition: TrigEgammaFastElectronHypoTool.h:50
ITrigEgammaFastElectronHypoTool::ElectronInfo
Definition: ITrigEgammaFastElectronHypoTool.h:31
TrigEgammaFastElectronHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition: TrigEgammaFastElectronHypoTool.h:41
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
HLTIdentifier.h
TrigEgammaFastElectronHypoTool::m_d0
Gaudi::Property< float > m_d0
Definition: TrigEgammaFastElectronHypoTool.h:52
TrigEgammaFastElectronHypoTool::m_caloTrackDEta
Gaudi::Property< float > m_caloTrackDEta
Definition: TrigEgammaFastElectronHypoTool.h:47
TrigEgammaFastElectronHypoTool::m_caloTrackDPhi
Gaudi::Property< float > m_caloTrackDPhi
Definition: TrigEgammaFastElectronHypoTool.h:48
TrigEgammaFastElectronHypoTool::m_caloTrackdEoverPLow
Gaudi::Property< float > m_caloTrackdEoverPLow
Definition: TrigEgammaFastElectronHypoTool.h:49
TrigEgammaFastElectronHypoTool::m_trackPt
Gaudi::Property< float > m_trackPt
Definition: TrigEgammaFastElectronHypoTool.h:46