21 const std::string &
name,
22 const IInterface *parent)
31 ATH_MSG_ERROR(
"eFEX tau BDT json config file path not set in configuration");
32 return StatusCode::FAILURE;
46 }
catch (
const std::domain_error &ex) {
48 return StatusCode::FAILURE;
52 return StatusCode::SUCCESS;
66 std::unique_ptr<eFEXtauTOB> tob = std::make_unique<eFEXtauTOB>();
98 for (
int i = 0; i < 3; i++) {
103 for (
int i = 0; i < 3; i++) {
116 ATH_MSG_DEBUG(
"Layers not built, cannot accurately calculate Et.");
124 ATH_MSG_DEBUG(
"Layers not built, cannot calculate rHad core value");
132 ATH_MSG_DEBUG(
"Layers not built, cannot calculate rHad environment value");
142 ATH_MSG_DEBUG(
"Layers not built, cannot accurately calculate Et.");
163 const std::vector<unsigned int> &rHadThreshold,
164 const std::vector<unsigned int> &bdtThreshold,
unsigned int etThreshold,
165 unsigned int maxEtThreshold,
unsigned int bdtMinEtThreshold,
unsigned int maxEtThresholdFrac) {
166 for (
int i = 0; i < 3; i++) {
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ATH_CHECK
Evaluate an expression and check for errors.
int m_eFexalgoTowerID[3][3]
virtual unsigned int rCoreEnv() const
unsigned int m_em1cells[12][3]
SG::ReadHandleKey< LVL1::eTowerContainer > m_eTowerContainerKey
unsigned int m_hadcells[3][3]
eFEXtauAlgoBase(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
unsigned int m_em0cells[3][3]
unsigned int m_em2cells[12][3]
virtual unsigned int rCoreCore() const
virtual float getRealRCore() const
void buildLayers(int efex_id, int fpga_id, int central_eta)
unsigned int m_em3cells[3][3]
Gaudi::Property< std::string > m_bdtJsonConfigPath
eFEXtauBDTAlgo(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
unsigned int m_etThreshold
unsigned int m_maxEtThresholdFrac
std::unique_ptr< eFEXtauBDT > m_bdtAlgoImpl
virtual StatusCode initialize() override
standard Athena-Algorithm method
virtual ~eFEXtauBDTAlgo()
Destructor.
unsigned int m_bdtMinEtThreshold
unsigned int m_maxEtThreshold
virtual std::unique_ptr< eFEXtauTOB > getTauTOB() const override
virtual void setup(int inputTable[3][3], int efex_id, int fpga_id, int central_eta) override
virtual void setThresholds(const std::vector< unsigned int > &rHadThreshold, const std::vector< unsigned int > &bdtThreshold, unsigned int etThreshold, unsigned int etThresholdForRHad, unsigned int bdtMinEtThreshold, unsigned int etThresholdForRHadFrac) override
void setThresholdPointers()
virtual unsigned int getBDTScore() const override
virtual unsigned int getBDTHadFracCondition() const override
virtual bool isBDT() const override
unsigned int m_hadFracMultipliers[3]
virtual unsigned int rHadEnv() const override
virtual unsigned int getBitwiseEt() const override
virtual unsigned int getBDTCondition() const override
unsigned int m_bdtThresholds[3]
virtual unsigned int rHadCore() const override
virtual void compute() override
virtual unsigned int getEt() const override
Extra patterns decribing particle interation process.