ATLAS Offline Software
IjSuperCellTowerMapper.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 // IjSuperCellTowerMapper.h -
7 // -------------------
8 // begin : 23 03 2019
9 // email : jacob.julian.kempster@cern.ch
10 // ***************************************************************************/
11 
12 #ifndef IjSuperCellTowerMapper_H
13 #define IjSuperCellTowerMapper_H
14 
18 #include "L1CaloFEXSim/jTower.h"
19 #include "TH1.h"
20 #include "TH1F.h"
21 #include "TH1I.h"
26 
27 namespace LVL1 {
28 
29 /*
30 Interface definition for jSuperCellTowerMapper
31 */
32 
33  static const InterfaceID IID_IjSuperCellTowerMapper("LVL1::IjSuperCellTowerMapper", 1, 0);
34 
35  class IjSuperCellTowerMapper : virtual public IAlgTool {
36  public:
37  static const InterfaceID& interfaceID( ) ;
38 
39  virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const = 0;
40  virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const = 0;
41 
42 
43  virtual void reset() = 0;
44 
45  virtual int FindAndConnectTower(/*jTowerContainer**/std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw,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,float eta_min, float eta_max, float eta0, float phi_min, float phi_max, float phi0) const = 0;
46  virtual void ConnectSuperCellToTower(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const = 0;
47  virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const = 0;
48  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,float eta_min, float eta_max, float eta0, float phi_min, float phi_max, float phi0, bool cellValid = false) const = 0;
49 
50  private:
51 
52  };
53 
54  inline const InterfaceID& LVL1::IjSuperCellTowerMapper::interfaceID()
55  {
56  return IID_IjSuperCellTowerMapper;
57  }
58 
59 } // end of namespace
60 
61 #endif
et
Extra patterns decribing particle interation process.
LVL1::IjSuperCellTowerMapper
Definition: IjSuperCellTowerMapper.h:35
ID
std::vector< Identifier > ID
Definition: CalibHitIDCheck.h:24
InDetAccessor::phi0
@ phi0
Definition: InDetAccessor.h:33
TriggerTowerContainer.h
LVL1::IjSuperCellTowerMapper::AssignTriggerTowerMapper
virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const =0
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::IjSuperCellTowerMapper::FindAndConnectTower
virtual int FindAndConnectTower(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw, 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, float eta_min, float eta_max, float eta0, float phi_min, float phi_max, float phi0) const =0
AthAlgorithm.h
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
LVL1::IjSuperCellTowerMapper::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, float eta_min, float eta_max, float eta0, float phi_min, float phi_max, float phi0, bool cellValid=false) const =0
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
AthAlgTool.h
CaloCell_SuperCell_ID.h
Helper class for offline supercell identifiers.
createCablingJSON.eta_index
int eta_index
Definition: createCablingJSON.py:9
LVL1::IjSuperCellTowerMapper::interfaceID
static const InterfaceID & interfaceID()
Definition: IjSuperCellTowerMapper.h:54
LVL1::IjSuperCellTowerMapper::AssignSuperCellsToTowers
virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const =0
jTowerContainer.h
LVL1::IjSuperCellTowerMapper::reset
virtual void reset()=0
CaloCellContainer.h
LVL1::IjSuperCellTowerMapper::ConnectSuperCellToTower
virtual void ConnectSuperCellToTower(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const =0
CaloIdManager.h
jTower.h
LVL1::IjSuperCellTowerMapper::FindTowerIDForSuperCell
virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const =0