ATLAS Offline Software
Loading...
Searching...
No Matches
LArHVIdMapping.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LARHVIDMAPPING_H
6#define LARHVIDMAPPING_H
7
9#include "Identifier/Identifier.h"
11#include <vector>
12#include <map>
13
14class LArElectrodeID;
15class LArHVLineID;
16class LArEM_ID;
17class LArHEC_ID;
18class LArFCAL_ID;
19class CaloCell_ID;
20
22
23 friend class LArHVIdMappingAlg; //The conditions alg filling this object
24
25 public:
27 LArHVIdMapping(const CaloCell_ID* caloId, const LArHVLineID* hvId, const LArElectrodeID* elId);
28
32 const HWIdentifier getLArHVLineID(HWIdentifier& electrodeId) const;
33
36 const std::vector<HWIdentifier>& getLArElectrodeIDvec(HWIdentifier& hvlineId) const;
37
38
41 int getCellModule(const Identifier& offId ) const;
42 int getCellEtaSector(const Identifier& offId ) const;
43 int getCellPhiSector(const Identifier& offId ) const;
44 std::pair<int,int> getCellElectrodeMinMax(const Identifier& offId) const;
45
46
47 private:
48
55
56 std::map<HWIdentifier,HWIdentifier> m_electrode_hvline_map;
57 std::map<HWIdentifier,std::vector<HWIdentifier> > m_hvline_electrode_map;
58 const std::vector<HWIdentifier> m_invalid;
59
60};
61
62
63
65CLASS_DEF( LArHVIdMapping, 260112632 , 1)
66#include "AthenaKernel/CondCont.h"
68
69#endif
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
Hold mapping of ranges to condition objects.
Definition CondCont.h:889
Helper class for LArEM offline identifiers.
Definition LArEM_ID.h:111
Helper for the Liquid Argon Calorimeter cell at the electrode level.
Helper class for LArFCAL offline identifiers.
Definition LArFCAL_ID.h:49
Helper class for LArHEC offline identifiers.
Definition LArHEC_ID.h:76
std::map< HWIdentifier, HWIdentifier > m_electrode_hvline_map
friend class LArHVIdMappingAlg
const LArEM_ID * m_emHelper
std::pair< int, int > getCellElectrodeMinMax(const Identifier &offId) const
LArHVIdMapping()=delete
const std::vector< HWIdentifier > m_invalid
const LArFCAL_ID * m_fcalHelper
const std::vector< HWIdentifier > & getLArElectrodeIDvec(HWIdentifier &hvlineId) const
Return a vector of LArElectrodeID corresponding to a given LArHVLineID.
const LArHEC_ID * m_hecHelper
std::map< HWIdentifier, std::vector< HWIdentifier > > m_hvline_electrode_map
int getCellEtaSector(const Identifier &offId) const
const LArHVLineID * m_hvlineHelper
int getCellPhiSector(const Identifier &offId) const
const CaloCell_ID * m_caloHelper
int getCellModule(const Identifier &offId) const
returns the Module of a given offId
const LArElectrodeID * m_electrodeHelper
const HWIdentifier getLArHVLineID(HWIdentifier &electrodeId) const
Return the LArHVLineID corresponding to a given LArElectrodeId.
Helper for the Liquid Argon Calorimeter High-Voltage identifiers.
Definition LArHVLineID.h:43