|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #ifndef jFEXForwardElecAlgo_H
13 #define jFEXForwardElecAlgo_H
48 int jfex,
int fpga )
override;
50 virtual std::unordered_map<uint, jFEXForwardElecInfo>
calculateEDM()
override;
52 std::unordered_map<
int,std::vector<int> > etmapEM,
53 std::unordered_map<
int,std::vector<int> > etmapHAD)
override;
69 Gaudi::Property<std::string>
m_IsoMapStr {
this,
"IsoMap",
"Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_iso.dat",
"Contains Trigger towers in (forward) EM layer used for isolation"};
70 Gaudi::Property<std::string>
m_Frac1MapStr {
this,
"Frac1Map",
"Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_frac.dat",
"Contains Trigger towers in FCal layer2 used for hadronic fraction 1 discriminant"};
71 Gaudi::Property<std::string>
m_Frac2MapStr {
this,
"Frac2Map",
"Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_frac2.dat",
"Contains Trigger towers in FCal layer3 used for hadronic fraction 2 discriminant"};
72 Gaudi::Property<std::string>
m_SearchGTauStr {
this,
"SearchGTauMap",
"Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchGTau.dat" ,
"Contains Trigger tower to find local max (greater than)"};
73 Gaudi::Property<std::string>
m_SearchGeTauStr {
this,
"SearchGeTauMap",
"Run3L1CaloSimulation/JetMaps/2024_04_09/jFEX_FWD_searchGeTau.dat",
"Contains Trigger tower to find local max (greater or equal than)"};
75 std::unordered_map<unsigned int, std::vector<unsigned int> >
m_SeedRingMap;
76 std::unordered_map<unsigned int, std::vector<unsigned int> >
m_1stRingMap;
77 std::unordered_map<unsigned int, std::vector<unsigned int> >
m_IsoMap;
78 std::unordered_map<unsigned int, std::vector<unsigned int> >
m_Frac1Map;
79 std::unordered_map<unsigned int, std::vector<unsigned int> >
m_Frac2Map;
90 StatusCode ReadfromFile(
const std::string& , std::unordered_map<
unsigned int, std::vector<unsigned int> >&);
SG::ReadHandle< jTowerContainer > m_jTowerContainer
bool getEMSat(unsigned int ttID)
static constexpr float m_TT_Size_phi
SG::ReadHandleKey< LVL1::jTowerContainer > m_jTowerContainerKey
Gaudi::Property< std::string > m_SearchGTauStr
StatusCode ReadfromFile(const std::string &, std::unordered_map< unsigned int, std::vector< unsigned int > > &)
float round(const float toRound, const unsigned int decimals)
std::unordered_map< int, std::vector< int > > m_map_Etvalues_EM
std::unordered_map< unsigned int, std::vector< unsigned int > > m_IsoMap
constexpr static int jFEX_algoSpace_height
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SearchGeTauMap
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
std::unordered_map< unsigned int, std::vector< unsigned int > > m_Frac2Map
std::unordered_map< int, std::vector< int > > m_map_Etvalues_HAD
std::unordered_map< unsigned int, std::vector< unsigned int > > m_Frac1Map
std::unordered_map< unsigned int, std::vector< unsigned int > > m_1stRingMap
static constexpr float m_2PI
Gaudi::Property< std::string > m_Frac1MapStr
::StatusCode StatusCode
StatusCode definition for legacy code.
constexpr static int jFEX_wide_algoSpace_width
Gaudi::Property< std::string > m_IsoMapStr
Helper class for offline supercell identifiers.
virtual void setFPGAEnergy(std::unordered_map< int, std::vector< int > > etmapEM, std::unordered_map< int, std::vector< int > > etmapHAD) override
Gaudi::Property< std::string > m_Frac2MapStr
void findAndFillNextTT(jFEXForwardElecInfo &elCluster, int neta, int nphi)
jFEXForwardElecAlgo(const std::string &type, const std::string &name, const IInterface *parent)
Constructors.
virtual StatusCode initialize() override
standard Athena-Algorithm method
virtual std::unordered_map< uint, jFEXForwardElecInfo > calculateEDM() override
virtual StatusCode safetyTest() override
Standard methods.
virtual StatusCode reset() override
virtual std::array< int, 2 > getEtEmHad(uint) override
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SearchGTauMap
int m_jFEXalgoTowerID[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width]
std::unordered_map< unsigned int, std::vector< unsigned int > > m_SeedRingMap
virtual void setup(int inputTable[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width], int jfex, int fpga) override
virtual std::array< float, 2 > getEtaPhi(uint) override
virtual ~jFEXForwardElecAlgo()
Destructor.
Gaudi::Property< std::string > m_SearchGeTauStr
constexpr int pow(int base, int exp) noexcept
macros to associate a CLID to a type
bool isValidSeed(uint seedTTID)