ATLAS Offline Software
IeSuperCellTowerMapper.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 // IeSuperCellTowerMapper.h -
7 // -------------------
8 // begin : 23 03 2019
9 // email : jacob.julian.kempster@cern.ch
10 // ***************************************************************************/
11 
12 #ifndef IeSuperCellTowerMapper_H
13 #define IeSuperCellTowerMapper_H
14 
18 #include "L1CaloFEXSim/eTower.h"
23 
24 namespace LVL1 {
25 
26 /*
27 Interface definition for eSuperCellTowerMapper
28 */
29 
30  static const InterfaceID IID_IeSuperCellTowerMapper("LVL1::IeSuperCellTowerMapper", 1, 0);
31 
32  class IeSuperCellTowerMapper : virtual public IAlgTool {
33  public:
34  static const InterfaceID& interfaceID( ) ;
35 
36  virtual StatusCode AssignSuperCellsToTowers(/*eTowerContainer**/std::unique_ptr<eTowerContainer> & my_eTowerContainerRaw) const = 0;
37  virtual StatusCode AssignTriggerTowerMapper(/*eTowerContainer**/std::unique_ptr<eTowerContainer> & my_eTowerContainerRaw) const = 0;
38 
39  virtual void reset() const = 0;
40 
41  virtual int FindAndConnectTower(/*eTowerContainer**/std::unique_ptr<eTowerContainer> & my_eTowerContainerRaw,CaloSampling::CaloSample sample,const int region, int layer, const int pos_neg, const int eta_index, const int phi_index, Identifier ID, float et, int prov, bool doPrint) const = 0;
42  virtual void ConnectSuperCellToTower(/*eTowerContainer**/std::unique_ptr<eTowerContainer> & my_eTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer, bool doenergysplit) const = 0;
43  virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const = 0;
44  virtual void PrintCellSpec(const CaloSampling::CaloSample sample, int layer, const int region, const int eta_index, const int phi_index, const int pos_neg, int iETower, int iCell, int prov, Identifier ID, bool doenergysplit) const = 0;
45 
46  private:
47 
48  };
49 
50  inline const InterfaceID& LVL1::IeSuperCellTowerMapper::interfaceID()
51  {
52  return IID_IeSuperCellTowerMapper;
53  }
54 
55 } // end of namespace
56 
57 #endif
LVL1::IeSuperCellTowerMapper::FindTowerIDForSuperCell
virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const =0
et
Extra patterns decribing particle interation process.
LVL1::IeSuperCellTowerMapper
Definition: IeSuperCellTowerMapper.h:32
eTowerContainer.h
LVL1::IeSuperCellTowerMapper::interfaceID
static const InterfaceID & interfaceID()
Definition: IeSuperCellTowerMapper.h:50
ID
std::vector< Identifier > ID
Definition: CalibHitIDCheck.h:24
LVL1::IeSuperCellTowerMapper::ConnectSuperCellToTower
virtual void ConnectSuperCellToTower(std::unique_ptr< eTowerContainer > &my_eTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer, bool doenergysplit) const =0
TriggerTowerContainer.h
LVL1::IeSuperCellTowerMapper::AssignTriggerTowerMapper
virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr< eTowerContainer > &my_eTowerContainerRaw) const =0
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
AthAlgorithm.h
LVL1::IeSuperCellTowerMapper::PrintCellSpec
virtual void PrintCellSpec(const CaloSampling::CaloSample sample, int layer, const int region, const int eta_index, const int phi_index, const int pos_neg, int iETower, int iCell, int prov, Identifier ID, bool doenergysplit) const =0
FullCPAlgorithmsTest_eljob.sample
sample
Definition: FullCPAlgorithmsTest_eljob.py:100
CaloSampling::CaloSample
CaloSample
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
AthAlgTool.h
CaloCell_SuperCell_ID.h
Helper class for offline supercell identifiers.
LVL1::IeSuperCellTowerMapper::FindAndConnectTower
virtual int FindAndConnectTower(std::unique_ptr< eTowerContainer > &my_eTowerContainerRaw, CaloSampling::CaloSample sample, const int region, int layer, const int pos_neg, const int eta_index, const int phi_index, Identifier ID, float et, int prov, bool doPrint) const =0
LVL1::IeSuperCellTowerMapper::reset
virtual void reset() const =0
createCablingJSON.eta_index
int eta_index
Definition: createCablingJSON.py:9
LVL1::IeSuperCellTowerMapper::AssignSuperCellsToTowers
virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr< eTowerContainer > &my_eTowerContainerRaw) const =0
CaloCellContainer.h
CaloIdManager.h
eTower.h