ATLAS Offline Software
L1CaloFcal23Cells2RxMappingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 // ***************************************************************************
5 // * Author: John Morris (john.morris@cern.ch) *
6 // * Queen Mary University of London *
7 // * *
8 
9 //
10 // Mapping tool for Fcal 23 calo cells to receivers
11 //
12 
13 #ifndef TRIGT1CALOCALIBTOOLS_L1CALOFCAL23CELLS2RXMAPPINGTOOL_H
14 #define TRIGT1CALOCALIBTOOLS_L1CALOFCAL23CELLS2RXMAPPINGTOOL_H
15 
16 #include <unordered_map>
17 #include <vector>
18 
19 #include "AsgTools/AsgTool.h"
20 #include "GaudiKernel/ToolHandle.h"
21 #include "StoreGate/StoreGateSvc.h"
22 
24 
25 namespace LVL1 {
26 
28 {
31 
32 public:
34  L1CaloFcal23Cells2RxMappingTool( const std::string& name );
42 
43 
44  virtual StatusCode initialize() override;
45  virtual StatusCode finalize() override;
46 
47  virtual unsigned int offlineCell2RxId(const unsigned int& cellId) const override;
48  virtual unsigned int onlineCell2RxId(const unsigned int& cellId) const override;
49 
50  enum mapType {
55  numMaps
56  };
57 
58 
59 private:
60  unsigned int lookup (mapType type, unsigned int cellId) const;
61  std::unordered_map<unsigned int,unsigned int> m_maps[numMaps];
62 };
63 } // end of namespace
64 #endif
LVL1::L1CaloFcal23Cells2RxMappingTool::L1CaloFcal23Cells2RxMappingTool
L1CaloFcal23Cells2RxMappingTool(L1CaloFcal23Cells2RxMappingTool &&rhs)=delete
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
LVL1::IL1CaloFcal23Cells2RxMappingTool
Definition: IL1CaloFcal23Cells2RxMappingTool.h:23
LVL1::L1CaloFcal23Cells2RxMappingTool::numMaps
@ numMaps
Definition: L1CaloFcal23Cells2RxMappingTool.h:55
LVL1::L1CaloFcal23Cells2RxMappingTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3762
LVL1::L1CaloFcal23Cells2RxMappingTool::finalize
virtual StatusCode finalize() override
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3758
IL1CaloFcal23Cells2RxMappingTool.h
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::L1CaloFcal23Cells2RxMappingTool::L1CaloFcal23Cells2RxMappingTool
L1CaloFcal23Cells2RxMappingTool(const L1CaloFcal23Cells2RxMappingTool &rhs)=delete
LVL1::L1CaloFcal23Cells2RxMappingTool::~L1CaloFcal23Cells2RxMappingTool
virtual ~L1CaloFcal23Cells2RxMappingTool()
destructor
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3755
LVL1::L1CaloFcal23Cells2RxMappingTool::offlineCell2RxId
virtual unsigned int offlineCell2RxId(const unsigned int &cellId) const override
Declare the interface that the class provides.
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3745
LVL1::L1CaloFcal23Cells2RxMappingTool
Definition: L1CaloFcal23Cells2RxMappingTool.h:28
LVL1::L1CaloFcal23Cells2RxMappingTool::lookup
unsigned int lookup(mapType type, unsigned int cellId) const
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3735
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LVL1::L1CaloFcal23Cells2RxMappingTool::onlineCell2RxId
virtual unsigned int onlineCell2RxId(const unsigned int &cellId) const override
Definition: L1CaloFcal23Cells2RxMappingTool.cxx:3750
TrigConf::name
Definition: HLTChainList.h:35
LVL1::L1CaloFcal23Cells2RxMappingTool::m_maps
std::unordered_map< unsigned int, unsigned int > m_maps[numMaps]
Definition: L1CaloFcal23Cells2RxMappingTool.h:61
LVL1::L1CaloFcal23Cells2RxMappingTool::mapOnlineCellNotConnectedToCalibLines
@ mapOnlineCellNotConnectedToCalibLines
Definition: L1CaloFcal23Cells2RxMappingTool.h:54
LVL1::L1CaloFcal23Cells2RxMappingTool::mapOfflineCellNotConnectedToCalibLines
@ mapOfflineCellNotConnectedToCalibLines
Definition: L1CaloFcal23Cells2RxMappingTool.h:53
LVL1::L1CaloFcal23Cells2RxMappingTool::mapType
mapType
Definition: L1CaloFcal23Cells2RxMappingTool.h:50
LVL1::L1CaloFcal23Cells2RxMappingTool::mapOfflineCell2RxId
@ mapOfflineCell2RxId
Definition: L1CaloFcal23Cells2RxMappingTool.h:51
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
LVL1::L1CaloFcal23Cells2RxMappingTool::mapOnlineCell2RxId
@ mapOnlineCell2RxId
Definition: L1CaloFcal23Cells2RxMappingTool.h:52
AsgTool.h
LVL1::L1CaloFcal23Cells2RxMappingTool::L1CaloFcal23Cells2RxMappingTool
L1CaloFcal23Cells2RxMappingTool()=delete
delete the big 4
StoreGateSvc.h
LVL1::L1CaloFcal23Cells2RxMappingTool::operator=
L1CaloFcal23Cells2RxMappingTool & operator=(const L1CaloFcal23Cells2RxMappingTool &rhs)=delete