ATLAS Offline Software
Loading...
Searching...
No Matches
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
27namespace LVL1 {
28
29/*
30Interface 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
55 {
57 }
58
59} // end of namespace
60
61#endif
std::vector< Identifier > ID
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.