ATLAS Offline Software
CaloCell_Base_ID.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
14 #include "IdDict/IdDictMgr.h"
15 
16 
18  const LArEM_Base_ID* em_id,
19  const LArHEC_Base_ID* hec_id,
20  const LArFCAL_Base_ID* fcal_id,
21  const LArMiniFCAL_ID* minifcal_id,
22  const Tile_Base_ID* tile_id,
23  bool supercell)
24  : AtlasDetectorID (name, ""),
25  m_emHelper(em_id),
26  m_hecHelper(hec_id),
27  m_fcalHelper(fcal_id),
28  m_minifcalHelper(minifcal_id),
29  m_tileHelper(tile_id),
30  m_cell_hash_max(0),
31  m_region_hash_max(0),
32  m_caloNeighbours (nullptr),
33  m_supercell(supercell ? 1 : 0)
34 {
35  m_helpers[LAREM] = em_id;
36  m_helpers[LARHEC] = hec_id;
37  m_helpers[LARFCAL] = fcal_id;
38  m_helpers[TILE] = tile_id;
39  m_helpers[LARMINIFCAL] = minifcal_id;
40 
41  for (int i=0; i < NSUBCALO; i++) {
42  if (i == 0) {
43  m_cell_min[i] = 0;
44  m_reg_min[i] = 0;
45  }
46  else {
47  m_cell_min[i] = m_cell_max[i-1];
48  m_reg_min[i] = m_reg_max[i-1];
49  }
50 
53  }
54 
57 
58  // count number of helpers with enabled neighbors and instantiate
59  // super neighbors in case this is more than 1
60 
61  int nNeigh(0);
62 
63  if ( m_emHelper->do_neighbours() ) nNeigh++;
64  if ( m_hecHelper->do_neighbours() ) nNeigh++;
65  if ( m_fcalHelper->do_neighbours() ) nNeigh++;
66  if ( m_minifcalHelper->do_neighbours() ) nNeigh++;
67  if ( m_tileHelper->do_neighbours() ) nNeigh++;
68 
69  if ( nNeigh > 1 ) {
71  }
72 }
73 
74 
76 {
77  if ( m_caloNeighbours ) delete m_caloNeighbours;
78 }
79 
80 
82 {
83 
84  MsgStream log(m_msgSvc, "CaloCell_Base_ID");
85  if(m_msgSvc)log << MSG::DEBUG << "Initialize" << endmsg;
86 
87  // Check whether this helper should be reinitialized
88  if (!reinitialize(dict_mgr)) {
89  if(m_msgSvc)log << MSG::DEBUG << "Request to reinitialize not satisfied - tags have not changed" << endmsg;
90  return (0);
91  }
92  else {
93  if(m_msgSvc)log << MSG::DEBUG << "(Re)initialize" << endmsg;
94  }
95 
96  // init base object
97  if(AtlasDetectorID::initialize_from_dictionary(dict_mgr)) return (1);
98 
99  // Register version of the different dictionaries
100  if (register_dict_tag(dict_mgr, "LArCalorimeter")) return(1);
101  if (register_dict_tag(dict_mgr, "TileCalorimeter")) return(1);
102 
103  //
104  // ... initialize cell / region vectors
105  //
106  m_region_vec.clear();
108 
109  m_cell_vec.clear();
110  m_cell_vec.reserve(m_cell_hash_max);
111 
112  for (int i=0; i < NSUBCALO; i++) {
113  m_region_vec.insert (m_region_vec.end(),
114  m_helpers[i]->regions().begin(),
115  m_helpers[i]->regions().end());
116  m_cell_vec.insert (m_cell_vec.end(),
117  m_helpers[i]->channels().begin(),
118  m_helpers[i]->channels().end());
119  }
120  assert (m_region_vec.size() == m_region_hash_max);
121  assert (m_cell_vec.size() == m_cell_hash_max);
122 
123  // initialize CaloCell neighbours
124  if(m_caloNeighbours) {
125  std::string neighbourFile;
126  if ( !m_supercell ) {
127  neighbourFile = dict_mgr.find_metadata("FULLATLASNEIGHBORS");
128  }
129  else {
130  // use this file name for Super Cells - should be replaced by db tag ...
131  neighbourFile = "SuperCaloNeighborsSuperCells-April2014.dat";
132  }
133  if (neighbourFile.empty()) throw std::runtime_error("CaloCell_ID: Cannot find the CaloNeighbour file name");
134  if(m_msgSvc)log << MSG::DEBUG << "Initializing Super3D Neighbors from file " << neighbourFile << endmsg;
135  m_caloNeighbours->initialize(this, neighbourFile);
136  }
137 
138  return 0;
139 }
140 
141 
143 {
144  int calo_sampl = (int) Unknown;
145 
146  if(m_emHelper->is_em_barrel(id)) {
147  calo_sampl = m_emHelper->sampling(id)+(int)PreSamplerB;
148  }
149  else if (m_emHelper->is_em_endcap_outer(id)) {
150  calo_sampl = m_emHelper->sampling(id)+(int)PreSamplerE;
151  }
152  else if (m_emHelper->is_em_endcap_inner(id)) {
153  calo_sampl = m_emHelper->sampling(id)+(int)EME1;
154  }
155 
156  else if(m_hecHelper->is_lar_hec(id)) {
157  calo_sampl = m_hecHelper->sampling(id) + (int) HEC0;
158  }
159 
160  else if(m_minifcalHelper->is_lar_minifcal(id)) {
161  // must do minifcal before fcal because miniFCAL IS FCAL
162  calo_sampl = m_minifcalHelper->depth(id) - 1 + (int) MINIFCAL0;
163  }
164  else if(m_fcalHelper->is_lar_fcal(id)) {
165  calo_sampl = m_fcalHelper->module(id) - 1 + (int) FCAL0;
166  }
167 
168  else if (m_tileHelper->is_tile_barrel( id )) {
169  calo_sampl = TileBar0 + m_tileHelper->sample(id);
170  }
171 
172  else if (m_tileHelper->is_tile_extbarrel( id )) {
173  calo_sampl = TileExt0 + m_tileHelper->sample(id);
174  }
175 
176  else if (m_tileHelper->is_tile_gap( id )) {
177  calo_sampl = TileGap1 - 1 + m_tileHelper->sample(id);
178  }
179 
180  return calo_sampl;
181 }
182 
184 {
185  Identifier id = cell_id (caloHash);
186  return calo_sample(id);
187 }
188 
189 
190 int
192  const LArNeighbours::neighbourOption& option,
193  std::vector<IdentifierHash>& neighbourList) const
194 {
195  int result = 1;
196 
197  int subCalo = NOT_VALID;
198  IdentifierHash subHash = subcalo_cell_hash (caloHashId, subCalo);
199 
200  switch (subCalo) {
201  case LAREM:
202  em_idHelper()->get_neighbours(subHash, option, neighbourList);
203  break;
204 
205  case LARHEC:
206  hec_idHelper()->get_neighbours(subHash, option, neighbourList);
207  break;
208 
209  case LARFCAL:
210  fcal_idHelper()->get_neighbours(subHash, option, neighbourList);
211  break;
212 
213  case TILE:
214  tile_idHelper()->get_neighbours(subHash, option, neighbourList);
215  break;
216 
217  case LARMINIFCAL:
218  minifcal_idHelper()->get_neighbours(subHash, option, neighbourList);
219  break;
220 
221  default:
222  neighbourList.resize(0);
223  return result;
224  }
225 
226  unsigned int shift = caloHashId - subHash;
227  int neighbourIndex = neighbourList.size();
228 
229  if (neighbourIndex > 0) {
230  if (shift != 0) {
231  for (int iN = 0 ; iN <neighbourIndex ; ++iN) {
232  neighbourList[iN] += shift;
233  }
234  }
235  result = 0 ;
236  }
237 
238  if ( m_caloNeighbours ) {
239  if ( (option & LArNeighbours::prevSuperCalo) ){
240  result = m_caloNeighbours->get_prevInCalo(caloHashId,neighbourList);
241  if ( result != 0 )
242  return result;
243  }
244 
245  if ( (option & LArNeighbours::nextSuperCalo) ){
246  result = m_caloNeighbours->get_nextInCalo(caloHashId,neighbourList);
247  if ( result != 0 )
248  return result;
249  }
250  }
251 
252  return result;
253 }
254 
255 std::string CaloCell_Base_ID::cell_name(const Identifier id) const {
256  std::ostringstream s1;
258  s1 << (this->pos_neg(id) == 0 ? "/C-SIDE" : "/A-SIDE");
259  if (this->is_tile(id)) {
260  s1 << "/SECTION " << this->section(id) << "/SIDE " << this->side(id)
261  << "/MODULE " << this->module(id) << "/TOWER " << this->tower(id)
262  << "/SAMPLE " << this->sample(id);
263 
264  } else {
265  s1 << "/REGION " << this->region(id) << "/IETA " << this->eta(id)
266  << "/iPHI " << this->phi(id);
267  }
268  return s1.str();
269 }
270 
271 std::string
273  const IdContext *context /*= 0*/,
274  char sep /*= '.'*/) const
275 {
276  if (is_em (id))
277  return m_emHelper->show_to_string (id, context, sep);
278  if (is_hec (id))
279  return m_hecHelper->show_to_string (id, context, sep);
280  if (is_fcal (id))
281  return m_fcalHelper->show_to_string (id, context, sep);
282  if (is_minifcal (id))
283  return m_minifcalHelper->show_to_string (id, context, sep);
284  if (is_tile (id))
285  return m_tileHelper->show_to_string (id, context, sep);
286  return "Unable to decode id";
287 }
IdDictMgr.h
LArNeighbours::nextSuperCalo
@ nextSuperCalo
Definition: LArNeighbours.h:28
LArNeighbours::neighbourOption
neighbourOption
Definition: LArNeighbours.h:12
GetLCDefs::Unknown
@ Unknown
Definition: GetLCDefs.h:21
LArFCAL_Base_ID
Definition: LArFCAL_Base_ID.h:19
CaloCell_Base_ID::LARFCAL
@ LARFCAL
Definition: CaloCell_Base_ID.h:43
ReadCellNoiseFromCoolCompare.s1
s1
Definition: ReadCellNoiseFromCoolCompare.py:378
CaloCell_Base_ID::show_to_string
std::string show_to_string(const Identifier id, const IdContext *context=0, char sep='.') const
Definition: CaloCell_Base_ID.cxx:272
AtlasDetectorID::initialize_from_dictionary
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
Definition: AtlasDetectorID.cxx:255
get_generator_info.result
result
Definition: get_generator_info.py:21
CaloCell_Base_ID::region
int region(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
CaloNeighbours::initialize
int initialize(const CaloCell_Base_ID *caloID, const std::string &filename)
Definition: CaloNeighbours.cxx:293
CaloCell_Base_ID::tower
int tower(const Identifier id) const
Tile field values (NOT_VALID == invalid request)
AtlasDetectorID::is_lar_fcal
bool is_lar_fcal(Identifier id) const
Definition: AtlasDetectorID.h:834
CaloIDHelper::HashGroup::end
id_iterator end() const
Return an end iterator over the group's Identifiers.
LArHEC_Base_ID
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
Definition: LArHEC_Base_ID.h:36
LArEM_Base_ID
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
Definition: LArEM_Base_ID.h:36
Tile_Base_ID::is_tile_gap
bool is_tile_gap(const Identifier &id) const
Definition: Tile_Base_ID.cxx:227
LArEM_Base_ID::is_em_endcap_outer
bool is_em_endcap_outer(const Identifier id) const
test if the id belongs to the EM Endcap outer wheel
CaloCell_ID_FCS::TileExt0
@ TileExt0
Definition: FastCaloSim_CaloCell_ID.h:37
CaloCell_Base_ID::LARMINIFCAL
@ LARMINIFCAL
Definition: CaloCell_Base_ID.h:43
CaloCell_Base_ID::pos_neg
int pos_neg(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
CaloCell_Base_ID::cell_name
std::string cell_name(const Identifier id) const
Returns the cell-location in a human readable form.
Definition: CaloCell_Base_ID.cxx:255
CaloCell_Base_ID::m_cell_max
size_type m_cell_max[NSUBCALO]
Definition: CaloCell_Base_ID.h:397
Tile_Base_ID::sample
int sample(const Identifier &id) const
Definition: Tile_Base_ID.cxx:175
CaloCell_Base_ID::m_cell_min
size_type m_cell_min[NSUBCALO]
Definition: CaloCell_Base_ID.h:396
CaloIDHelper::HashGroup::begin
id_iterator begin() const
Return a begin iterator over the group's Identifiers.
LArFCAL_Base_ID::module
int module(const Identifier id) const
module [1,3]
LArMiniFCAL_ID::depth
int depth(const Identifier id) const
depth [0,3]
Definition: LArMiniFCAL_ID.h:495
Tile_Base_ID::is_tile_extbarrel
bool is_tile_extbarrel(const Identifier &id) const
Definition: Tile_Base_ID.cxx:218
LArEM_Base_ID::sampling
int sampling(const Identifier id) const
return sampling according to :
AtlasDetectorID::m_msgSvc
IMessageSvc * m_msgSvc
pointer to the message service
Definition: AtlasDetectorID.h:369
CaloCell_Base_ID::LARHEC
@ LARHEC
Definition: CaloCell_Base_ID.h:43
IdDictMgr::find_metadata
const std::string & find_metadata(const std::string &name) const
Access to meta data, name/value pairs.
Definition: IdDictMgr.cxx:91
CaloNeighbours::get_nextInCalo
int get_nextInCalo(const IdentifierHash &id, std::vector< IdentifierHash > &neighbourList) const
Definition: CaloNeighbours.cxx:447
CaloCell_Base_ID::calo_sample
int calo_sample(const Identifier id) const
returns an int taken from Sampling enum and describing the subCalo to which the Id belongs.
Definition: CaloCell_Base_ID.cxx:142
LArFCAL_Base_ID::get_neighbours
int get_neighbours(const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = all2D,...
Definition: LArFCAL_Base_ID.cxx:533
CaloCell_Base_ID::is_tile
bool is_tile(const Identifier id) const
test if the id belongs to the Tiles
CaloCell_Base_ID::module
int module(const Identifier id) const
Tile field values (NOT_VALID == invalid request)
AtlasDetectorID::do_neighbours
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
Definition: AtlasDetectorID.cxx:483
CaloCell_Base_ID::is_hec
bool is_hec(const Identifier id) const
test if the id belongs to the HEC
CaloIDHelper::regions
const HashGroup & regions() const
Return the HashGroup for regions.
CaloCell_Base_ID::fcal_idHelper
const LArFCAL_Base_ID * fcal_idHelper() const
access to FCAL idHelper
Definition: CaloCell_Base_ID.h:341
CaloCell_Base_ID::m_region_hash_max
size_type m_region_hash_max
Definition: CaloCell_Base_ID.h:395
CaloCell_Base_ID::em_idHelper
const LArEM_Base_ID * em_idHelper() const
access to EM idHelper
Definition: CaloCell_Base_ID.h:330
IdDictMgr
Definition: IdDictMgr.h:14
CaloCell_Base_ID::is_em
bool is_em(const Identifier id) const
test if the id belongs to LArEM
CaloCell_Base_ID::m_helpers
const CaloIDHelper * m_helpers[NSUBCALO]
Definition: CaloCell_Base_ID.h:392
CaloCell_Base_ID::m_cell_hash_max
size_type m_cell_hash_max
Definition: CaloCell_Base_ID.h:394
CaloCell_Base_ID::sample
int sample(const Identifier id) const
Tile field values (NOT_VALID == invalid request)
lumiFormat.i
int i
Definition: lumiFormat.py:85
CaloNeighbours
Definition: CaloNeighbours.h:92
CaloCell_Base_ID::is_fcal
bool is_fcal(const Identifier id) const
test if the id belongs to the FCAL - true also for MiniFCAL
CaloCell_ID_FCS::TileBar0
@ TileBar0
Definition: FastCaloSim_CaloCell_ID.h:31
LArHEC_Base_ID::get_neighbours
int get_neighbours(const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = prevInPhi,...
Definition: LArHEC_Base_ID.cxx:708
CaloNeighbours.h
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
CaloCell_Base_ID::m_minifcalHelper
const LArMiniFCAL_ID * m_minifcalHelper
Definition: CaloCell_Base_ID.h:390
Tile_Base_ID
This class factors out code common between TileID and Tile_SuperCell_ID.
Definition: Tile_Base_ID.h:36
CaloCell_Base_ID.h
Helper base class for offline cell identifiers.
CaloCell_Base_ID::m_caloNeighbours
CaloNeighbours * m_caloNeighbours
Definition: CaloCell_Base_ID.h:408
CaloCell_Base_ID::CaloCell_Base_ID
CaloCell_Base_ID(const std::string &name, const LArEM_Base_ID *em_id, const LArHEC_Base_ID *hec_id, const LArFCAL_Base_ID *fcal_id, const LArMiniFCAL_ID *minifcal_id, const Tile_Base_ID *tile_id, bool supercell)
enumeration of samplings (i.e.layers) separately for various sub calorimeters
Definition: CaloCell_Base_ID.cxx:17
CaloCell_Base_ID::eta
int eta(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
constants.EME1
int EME1
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:55
LArNeighbours::prevSuperCalo
@ prevSuperCalo
Definition: LArNeighbours.h:27
CaloCell_Base_ID::subcalo_cell_hash
IdentifierHash subcalo_cell_hash(const Identifier cellId, int &subCalo) const
create hash id from 'global' cell id
CaloCell_Base_ID::minifcal_idHelper
const LArMiniFCAL_ID * minifcal_idHelper() const
access to MiniFCAL idHelper
Definition: CaloCell_Base_ID.h:347
AtlasDetectorID::is_lar_hec
bool is_lar_hec(Identifier id) const
Definition: AtlasDetectorID.h:824
CaloCell_Base_ID::TILE
@ TILE
Definition: CaloCell_Base_ID.h:43
CaloCell_Base_ID::m_hecHelper
const LArHEC_Base_ID * m_hecHelper
Definition: CaloCell_Base_ID.h:388
CaloCell_ID_FCS::TileGap1
@ TileGap1
Definition: FastCaloSim_CaloCell_ID.h:34
CaloCell_Base_ID::m_fcalHelper
const LArFCAL_Base_ID * m_fcalHelper
Definition: CaloCell_Base_ID.h:389
CaloCell_Base_ID::m_reg_max
size_type m_reg_max[NSUBCALO]
Definition: CaloCell_Base_ID.h:399
AtlasDetectorID::register_dict_tag
int register_dict_tag(const IdDictMgr &dict_mgr, const std::string &dict_name)
Register the file and tag names for a particular IdDict dictionary.
Definition: AtlasDetectorID.cxx:201
CaloCell_Base_ID::m_supercell
unsigned m_supercell
Definition: CaloCell_Base_ID.h:410
grepfile.sep
sep
Definition: grepfile.py:38
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
AtlasDetectorID::is_lar_minifcal
bool is_lar_minifcal(Identifier id) const
Definition: AtlasDetectorID.h:844
LArEM_Base_ID::get_neighbours
int get_neighbours(const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = prevInPhi,...
Definition: LArEM_Base_ID.cxx:692
CaloCell_Base_ID::get_neighbours
int get_neighbours(const IdentifierHash caloHash, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found
Definition: CaloCell_Base_ID.cxx:191
CaloCell_Base_ID::m_cell_vec
std::vector< Identifier > m_cell_vec
Definition: CaloCell_Base_ID.h:400
CaloCell_Base_ID::phi
int phi(const Identifier id) const
LAr field values (NOT_VALID == invalid request)
Tile_Base_ID::get_neighbours
int get_neighbours(const IdentifierHash &id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = prevInPhi,...
Definition: Tile_Base_ID.cxx:1790
CaloCell_Base_ID::cell_id
Identifier cell_id(const int subCalo, const int barec_or_posneg, const int sampling_or_fcalmodule, const int region_or_dummy, const int eta, const int phi) const
Make a cell (== channel) ID from constituting fields and subCalo index; for (Mini)FCAL,...
LArEM_Base_ID::is_em_endcap_inner
bool is_em_endcap_inner(const Identifier id) const
test if the id belongs to the EM Endcap inner wheel
CaloCell_ID_FCS::HEC0
@ HEC0
Definition: FastCaloSim_CaloCell_ID.h:27
CaloIDHelper::channels
const HashGroup & channels() const
Return the HashGroup for channels (cells).
LArMiniFCAL_ID::get_neighbours
int get_neighbours(const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = all2D,...
Definition: LArMiniFCAL_ID.cxx:141
AtlasDetectorID::reinitialize
bool reinitialize(const IdDictMgr &dict_mgr)
Test whether an idhelper should be reinitialized based on the change of tags.
Definition: AtlasDetectorID.cxx:221
CaloCell_Base_ID::side
int side(const Identifier id) const
Tile field values (NOT_VALID == invalid request)
python.CaloAddPedShiftConfig.int
int
Definition: CaloAddPedShiftConfig.py:45
AtlasDetectorID::show_to_string
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:365
LArEM_Base_ID::is_em_barrel
bool is_em_barrel(const Identifier id) const
test if the id belongs to the EM barrel
LArMiniFCAL_ID
Helper class for LArMiniFCAL offline identifiers.
Definition: LArMiniFCAL_ID.h:51
CaloCell_ID_FCS::PreSamplerE
@ PreSamplerE
Definition: FastCaloSim_CaloCell_ID.h:23
CaloCell_ID_FCS::PreSamplerB
@ PreSamplerB
Definition: FastCaloSim_CaloCell_ID.h:19
DEBUG
#define DEBUG
Definition: page_access.h:11
LArHEC_Base_ID::sampling
int sampling(const Identifier id) const
return sampling [0,3] (only 0 for supercells)
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
CaloCell_Base_ID::m_tileHelper
const Tile_Base_ID * m_tileHelper
Definition: CaloCell_Base_ID.h:391
CaloCell_Base_ID::m_reg_min
size_type m_reg_min[NSUBCALO]
Definition: CaloCell_Base_ID.h:398
CaloCell_Base_ID::NSUBCALO
@ NSUBCALO
Definition: CaloCell_Base_ID.h:43
CaloSampling::getSamplingName
static std::string getSamplingName(CaloSample theSample)
Returns a string (name) for each CaloSampling.
Definition: Calorimeter/CaloGeoHelpers/Root/CaloSampling.cxx:18
CaloCell_Base_ID::initialize_from_dictionary
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
Definition: CaloCell_Base_ID.cxx:81
CaloCell_Base_ID::~CaloCell_Base_ID
~CaloCell_Base_ID()
Definition: CaloCell_Base_ID.cxx:75
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
CaloCell_Base_ID::LAREM
@ LAREM
Definition: CaloCell_Base_ID.h:43
Tile_Base_ID::is_tile_barrel
bool is_tile_barrel(const Identifier &id) const
Test of an Identifier to see if it belongs to a particular part of the calorimeter.
Definition: Tile_Base_ID.cxx:209
CaloCell_Base_ID::NOT_VALID
@ NOT_VALID
Definition: CaloCell_Base_ID.h:43
CaloCell_ID_FCS::FCAL0
@ FCAL0
Definition: FastCaloSim_CaloCell_ID.h:40
IdContext
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Definition: IdContext.h:26
CaloCell_Base_ID::tile_idHelper
const Tile_Base_ID * tile_idHelper() const
access to Tile idHelper
Definition: CaloCell_Base_ID.h:353
CaloNeighbours::get_prevInCalo
int get_prevInCalo(const IdentifierHash &id, std::vector< IdentifierHash > &neighbourList) const
Definition: CaloNeighbours.cxx:454
CaloCell_Base_ID::m_region_vec
std::vector< Identifier > m_region_vec
Definition: CaloCell_Base_ID.h:401
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:52
CaloCell_Base_ID::m_emHelper
const LArEM_Base_ID * m_emHelper
Definition: CaloCell_Base_ID.h:387
CaloCell_Base_ID::is_minifcal
bool is_minifcal(const Identifier id) const
test if the id belongs to the MiniFCAL
CaloCell_Base_ID::section
int section(const Identifier id) const
Tile field values (NOT_VALID == invalid request)
CaloCell_Base_ID::hec_idHelper
const LArHEC_Base_ID * hec_idHelper() const
access to HEC idHelper
Definition: CaloCell_Base_ID.h:335
CaloIDHelper::HashGroup::hash_max
size_type hash_max() const
Return one more than the largest hash code.
Identifier
Definition: IdentifierFieldParser.cxx:14