ATLAS Offline Software
IeFEXTOBEtTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //***************************************************************************
6 // IeFEXTOBEtTool.h -
7 // -------------------
8 // begin : 13 12 2022
9 // email : Alan.Watson@CERN.CH
10 // ***************************************************************************/
11 
12 #ifndef IeFEXTOBEtTool_H
13 #define IeFEXTOBEtTool_H
14 
15 
16 #include "GaudiKernel/IAlgTool.h"
17 
18 namespace LVL1 {
19 
20 /*
21 Interface definition for eFEXTOBEtTool
22 */
23 
24  static const InterfaceID IID_IeFEXTOBEtTool("LVL1::IeFEXTOBEtTool", 1, 0);
25 
26  class IeFEXTOBEtTool : virtual public IAlgTool {
27  public:
28  static const InterfaceID& interfaceID( ) ;
29 
31  virtual StatusCode getegSums(float etaTOB, float phiTOB, int seed, int UnD,
32  std::vector<unsigned int> &ClusterCellETs,
33  std::vector<unsigned int> &RetaSums,
34  std::vector<unsigned int> &RhadSums,
35  std::vector<unsigned int> &WstotSums) = 0;
36 
37  virtual StatusCode getTOBCellEnergies(float etaTOB, float phiTOB, std::vector<unsigned int> &ClusterCellETs) = 0;
38 
39 
41  virtual StatusCode gettauSums(float eta, float phi, int seed, int UnD,
42  std::vector<unsigned int> &RcoreSums,
43  std::vector<unsigned int> &RemSums) = 0;
44 
46  virtual unsigned int eTowerID(float eta, float phi) const = 0;
47 
49  virtual void location(float etaTOB, float phiTOB, int& eFEX, int& FPGA, int& fpgaEta) = 0;
50 
51 
52 
53  private:
54 
55  };
56 
57  inline const InterfaceID& LVL1::IeFEXTOBEtTool::interfaceID()
58  {
59  return IID_IeFEXTOBEtTool;
60  }
61 
62 } // end of namespace
63 
64 #endif
65 
LVL1::IeFEXTOBEtTool::location
virtual void location(float etaTOB, float phiTOB, int &eFEX, int &FPGA, int &fpgaEta)=0
Tool to find eFEX and FPGA numbers and eta index of a TOB within the FPGA.
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::IeFEXTOBEtTool
Definition: IeFEXTOBEtTool.h:26
LVL1::IeFEXTOBEtTool::getegSums
virtual StatusCode getegSums(float etaTOB, float phiTOB, int seed, int UnD, std::vector< unsigned int > &ClusterCellETs, std::vector< unsigned int > &RetaSums, std::vector< unsigned int > &RhadSums, std::vector< unsigned int > &WstotSums)=0
Tool to calculate eEM discriminant sums.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LVL1::IeFEXTOBEtTool::interfaceID
static const InterfaceID & interfaceID()
Definition: IeFEXTOBEtTool.h:57
LVL1::IeFEXTOBEtTool::getTOBCellEnergies
virtual StatusCode getTOBCellEnergies(float etaTOB, float phiTOB, std::vector< unsigned int > &ClusterCellETs)=0
LVL1::IeFEXTOBEtTool::gettauSums
virtual StatusCode gettauSums(float eta, float phi, int seed, int UnD, std::vector< unsigned int > &RcoreSums, std::vector< unsigned int > &RemSums)=0
Tool to calculate eTaudiscriminant sums.
FEXReprocessingRun3.eFEX
eFEX
Definition: FEXReprocessingRun3.py:114
LVL1::IeFEXTOBEtTool::eTowerID
virtual unsigned int eTowerID(float eta, float phi) const =0
Tool to find eTower identifier from an eta, phi coordinate pair.
LVL1::gFEX::FPGA
FPGA
Definition: GTowerHelpers.h:17