ATLAS Offline Software
TrigEgammaPrecisionElectronHypoTool.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_TRIGPRECISIONELECTRONPRECISIONHYPOTOOLINC_H
5 #define TRIGEGAMMAHYPO_TRIGPRECISIONELECTRONPRECISIONHYPOTOOLINC_H 1
6 
14 
20 class TrigEgammaPrecisionElectronHypoTool : public extends<AthAlgTool, ITrigEgammaPrecisionElectronHypoTool> {
21  public:
22  TrigEgammaPrecisionElectronHypoTool( const std::string& type,
23  const std::string& name,
24  const IInterface* parent );
25 
26  virtual StatusCode initialize() override;
27 
28  virtual StatusCode decide( std::vector<ITrigEgammaPrecisionElectronHypoTool::ElectronInfo>& input) const override;
29  virtual bool decide( const ITrigEgammaPrecisionElectronHypoTool::ElectronInfo& i) const override;
30 
31  private:
33 
34  //Calorimeter electron ID cuts
35  Gaudi::Property< std::vector<float> > m_etabin { this, "EtaBins", {} , "Bins of eta" };
36  Gaudi::Property< std::vector<float> > m_eTthr { this, "ETthr", {}, "ET Threshold" };
37  Gaudi::Property< float > m_detacluster { this, "dETACLUSTERthr", 0. , "" };
38  Gaudi::Property< float > m_dphicluster { this, "dPHICLUSTERthr", 0. , "" };
39  Gaudi::Property< float > m_RelPtConeCut { this, "RelPtConeCut", -999., "Track isolation cut" };
40  Gaudi::Property< float > m_d0{ this, "d0Cut", -1., "d0 cut" };
41  Gaudi::Property<std::string> m_pidName{this,"PidName", "", "Pid name"};
42  Gaudi::Property< bool > m_acceptAll { this, "AcceptAll", false , "accept all." };
43  Gaudi::Property< bool > m_doNoPid { this, "DoNoPid", false , "No Pid/Isolation applied" };
44  ToolHandle< GenericMonitoringTool > m_monTool { this, "MonTool", "", "Monitoring tool" };
45 
46 
47  int findCutIndex( float eta ) const;
48 
49 };
50 
51 #endif //> !TRIGEGAMMAHYPO_TRIGPRECISIONELECTRONPRECISIONHYPOTOOL_H
52 
TrigEgammaPrecisionElectronHypoTool::m_d0
Gaudi::Property< float > m_d0
Definition: TrigEgammaPrecisionElectronHypoTool.h:40
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:83
TrigEgammaPrecisionElectronHypoTool::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrigEgammaPrecisionElectronHypoTool.h:44
TrigEgammaPrecisionElectronHypoTool::initialize
virtual StatusCode initialize() override
Definition: TrigEgammaPrecisionElectronHypoTool.cxx:25
GenericMonitoringTool.h
IAsgElectronLikelihoodTool.h
TrigEgammaPrecisionElectronHypoTool::m_dphicluster
Gaudi::Property< float > m_dphicluster
Definition: TrigEgammaPrecisionElectronHypoTool.h:38
lumiFormat.i
int i
Definition: lumiFormat.py:85
TrigEgammaPrecisionElectronHypoTool
Definition: TrigEgammaPrecisionElectronHypoTool.h:20
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigEgammaPrecisionElectronHypoTool::m_RelPtConeCut
Gaudi::Property< float > m_RelPtConeCut
Definition: TrigEgammaPrecisionElectronHypoTool.h:39
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
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
TrigEgammaPrecisionElectronHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition: TrigEgammaPrecisionElectronHypoTool.h:32
TrigEgammaPrecisionElectronHypoTool::m_pidName
Gaudi::Property< std::string > m_pidName
Definition: TrigEgammaPrecisionElectronHypoTool.h:41
EventInfo.h
TrigEgammaPrecisionElectronHypoTool::findCutIndex
int findCutIndex(float eta) const
Definition: TrigEgammaPrecisionElectronHypoTool.cxx:333
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
HLTIdentifier.h
TrigEgammaPrecisionElectronHypoTool::m_acceptAll
Gaudi::Property< bool > m_acceptAll
Definition: TrigEgammaPrecisionElectronHypoTool.h:42
ITrigEgammaPrecisionElectronHypoTool.h
ReadDecorHandle.h
Handle class for reading a decoration on an object.
ITrigEgammaPrecisionElectronHypoTool::ElectronInfo
Definition: ITrigEgammaPrecisionElectronHypoTool.h:25
TrigEgammaPrecisionElectronHypoTool::m_doNoPid
Gaudi::Property< bool > m_doNoPid
Definition: TrigEgammaPrecisionElectronHypoTool.h:43
TrigEgammaPrecisionElectronHypoTool::m_detacluster
Gaudi::Property< float > m_detacluster
Definition: TrigEgammaPrecisionElectronHypoTool.h:37
TrigEgammaPrecisionElectronHypoTool::m_etabin
Gaudi::Property< std::vector< float > > m_etabin
selection variable for PRECISION electron selection:eta bins
Definition: TrigEgammaPrecisionElectronHypoTool.h:35
TrigEgammaPrecisionElectronHypoTool::m_eTthr
Gaudi::Property< std::vector< float > > m_eTthr
Definition: TrigEgammaPrecisionElectronHypoTool.h:36
TrigEgammaPrecisionElectronHypoTool::TrigEgammaPrecisionElectronHypoTool
TrigEgammaPrecisionElectronHypoTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TrigEgammaPrecisionElectronHypoTool.cxx:17
TrigEgammaPrecisionElectronHypoTool::decide
virtual StatusCode decide(std::vector< ITrigEgammaPrecisionElectronHypoTool::ElectronInfo > &input) const override