ATLAS Offline Software
Loading...
Searching...
No Matches
jFEXsumETAlgo.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4//***************************************************************************
5// jFEXsumETAlgo - Algorithm for Sum Et Algorithm in jFEX
6// -------------------
7// begin : 12 05 2021
8// email : Sergi.Rodriguez@cern.ch
9//***************************************************************************
10
11#ifndef jFEXsumETAlgo_H
12#define jFEXsumETAlgo_H
13
14
19
20
21namespace LVL1 {
22
23 class jFEXsumETAlgo : public AthAlgTool, virtual public IjFEXsumETAlgo{
24
25 public:
27 jFEXsumETAlgo(const std::string& type, const std::string& name, const IInterface* parent);
28
30 virtual StatusCode initialize() override;
31 virtual StatusCode reset() override;
32
34 virtual ~jFEXsumETAlgo();
35
36 virtual StatusCode safetyTest() override;
39 virtual int getTTowerET(unsigned int TTID=0) const override; // arguments 2,2 to get the central TT from m_TTwindow[5][5]
40
41 virtual void buildBarrelSumET() override;
42 virtual void buildFWDSumET() override;
43 virtual std::tuple<int, bool> getETlowerEta(uint bin) const override;
44 virtual std::tuple<int, bool> getETupperEta(uint bin) const override;
45 virtual void setFPGAEnergy(std::unordered_map<int,std::vector<int> > et_map) override;
46
47protected:
48
49 private:
50 SG::ReadHandleKey<LVL1::jTowerContainer> m_jTowerContainerKey {this, "MyjTowers", "jTowerContainer", "Input container for jTowers"};
52 std::vector<std::vector<int>> m_FPGA;
53 std::vector<std::vector<int>> m_FPGA_phi02;
54 std::vector<std::vector<int>> m_FPGA_fcal;
55 std::vector<int> m_SumET;
56 std::vector<bool> m_SumETSat;
57
58 std::unordered_map<int,std::vector<int> > m_map_Etvalues;
59
60 bool getTTowerSat(unsigned int TTID );
61
62 };
63
64
65
66}//end of namespace
67
68
69//CLASS_DEF( LVL1::jFEXsumETAlgo , 121222945 , 1 )
70
71#endif
unsigned int uint
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
static constexpr int jFEX_wide_algoSpace_width
static constexpr int jFEX_thin_algoSpace_width
static constexpr int jFEX_algoSpace_height
std::unordered_map< int, std::vector< int > > m_map_Etvalues
std::vector< bool > m_SumETSat
virtual StatusCode safetyTest() override
virtual std::tuple< int, bool > getETupperEta(uint bin) const override
virtual ~jFEXsumETAlgo()
Destructor.
std::vector< std::vector< int > > m_FPGA_fcal
virtual StatusCode reset() override
virtual void setFPGAEnergy(std::unordered_map< int, std::vector< int > > et_map) override
virtual void buildBarrelSumET() override
jFEXsumETAlgo(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
virtual void buildFWDSumET() override
std::vector< std::vector< int > > m_FPGA_phi02
std::vector< int > m_SumET
virtual void setup(int FPGA[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_thin_algoSpace_width]) override
std::vector< std::vector< int > > m_FPGA
virtual StatusCode initialize() override
standard Athena-Algorithm method
SG::ReadHandleKey< LVL1::jTowerContainer > m_jTowerContainerKey
virtual int getTTowerET(unsigned int TTID=0) const override
virtual std::tuple< int, bool > getETlowerEta(uint bin) const override
bool getTTowerSat(unsigned int TTID)
SG::ReadHandle< jTowerContainer > m_jTowerContainer
Property holding a SG store/key/clid from which a ReadHandle is made.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...