ATLAS Offline Software
PLR_ID.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 /***************************************************************************
6  Inner Detector identifier package
7  -------------------------------------------
8 ***************************************************************************/
9 
10 
11 #include "GaudiKernel/MsgStream.h"
12 
13 #include "InDetIdentifier/PLR_ID.h"
15 #include "IdDict/IdDictField.h"
16 #include "IdDict/IdDictMgr.h"
17 #include "IdDict/IdDictRegion.h"
19 #include <set>
20 #include <algorithm>
21 #include <iostream>
22 
23 
24 
25 
27  // changes compared to PixelID:
34 }
35 
36 int
38  MsgStream log(m_msgSvc, "PLR_ID");
39  log << MSG::INFO << "Initialize from dictionary" << endmsg;
40  // Check whether this helper should be reinitialized
41  if (!reinitialize(dict_mgr)) {
42  log << MSG::INFO << "Request to reinitialize not satisfied - tags have not changed" << endmsg;
43  return(0);
44  } else {
45  log << MSG::DEBUG << "(Re)initialize" << endmsg;
46  }
47 
48  // init base object
49  if (PixelID::initialize_from_dictionary(dict_mgr)) return(1);
50 
51  // Register version of InnerDetector dictionary
52  if (register_dict_tag(dict_mgr, "InnerDetector")) return(1);
53 
54  m_dict = dict_mgr.find_dictionary("InnerDetector");
55  if (!m_dict) {
56  log << MSG::FATAL << " PLR_ID::initialize_from_dict - cannot access InnerDetector dictionary "
57  << endmsg;
58  return(1);
59  }
60 
61  AtlasDetectorID::setDictVersion(dict_mgr, "InnerDetector");
62 
63  // Initialize the field indices
64  if (initLevelsFromDict()) return(1);
65 
66  // save indet id
67  m_pixel_id = lumi();
68  if (!is_lumi(m_pixel_id)) {
69  log << MSG::FATAL << " PLR_ID::initialize_from_dict - cannot get plr id dictionary "
70  << endmsg;
71  return(1);
72  }
73 
74  //
75  // Set barrel field for testing is_barrel
76  //
77  int barrel_value;
79  // barrel
80  if (m_dict->get_label_value("barrel_endcap", "barrel", barrel_value)) {
81  log << MSG::FATAL << "Could not get value for label 'barrel' of field 'barrel_endcap' in dictionary "
82  << m_dict->name()
83  << endmsg;
84 
85  return(1);
86  }
87  m_barrel_field.add_value(barrel_value);
88  m_barrel_field.add_value(barrel_value);
89  log << MSG::DEBUG << " PLR_ID::initialize_from_dict "
90  << "Set barrel field values: "
91  << (std::string) m_barrel_field
92  << endmsg;
93 
94 
95  //DBM
96  //Set dbm field for testing is_dbm
97  //
98  // WARNING:
99  // modified to skip DBM when appropriate dictionary is not present
100  // by adding +999 or -999 to the field
101  //
102 
103  int dbm_value{};
104  m_dbm_field.clear();
105  if (m_dict->get_label_value("barrel_endcap", "negative_dbm", dbm_value)) {
106  if (m_dict->version().find("DBM") != std::string::npos) {
107  log << MSG::WARNING <<
108  "Could not get value for label 'negative_dbm' of field 'barrel_endcap' in dictionary "
109  << m_dict->name()
110  << endmsg;
111 
112  }
113  //return (1);
114  m_dbm_field.add_value(-999);
115  } else {
116  m_dbm_field.add_value(dbm_value);
117  }
118  if (m_dict->get_label_value("barrel_endcap", "positive_dbm", dbm_value)) {
119  if (m_dict->version().find("DBM") != std::string::npos) {
120  log << MSG::WARNING <<
121  "Could not get value for label 'positive_dbm' of field 'barrel_endcap' in dictionary "
122  << m_dict->name()
123  << endmsg;
124 
125  }
126  //return (1);
127  m_dbm_field.add_value(999);
128  } else {
129  m_dbm_field.add_value(dbm_value);
130  }
131  log << MSG::DEBUG << " PLR_ID::initialize_from_dict "
132  << "Set dbm field values: "
133  << (std::string) m_dbm_field
134  << endmsg;
135 
136  //
137  // Build multirange for the valid set of identifiers
138  //
139 
140 
141  // Find value for the field InnerDetector
142  const IdDictDictionary* atlasDict = dict_mgr.find_dictionary("ATLAS");
143  int inDetField = -1;
144  if (atlasDict->get_label_value("subdet", "InnerDetector", inDetField)) {
145  log << MSG::FATAL << "Could not get value for label 'InnerDetector' of field 'subdet' in dictionary "
146  << atlasDict->name()
147  << endmsg;
148 
149  return(1);
150  }
151 
152  // Find value for the field LuminosityDetectors
153  int lumiField = -1;
154  if (m_dict->get_label_value("part", "LuminosityDetectors", lumiField)) {
155  log << MSG::FATAL << "Could not get value for label 'LuminosityDetectors' of field 'part' in dictionary "
156  << m_dict->name()
157  << endmsg;
158 
159  return(1);
160  }
161 
162  // Find value for the field PLR
163  int plrField = -1;
164  if (m_dict->get_label_value("PLR_or_BCM", "PLR", plrField)) {
165  log << MSG::FATAL << "Could not get value for label 'PLR' of field 'PLR_or_BCM' in dictionary "
166  << m_dict->name()
167  << endmsg;
168 
169  return(1);
170  }
171 
172  log << MSG::DEBUG << " PLR_ID::initialize_from_dict "
173  << "Found field values: InDet/LuminosityDetectors/PLR "
174  << inDetField << "/"
175  << lumiField << "/"
176  << plrField
177  << endmsg;
178 
179 
180  // Set up id for region and range prefix
182  region_id.add(inDetField);
183  region_id.add(lumiField);
184  region_id.add(plrField);
185  Range prefix;
188 
189  // Set the base identifier for PLR
194 
195  // Set the base expanded identifier for PLR
197 
198  // Setup the hash tables
199  if (init_hashes()) return(1);
200 
201  // Setup hash tables for finding neighbors
202  if (init_neighbors()) return(1);
203  log << MSG::DEBUG << " PLR_ID::initialize_from_dict "
204  << endmsg;
205  log << MSG::DEBUG
206  << "Wafer range -> " << (std::string) m_full_wafer_range
207  << endmsg;
208  log << MSG::DEBUG
209  << "Pixel range -> " << (std::string) m_full_pixel_range
210  << endmsg;
211 
212  return 0;
213 }
214 
215 
216 int
218  MsgStream log(m_msgSvc, "PLR_ID");
219 
220  if (!m_dict) {
221  log << MSG::FATAL << " PLR_ID::initLevelsFromDict - dictionary NOT initialized " << endmsg;
222  return(1);
223  }
224 
225  // Find out which identifier field corresponds to each level. Use
226  // names to find each field/leve.
227 
228  m_INDET_INDEX = 999;
229  m_LUMI_INDEX = 999;
230  m_PLR_INDEX = 999;
231  m_BARREL_EC_INDEX = 999;
232  m_LAYER_DISK_INDEX = 999;
233  m_PHI_MODULE_INDEX = 999;
234  m_ETA_MODULE_INDEX = 999;
235  m_PHI_INDEX_INDEX = 999;
236  m_ETA_INDEX_INDEX = 999;
237 
238  // Save index to a PIXEL region for unpacking
242  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find pixel region index: id, reg "
243  << (std::string) id << " " << m_pixel_region_index
244  << endmsg;
245 
246  return(1);
247  }
248 
249  // Get levels
250  const IdDictField* field = m_dict->find_field("subdet");
251  if (field) {
252  m_INDET_INDEX = field->index();
253  } else {
254  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'subdet' field "
255  << endmsg;
256 
257  return(1);
258  }
259 
260  field = m_dict->find_field("part");
261  if (field) {
262  m_LUMI_INDEX = field->index();
263  } else {
264  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'part' field " << endmsg;
265  return(1);
266  }
267 
268  field = m_dict->find_field("PLR_or_BCM");
269  if (field) {
270  m_PLR_INDEX = field->index();
271  } else {
272  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'PLR_or_BCM' field " << endmsg;
273  return(1);
274  }
275 
276  field = m_dict->find_field("barrel_endcap");
277  if (field) {
278  m_BARREL_EC_INDEX = 3; //this will clash with another value
279  if (m_BARREL_EC_INDEX != field->index()){
280  log << MSG::INFO<<"Hardcoded value 3, field index "<< field->index() << endmsg;
281  }
282  } else {
283  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'barrel_endcap' field " << endmsg;
284  return(1);
285  }
286 
287  field = m_dict->find_field("layer");
288  if (field) {
289  m_LAYER_DISK_INDEX = 4;
290  } else {
291  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'layer' field " << endmsg;
292  return(1);
293  }
294 
295  field = m_dict->find_field("phi_module");
296  if (field) {
297  m_PHI_MODULE_INDEX = 5;
298  } else {
299  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'phi_module' field " << endmsg;
300  return(1);
301  }
302  field = m_dict->find_field("eta_module");
303  if (field) {
304 
305  m_ETA_MODULE_INDEX = 6;
306  } else {
307  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'eta_module' field " << endmsg;
308  return(1);
309  }
310  field = m_dict->find_field("phi_index");
311  if (field) {
312 
313  m_PHI_INDEX_INDEX = 7;
314  } else {
315  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'phi_index' field " << endmsg;
316  return(1);
317  }
318  field = m_dict->find_field("eta_index");
319  if (field) {
320 
321  m_ETA_INDEX_INDEX = 8;
322  } else {
323  log << MSG::FATAL << "PLR_ID::initLevelsFromDict - unable to find 'eta_index' field " << endmsg;
324  return(1);
325  }
326 
327  // Set the field implementations: for bec, lay/disk, eta/phi mod
328  // there are two kinds - shifted and non-shifted
329 
331 
341 
342 
343  log << MSG::DEBUG << "decode index and bit fields for each level: " << endmsg;
344  log << MSG::DEBUG << "indet " << m_indet_impl.show_to_string() << endmsg;
345  log << MSG::DEBUG << "lumi " << m_lumi_impl.show_to_string() << endmsg;
346  log << MSG::DEBUG << "plr " << m_plr_impl.show_to_string() << endmsg;
347  log << MSG::DEBUG << "bec " << m_bec_impl.show_to_string() << endmsg;
348  log << MSG::DEBUG << "bec_shift " << m_bec_shift_impl.show_to_string() << endmsg;
349  log << MSG::DEBUG << "lay_disk " << m_lay_disk_impl.show_to_string() << endmsg;
350  log << MSG::DEBUG << "lay_disk_shift " << m_lay_disk_shift_impl.show_to_string() << endmsg;
351  log << MSG::DEBUG << "phi_mod " << m_phi_mod_impl.show_to_string() << endmsg;
352  log << MSG::DEBUG << "phi_mod_shift " << m_phi_mod_shift_impl.show_to_string() << endmsg;
353  log << MSG::DEBUG << "eta_mod " << m_eta_mod_impl.show_to_string() << endmsg;
354  log << MSG::DEBUG << "eta_mod_shift " << m_eta_mod_shift_impl.show_to_string() << endmsg;
355  log << MSG::DEBUG << "phi_index " << m_phi_index_impl.show_to_string() << endmsg;
356  log << MSG::DEBUG << "eta_index " << m_eta_index_impl.show_to_string() << endmsg;
357  log << MSG::DEBUG << "bec_eta_mod " << m_bec_eta_mod_impl.show_to_string() << endmsg;
358 
359 
360 
361 
362  std::cout << "indet " << m_indet_impl.decode_index() << " "
363  << (std::string) m_indet_impl.ored_field() << " "
364  << std::hex << m_indet_impl.mask() << " "
365  << m_indet_impl.zeroing_mask() << " "
366  << std::dec << m_indet_impl.shift()
367  << " " << m_indet_impl.bits() << " " << m_indet_impl.bits_offset() << " ";
369  std::cout << "lumi " << m_lumi_impl.decode_index() << " "
370  << (std::string) m_lumi_impl.ored_field() << " "
371  << std::hex << m_lumi_impl.mask() << " "
372  << m_lumi_impl.zeroing_mask() << " "
373  << std::dec << m_lumi_impl.shift()
374  << " " << m_lumi_impl.bits() << " " << m_lumi_impl.bits_offset() << " ";
376  std::cout << "plr " << m_plr_impl.decode_index() << " "
377  << (std::string) m_plr_impl.ored_field() << " "
378  << std::hex << m_plr_impl.mask() << " "
379  << m_plr_impl.zeroing_mask() << " "
380  << std::dec << m_plr_impl.shift()
381  << " " << m_plr_impl.bits() << " " << m_plr_impl.bits_offset() << " ";
383  std::cout << "bec " << m_bec_impl.decode_index() << " "
384  << (std::string) m_bec_impl.ored_field() << " "
385  << std::hex << m_bec_impl.mask() << " "
386  << m_bec_impl.zeroing_mask() << " "
387  << std::dec << m_bec_impl.shift()
388  << " " << m_bec_impl.bits() << " " << m_bec_impl.bits_offset() << " ";
390  std::cout << "bec_shift " << m_bec_shift_impl.decode_index() << " "
391  << (std::string) m_bec_shift_impl.ored_field() << " "
392  << std::hex << m_bec_shift_impl.mask() << " "
393  << m_bec_shift_impl.zeroing_mask() << " "
394  << std::dec << m_bec_shift_impl.shift()
395  << " " << m_bec_shift_impl.bits() << " " << m_bec_shift_impl.bits_offset() << " ";
397  std::cout << "lay_disk " << m_lay_disk_impl.decode_index() << " "
398  << (std::string) m_lay_disk_impl.ored_field() << " "
399  << std::hex << m_lay_disk_impl.mask() << " "
400  << m_lay_disk_impl.zeroing_mask() << " "
401  << std::dec << m_lay_disk_impl.shift()
402  << " " << m_lay_disk_impl.bits() << " " << m_lay_disk_impl.bits_offset() << " ";
404  std::cout << "lay_disk_shift " << m_lay_disk_shift_impl.decode_index() << " "
405  << (std::string) m_lay_disk_shift_impl.ored_field() << " "
406  << std::hex << m_lay_disk_shift_impl.mask() << " "
408  << std::dec << m_lay_disk_shift_impl.shift()
409  << " " << m_lay_disk_shift_impl.bits() << " " << m_lay_disk_shift_impl.bits_offset() << " ";
411  std::cout << "phi_mod " << m_phi_mod_impl.decode_index() << " "
412  << (std::string) m_phi_mod_impl.ored_field() << " "
413  << std::hex << m_phi_mod_impl.mask() << " "
414  << m_phi_mod_impl.zeroing_mask() << " "
415  << std::dec << m_phi_mod_impl.shift()
416  << " " << m_phi_mod_impl.bits() << " " << m_phi_mod_impl.bits_offset() << " ";
418  std::cout << "phi_mod_shift " << m_phi_mod_shift_impl.decode_index() << " "
419  << (std::string) m_phi_mod_shift_impl.ored_field() << " "
420  << std::hex << m_phi_mod_shift_impl.mask() << " "
422  << std::dec << m_phi_mod_shift_impl.shift()
423  << " " << m_phi_mod_shift_impl.bits() << " " << m_phi_mod_shift_impl.bits_offset() << " ";
425  std::cout << "eta_mod " << m_eta_mod_impl.decode_index() << " "
426  << (std::string) m_eta_mod_impl.ored_field() << " "
427  << std::hex << m_eta_mod_impl.mask() << " "
428  << m_eta_mod_impl.zeroing_mask() << " "
429  << std::dec << m_eta_mod_impl.shift()
430  << " " << m_eta_mod_impl.bits() << " " << m_eta_mod_impl.bits_offset() << " ";
432  std::cout << "eta_mod_shift " << m_eta_mod_shift_impl.decode_index() << " "
433  << (std::string) m_eta_mod_shift_impl.ored_field() << " "
434  << std::hex << m_eta_mod_shift_impl.mask() << " "
436  << std::dec << m_eta_mod_shift_impl.shift()
437  << " " << m_eta_mod_shift_impl.bits() << " " << m_eta_mod_shift_impl.bits_offset() << " ";
439  std::cout << "phi_index " << m_phi_index_impl.decode_index() << " "
440  << (std::string) m_phi_index_impl.ored_field() << " "
441  << std::hex << m_phi_index_impl.mask() << " "
442  << m_phi_index_impl.zeroing_mask() << " "
443  << std::dec << m_phi_index_impl.shift()
444  << " " << m_phi_index_impl.bits() << " " << m_phi_index_impl.bits_offset() << " ";
446  std::cout << "eta_index " << m_eta_index_impl.decode_index() << " "
447  << (std::string) m_eta_index_impl.ored_field() << " "
448  << std::hex << m_eta_index_impl.mask() << " "
449  << m_eta_index_impl.zeroing_mask() << " "
450  << std::dec << m_eta_index_impl.shift()
451  << " " << m_eta_index_impl.bits() << " " << m_eta_index_impl.bits_offset() << " ";
453  std::cout << "bec_eta_mod " << m_bec_eta_mod_impl.decode_index() << " "
454  << (std::string) m_bec_eta_mod_impl.ored_field() << " "
455  << std::hex << m_bec_eta_mod_impl.mask() << " "
456  << m_bec_eta_mod_impl.zeroing_mask() << " "
457  << std::dec << m_bec_eta_mod_impl.shift()
458  << " " << m_bec_eta_mod_impl.bits() << " " << m_bec_eta_mod_impl.bits_offset() << " ";
460 
461 
462  std::cout << "PLR_ID::initLevelsFromDict - found levels " << std::endl;
463  std::cout << "subdet " << m_INDET_INDEX << std::endl;
464  std::cout << "part " << m_LUMI_INDEX << std::endl;
465  std::cout << "plr " << m_PLR_INDEX << std::endl;
466  std::cout << "barrel_endcap " << m_BARREL_EC_INDEX << std::endl;
467  std::cout << "layer or disk " << m_LAYER_DISK_INDEX << std::endl;
468  std::cout << "phi_module " << m_PHI_MODULE_INDEX << std::endl;
469  std::cout << "eta_module " << m_ETA_MODULE_INDEX << std::endl;
470  std::cout << "phi_index " << m_PHI_INDEX_INDEX << std::endl;
471  std::cout << "eta_index " << m_ETA_INDEX_INDEX << std::endl;
472 
473  return(0);
474 }
PixelID::init_hashes
int init_hashes()
Definition: PixelID.cxx:360
IdDictDictionary::find_region
IdDictRegion * find_region(const std::string &region_name) const
Definition: IdDictDictionary.cxx:101
IdDictMgr.h
AtlasDetectorID::indet_field_value
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
Definition: AtlasDetectorID.h:606
PixelID::m_bec_impl
IdDictFieldImplementation m_bec_impl
Definition: PixelID.h:314
IdDictDictionary::build_multirange
MultiRange build_multirange() const
Get MultiRange for full dictionary.
Definition: IdDictDictionary.cxx:290
PixelID::m_INDET_INDEX
size_type m_INDET_INDEX
Definition: PixelID.h:290
AtlasDetectorID::lumi
Identifier lumi(void) const
Definition: AtlasDetectorID.cxx:122
python.Constants.FATAL
int FATAL
Definition: Control/AthenaCommon/python/Constants.py:18
IdDictDictionary::version
const std::string & version() const
Dictionary version.
Definition: IdDictDictionary.h:341
IdDictFieldImplementation::show_to_string
std::string show_to_string(void) const
Definition: IdDictFieldImplementation.cxx:32
PixelID::m_pixel_id
Identifier m_pixel_id
Definition: PixelID.h:299
PixelID::init_neighbors
int init_neighbors()
Definition: PixelID.cxx:470
PixelID::m_eta_mod_shift_impl
IdDictFieldImplementation m_eta_mod_shift_impl
Definition: PixelID.h:321
PixelID::m_bec_shift_impl
IdDictFieldImplementation m_bec_shift_impl
Definition: PixelID.h:318
IdDictDictionary::region
const IdDictRegion & region(size_t i) const
Region at index i.
Definition: IdDictDictionary.h:350
PixelID::initialize_from_dictionary
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
Definition: PixelID.cxx:189
PixelID::m_indet_impl
IdDictFieldImplementation m_indet_impl
Definition: PixelID.h:312
IdDictDictionary.h
PixelID::m_dbm_field
Range::field m_dbm_field
Definition: PixelID.h:326
PLR_ID.h
PixelID::m_BARREL_EC_INDEX
size_type m_BARREL_EC_INDEX
Definition: PixelID.h:292
PixelID::m_phi_index_impl
IdDictFieldImplementation m_phi_index_impl
Definition: PixelID.h:322
PLR_ID::m_plr_impl
IdDictFieldImplementation m_plr_impl
Definition: PLR_ID.h:40
PixelID::m_ETA_INDEX_INDEX
size_type m_ETA_INDEX_INDEX
Definition: PixelID.h:297
PixelID::m_phi_mod_shift_impl
IdDictFieldImplementation m_phi_mod_shift_impl
Definition: PixelID.h:320
PixelID::m_full_pixel_range
MultiRange m_full_pixel_range
Definition: PixelID.h:302
IdentifierField::clear
void clear()
Set methods.
Definition: IdentifierField.cxx:224
ExpandedIdentifier
Definition: DetectorDescription/Identifier/Identifier/ExpandedIdentifier.h:102
PixelID::m_eta_mod_impl
IdDictFieldImplementation m_eta_mod_impl
Definition: PixelID.h:317
IdDictFieldImplementation::pack
void pack(int value, Identifier &id) const
Definition: IdDictFieldImplementation.h:173
AtlasDetectorID::plr_field_value
int plr_field_value() const
Definition: AtlasDetectorID.h:636
AtlasDetectorID::m_msgSvc
IMessageSvc * m_msgSvc
pointer to the message service
Definition: AtlasDetectorID.h:369
IdDictFieldImplementation::decode_index
bool decode_index() const
Definition: IdDictFieldImplementation.h:231
PixelID::m_ETA_MODULE_INDEX
size_type m_ETA_MODULE_INDEX
Definition: PixelID.h:295
ReadOfcFromCool.field
field
Definition: ReadOfcFromCool.py:48
IdDictDictionary::name
const std::string & name() const
Dictionary name.
Definition: IdDictDictionary.h:332
PixelID::m_baseExpandedIdentifier
ExpandedIdentifier m_baseExpandedIdentifier
Definition: PixelID.h:287
IdDictDictionary::find_field
IdDictField * find_field(const std::string &name) const
Definition: IdDictDictionary.cxx:47
CalibDbCompareRT.region_id
region_id
Definition: CalibDbCompareRT.py:67
IdDictRegion
Definition: IdDictRegion.h:20
PLR_ID::initialize_from_dictionary
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
Definition: PLR_ID.cxx:37
PixelID::m_bec_eta_mod_impl
IdDictFieldImplementation m_bec_eta_mod_impl
Definition: PixelID.h:324
IdDictRegion::implementation
const IdDictFieldImplementation & implementation(size_t i) const
Definition: IdDictRegion.cxx:34
IdDictMgr
Definition: IdDictMgr.h:15
IdDictFieldImplementation::shift
size_type shift() const
Definition: IdDictFieldImplementation.h:226
IdDictMgr::find_dictionary
IdDictDictionary * find_dictionary(const std::string &name) const
Access dictionary by name.
Definition: IdDictMgr.cxx:124
PLR_ID::m_PLR_INDEX
size_type m_PLR_INDEX
Definition: PLR_ID.h:34
PixelID::m_baseIdentifier
Identifier m_baseIdentifier
Definition: PixelID.h:286
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
IdDictFieldImplementation::bits_offset
size_type bits_offset() const
Definition: IdDictFieldImplementation.h:208
PixelID::m_full_wafer_range
MultiRange m_full_wafer_range
Definition: PixelID.h:301
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
IdDictFieldImplementation::ored_field
const Range::field & ored_field() const
Definition: IdDictFieldImplementation.h:196
AtlasDetectorID::lumi_field_value
int lumi_field_value() const
Definition: AtlasDetectorID.h:633
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
PLR_ID::m_lumi_impl
IdDictFieldImplementation m_lumi_impl
Definition: PLR_ID.h:39
IdDictDictionary::get_label_value
int get_label_value(const std::string &field, const std::string &label, int &value) const
Definition: IdDictDictionary.cxx:75
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:239
IdentifierHash.h
PLR_ID::initLevelsFromDict
int initLevelsFromDict()
Definition: PLR_ID.cxx:217
AtlasDetectorID::setDictVersion
virtual void setDictVersion(const IdDictMgr &dict_mgr, const std::string &name) override
Definition: AtlasDetectorID.cxx:499
Range
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
Definition: DetectorDescription/Identifier/Identifier/Range.h:29
PLR_ID::PLR_ID
PLR_ID()
Definition: PLR_ID.cxx:26
IdDictDictionary
Definition: IdDictDictionary.h:30
PLR_ID::m_LUMI_INDEX
size_type m_LUMI_INDEX
Definition: PLR_ID.h:33
PixelID::m_pixel_region_index
size_type m_pixel_region_index
Definition: PixelID.h:289
AtlasDetectorID::is_lumi
bool is_lumi(Identifier id) const
Definition: AtlasDetectorID.h:801
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
IdDictField.h
IdDictFieldImplementation::zeroing_mask
value_type zeroing_mask() const
Definition: IdDictFieldImplementation.h:220
python.Constants.INFO
int INFO
Definition: Control/AthenaCommon/python/Constants.py:15
PixelID::m_eta_index_impl
IdDictFieldImplementation m_eta_index_impl
Definition: PixelID.h:323
PixelID::m_phi_mod_impl
IdDictFieldImplementation m_phi_mod_impl
Definition: PixelID.h:316
DEBUG
#define DEBUG
Definition: page_access.h:11
PixelID::m_barrel_field
Range::field m_barrel_field
Definition: PixelID.h:305
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
PixelID::m_lay_disk_shift_impl
IdDictFieldImplementation m_lay_disk_shift_impl
Definition: PixelID.h:319
PixelID::m_LAYER_DISK_INDEX
size_type m_LAYER_DISK_INDEX
Definition: PixelID.h:293
Identifier::value_type
unsigned long long value_type
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:27
IdDictRegion.h
IdentifierField::show
void show() const
Definition: IdentifierField.cxx:382
IdDictField
Definition: IdDictField.h:15
PixelID::m_PHI_MODULE_INDEX
size_type m_PHI_MODULE_INDEX
Definition: PixelID.h:294
PixelID
Definition: PixelID.h:67
PixelID::m_lay_disk_impl
IdDictFieldImplementation m_lay_disk_impl
Definition: PixelID.h:315
PixelID::m_dict
const IdDictDictionary * m_dict
Definition: PixelID.h:300
IdDictFieldImplementation::mask
size_type mask() const
Definition: IdDictFieldImplementation.h:214
IdentifierField::add_value
void add_value(element_type value)
Definition: IdentifierField.cxx:250
IdDictFieldImplementation::bits
size_type bits() const
Definition: IdDictFieldImplementation.h:202
PixelID::m_PHI_INDEX_INDEX
size_type m_PHI_INDEX_INDEX
Definition: PixelID.h:296