ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TrigEgammaForwardPrecisionElectronHypoTool Class Reference

#include <TrigEgammaForwardPrecisionElectronHypoTool.h>

Inheritance diagram for TrigEgammaForwardPrecisionElectronHypoTool:
Collaboration diagram for TrigEgammaForwardPrecisionElectronHypoTool:

Public Member Functions

 TrigEgammaForwardPrecisionElectronHypoTool (const std::string &type, const std::string &name, const IInterface *parent)
 
virtual StatusCode initialize () override
 
virtual StatusCode decide (std::vector< ITrigEgammaForwardPrecisionElectronHypoTool::ElectronInfo > &input) const override
 
virtual bool decide (const ITrigEgammaForwardPrecisionElectronHypoTool::ElectronInfo &i) const override
 

Private Member Functions

int findCutIndex (float eta) const
 

Private Attributes

HLT::Identifier m_decisionId
 
Gaudi::Property< std::vector< float > > m_etabin { this, "EtaBins", {} , "Bins of eta" }
 selection variable for PRECISION electron selection:eta bins More...
 
Gaudi::Property< std::string > m_pidName {this,"PidName", "", "Pid name"}
 
ToolHandle< GenericMonitoringToolm_monTool { this, "MonTool", "", "Monitoring tool" }
 

Detailed Description

Definition at line 19 of file TrigEgammaForwardPrecisionElectronHypoTool.h.

Constructor & Destructor Documentation

◆ TrigEgammaForwardPrecisionElectronHypoTool()

TrigEgammaForwardPrecisionElectronHypoTool::TrigEgammaForwardPrecisionElectronHypoTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 16 of file TrigEgammaForwardPrecisionElectronHypoTool.cxx.

19  : base_class( type, name, parent ),
21 }

Member Function Documentation

◆ decide() [1/2]

bool TrigEgammaForwardPrecisionElectronHypoTool::decide ( const ITrigEgammaForwardPrecisionElectronHypoTool::ElectronInfo i) const
overridevirtual

Definition at line 37 of file TrigEgammaForwardPrecisionElectronHypoTool.cxx.

37  {
38 
39  bool pass = true;
40 
41  // Reach this point successfully
42  ATH_MSG_DEBUG( "pass = " << pass );
43 
44  return pass;
45 }

◆ decide() [2/2]

virtual StatusCode TrigEgammaForwardPrecisionElectronHypoTool::decide ( std::vector< ITrigEgammaForwardPrecisionElectronHypoTool::ElectronInfo > &  input) const
overridevirtual

◆ findCutIndex()

int TrigEgammaForwardPrecisionElectronHypoTool::findCutIndex ( float  eta) const
private

Definition at line 49 of file TrigEgammaForwardPrecisionElectronHypoTool.cxx.

49  {
50  const float absEta = std::abs(eta);
51  auto binIterator = std::adjacent_find( m_etabin.begin(), m_etabin.end(), [=](float left, float right){ return left < absEta and absEta < right; } );
52  if ( binIterator == m_etabin.end() ) {
53  return -1;
54  }
55  return binIterator - m_etabin.begin();
56 }

◆ initialize()

StatusCode TrigEgammaForwardPrecisionElectronHypoTool::initialize ( )
overridevirtual

Definition at line 24 of file TrigEgammaForwardPrecisionElectronHypoTool.cxx.

25 {
26  ATH_MSG_DEBUG( "Initialization completed successfully" );
27 
28  ATH_MSG_DEBUG( "Tool configured for chain/id: " << m_decisionId );
29 
30  if ( not m_monTool.name().empty() )
31  CHECK( m_monTool.retrieve() );
32 
33  return StatusCode::SUCCESS;
34 }

Member Data Documentation

◆ m_decisionId

HLT::Identifier TrigEgammaForwardPrecisionElectronHypoTool::m_decisionId
private

Definition at line 31 of file TrigEgammaForwardPrecisionElectronHypoTool.h.

◆ m_etabin

Gaudi::Property< std::vector<float> > TrigEgammaForwardPrecisionElectronHypoTool::m_etabin { this, "EtaBins", {} , "Bins of eta" }
private

selection variable for PRECISION electron selection:eta bins

Definition at line 33 of file TrigEgammaForwardPrecisionElectronHypoTool.h.

◆ m_monTool

ToolHandle< GenericMonitoringTool > TrigEgammaForwardPrecisionElectronHypoTool::m_monTool { this, "MonTool", "", "Monitoring tool" }
private

Definition at line 35 of file TrigEgammaForwardPrecisionElectronHypoTool.h.

◆ m_pidName

Gaudi::Property<std::string> TrigEgammaForwardPrecisionElectronHypoTool::m_pidName {this,"PidName", "", "Pid name"}
private

Definition at line 34 of file TrigEgammaForwardPrecisionElectronHypoTool.h.


The documentation for this class was generated from the following files:
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
HLT::Identifier::fromToolName
static HLT::Identifier fromToolName(const std::string &tname)
Definition: HLTIdentifier.cxx:31
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
TrigEgammaForwardPrecisionElectronHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition: TrigEgammaForwardPrecisionElectronHypoTool.h:31
test_pyathena.parent
parent
Definition: test_pyathena.py:15
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:422
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TrigEgammaForwardPrecisionElectronHypoTool::m_etabin
Gaudi::Property< std::vector< float > > m_etabin
selection variable for PRECISION electron selection:eta bins
Definition: TrigEgammaForwardPrecisionElectronHypoTool.h:33
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TauGNNUtils::Variables::absEta
bool absEta(const xAOD::TauJet &tau, double &out)
Definition: TauGNNUtils.cxx:232
TrigEgammaForwardPrecisionElectronHypoTool::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrigEgammaForwardPrecisionElectronHypoTool.h:35