ATLAS Offline Software
jSuperCellTowerMapper.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 #ifndef JSUPERCELLTOWERMAPPER_H
7 #define JSUPERCELLTOWERMAPPER_H
8 
9 
10 
11 // Athena/Gaudi
14 //
16 #include "L1CaloFEXSim/jTower.h"
19 
20 // STL
21 #include <string>
22 #include <memory>
23 
24 
25 namespace LVL1 {
26 
27 
29 {
30  public:
31  jSuperCellTowerMapper(const std::string& type,const std::string& name,const IInterface* parent);
32  virtual ~jSuperCellTowerMapper();
33 
35  virtual StatusCode initialize() override;
36 
37  virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const override;
38  virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw) const override;
39 
40 
41  virtual void reset() override;
42 
43  private:
44 
46  SG::ReadHandleKey<xAOD::TriggerTowerContainer> m_triggerTowerCollectionSGKey {this, "xODTriggerTowers", "xAODTriggerTowers", "xAODTriggerTowers"};
47 
48  Gaudi::Property<bool> m_apply_masking {this, "SCellMasking", false, "Applies masking. Only use for data"};
49 
50  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 override;
51  virtual void ConnectSuperCellToTower(std::unique_ptr<jTowerContainer> & my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const override;
52  virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const override;
53  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=true) const override;
54 
55  std::string DetectorName(const CaloSampling::CaloSample sample) const;
56 
57 };
58 
59 } // end of LVL1 namespace
60 #endif
LVL1::jSuperCellTowerMapper
Definition: jSuperCellTowerMapper.h:29
et
Extra patterns decribing particle interation process.
LVL1::IjSuperCellTowerMapper
Definition: IjSuperCellTowerMapper.h:35
LVL1::jSuperCellTowerMapper::AssignSuperCellsToTowers
virtual StatusCode AssignSuperCellsToTowers(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const override
Definition: jSuperCellTowerMapper.cxx:91
ID
std::vector< Identifier > ID
Definition: CalibHitIDCheck.h:24
LVL1::jSuperCellTowerMapper::m_scellsCollectionSGKey
SG::ReadHandleKey< CaloCellContainer > m_scellsCollectionSGKey
Definition: jSuperCellTowerMapper.h:45
InDetAccessor::phi0
@ phi0
Definition: InDetAccessor.h:33
TriggerTowerContainer.h
SG::ReadHandleKey< CaloCellContainer >
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::jSuperCellTowerMapper::jSuperCellTowerMapper
jSuperCellTowerMapper(const std::string &type, const std::string &name, const IInterface *parent)
Definition: jSuperCellTowerMapper.cxx:23
LVL1::jSuperCellTowerMapper::m_triggerTowerCollectionSGKey
SG::ReadHandleKey< xAOD::TriggerTowerContainer > m_triggerTowerCollectionSGKey
Definition: jSuperCellTowerMapper.h:46
FullCPAlgorithmsTest_eljob.sample
sample
Definition: FullCPAlgorithmsTest_eljob.py:100
LVL1::jSuperCellTowerMapper::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 override
Definition: jSuperCellTowerMapper.cxx:295
CaloSampling::CaloSample
CaloSample
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
LVL1::jSuperCellTowerMapper::initialize
virtual StatusCode initialize() override
standard Athena-Algorithm method
Definition: jSuperCellTowerMapper.cxx:35
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
test_pyathena.parent
parent
Definition: test_pyathena.py:15
createCablingJSON.eta_index
int eta_index
Definition: createCablingJSON.py:9
LVL1::jSuperCellTowerMapper::FindTowerIDForSuperCell
virtual int FindTowerIDForSuperCell(int towereta, int towerphi) const override
Definition: jSuperCellTowerMapper.cxx:1058
TrigConf::name
Definition: HLTChainList.h:35
jTowerContainer.h
IjSuperCellTowerMapper.h
LVL1::jSuperCellTowerMapper::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=true) const override
Definition: jSuperCellTowerMapper.cxx:1063
LVL1::jSuperCellTowerMapper::reset
virtual void reset() override
Definition: jSuperCellTowerMapper.cxx:86
LVL1::jSuperCellTowerMapper::m_apply_masking
Gaudi::Property< bool > m_apply_masking
Definition: jSuperCellTowerMapper.h:48
LVL1::jSuperCellTowerMapper::AssignTriggerTowerMapper
virtual StatusCode AssignTriggerTowerMapper(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw) const override
Definition: jSuperCellTowerMapper.cxx:45
CaloCellContainer.h
LVL1::jSuperCellTowerMapper::DetectorName
std::string DetectorName(const CaloSampling::CaloSample sample) const
Definition: jSuperCellTowerMapper.cxx:1137
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
LVL1::jSuperCellTowerMapper::~jSuperCellTowerMapper
virtual ~jSuperCellTowerMapper()
Definition: jSuperCellTowerMapper.cxx:30
LVL1::jSuperCellTowerMapper::ConnectSuperCellToTower
virtual void ConnectSuperCellToTower(std::unique_ptr< jTowerContainer > &my_jTowerContainerRaw, int iETower, Identifier ID, int iCell, float et, int layer) const override
Definition: jSuperCellTowerMapper.cxx:286
AthAlgTool
Definition: AthAlgTool.h:26
jTower.h