ATLAS Offline Software
Loading...
Searching...
No Matches
IjFEXForwardElecAlgo.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4//***************************************************************************
5// Interface for jFEXForwardElecAlgo - Algorithm for Forward Electron Algorithm in jFEX
6// -------------------
7// begin : 16 11 2021
8// email : Sergi.Rodriguez@cern.ch
9//***************************************************************************
10
11#ifndef IjFEXForwardElecAlgo_H
12#define IjFEXForwardElecAlgo_H
13
14#include "GaudiKernel/IAlgTool.h"
18
19
20namespace LVL1 {
21
22static const InterfaceID IID_IjFEXForwardElecAlgo("LVL1::IjFEXForwardElecAlgo",1, 0);
23
24class IjFEXForwardElecAlgo : virtual public IAlgTool {
25 public:
26 static const InterfaceID& interfaceID ( ) ;
27 virtual StatusCode safetyTest() = 0;
28 virtual StatusCode reset() =0;
30
31 //virtual std::array<float,4> getEtaPhiEt(uint) =0;
32 virtual std::array<float,2> getEtaPhi(uint) =0;
33 virtual std::array<int,2> getEtEmHad(uint) const = 0;
34 virtual std::unordered_map<uint, jFEXForwardElecInfo> calculateEDM() =0;
35 virtual void setFPGAEnergy(std::unordered_map<int,std::vector<int> >,std::unordered_map<int,std::vector<int> > ) =0;
36
37 private:
38
39};
40inline const InterfaceID& LVL1::IjFEXForwardElecAlgo::interfaceID()
41{
43}
44
45}
46#endif
47
unsigned int uint
static constexpr int jFEX_wide_algoSpace_width
static constexpr int jFEX_algoSpace_height
virtual void setFPGAEnergy(std::unordered_map< int, std::vector< int > >, std::unordered_map< int, std::vector< int > >)=0
virtual std::array< int, 2 > getEtEmHad(uint) const =0
virtual void setup(int inputTable[FEXAlgoSpaceDefs::jFEX_algoSpace_height][FEXAlgoSpaceDefs::jFEX_wide_algoSpace_width], int, int)=0
virtual std::array< float, 2 > getEtaPhi(uint)=0
static const InterfaceID & interfaceID()
virtual StatusCode reset()=0
virtual std::unordered_map< uint, jFEXForwardElecInfo > calculateEDM()=0
virtual StatusCode safetyTest()=0
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
static const InterfaceID IID_IjFEXForwardElecAlgo("LVL1::IjFEXForwardElecAlgo", 1, 0)