ATLAS Offline Software
Loading...
Searching...
No Matches
IjSuperCellTowerMapper.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 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
16#include "L1CaloFEXSim/jTower.h"
20
21namespace LVL1 {
22
23/*
24Interface definition for jSuperCellTowerMapper
25*/
26
27 static const InterfaceID IID_IjSuperCellTowerMapper("LVL1::IjSuperCellTowerMapper", 1, 0);
28
29 class IjSuperCellTowerMapper : virtual public IAlgTool {
30 public:
31 static const InterfaceID& interfaceID( ) ;
32
33 virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const = 0;
34 virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const = 0;
35
36 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;
37 virtual void ConnectSuperCellToTower(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const = 0;
38 virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const = 0;
39 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;
40
41 private:
42
43 };
44
46 {
48 }
49
50} // end of namespace
51
52#endif
Helper class for offline supercell identifiers.
static const InterfaceID & interfaceID()
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
virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const =0
virtual void ConnectSuperCellToTower(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const =0
virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const =0
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
virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const =0
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
static const InterfaceID IID_IjSuperCellTowerMapper("LVL1::IjSuperCellTowerMapper", 1, 0)
Extra patterns decribing particle interation process.