ATLAS Offline Software
ZDC_DetFactory.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "ZDC_DetFactory.h"
6 #include "ZDC_ZDCModule.h"
7 #include "ZDC_RPDModule.h"
8 #include "ZdcIdentifier/ZdcID.h"
9 #include "ZDC_BRANModule.h"
10 
11 
13 #include "GeoModelKernel/GeoMaterial.h"
14 #include "GeoModelKernel/GeoElement.h"
15 #include "GeoModelKernel/GeoBox.h"
16 #include "GeoModelKernel/GeoNameTag.h"
17 #include "GeoModelKernel/GeoPhysVol.h"
18 #include "GeoModelKernel/GeoFullPhysVol.h"
19 #include "GeoModelKernel/GeoTransform.h"
20 #include "GeoModelKernel/GeoIdentifierTag.h"
21 #include "GeoModelKernel/Units.h"
22 #include "StoreGate/StoreGateSvc.h"
23 #include "GaudiKernel/SystemOfUnits.h"
24 
25 
26 #include "GeoModelKernel/GeoMaterial.h"
29 #include "CLHEP/Geometry/Transform3D.h"
30 
31 // Author Chad Lantz
32 // chad.stephen.lantz@cern.ch
33 
34 // This is the ZDC Geomodel description :: see some details at
35 // https://atlasop.cern.ch/atlas-point1/twiki/pub/Main/ZDCOperationManualShifter/zdc_layout.png
36 
37 // Each mod is located at centered at 141.580 m
38 // I have assumed that each module is 154mm which is 4 mm longer than the ones shown in the above webpage
39 // thus my modules are 13.4cm tungsten +1cm steel on either side
40 
41 // I have assumed that the cavity is 1016mm (4*4=16mm larger than the one in the above webpage)
42 // Ionization chamber material is air currently
43 // Note: C side (side 0) EM module has pixels, A side (side 1) doesn't
44 
46  AthMessaging("ZDC_DetFactory"),
47  m_detectorManager(NULL),
48  m_detectorStore(detStore)
49 {
50  if (m_detectorStore->retrieve( m_zdcID ).isFailure() ) {
51  MsgStream LogStream(Athena::getMessageSvc(), "ZDC_DetectorFactory::ZDC_DetFactory");
52  LogStream << MSG::ERROR << "execute: Could not retrieve ZdcID object from the detector store" << endmsg;
53  }
54 }
55 
57 
59  m_RPDs_On = false; //Flag for both RPD modules
60  m_zdcOn = {{true, true, true, true}, //If the given ZDC is on
61  {true, true, true, true}};
62  m_zdcPos = {{-397.0, -27.0, 153.0, 303.0}, //Positions of the ZDC modules
63  {-397.0, -27.0, 153.0, 303.0}};
64  m_zdcModType = {{3,2,1,1}, //Module types of the ZDC modules
65  {1,2,1,1}};
66 }
67 
69  m_RPDs_On = true; //Flag for both RPD modules
70  m_BRANs_On = true; //Flag for both BRAN modules
71  m_zdcOn = {{true, true, true, true}, //If the given ZDC is on
72  {true, true, true, true}};
73  m_zdcPos = {{-344, 52.15, 220.8, 375.8},
74  {-325.5, 20.15, 188.8, 343.8}};
75  m_zdcModType = {{3,2,1,1}, //Module types of the ZDC modules
76  {1,2,1,1}};
77  m_rpdPos = {new GeoAlignableTransform(GeoTrf::Translate3D(2.012 * Gaudi::Units::mm, 21.388 * Gaudi::Units::mm, -178.0 * Gaudi::Units::mm)),
78  new GeoAlignableTransform(GeoTrf::Translate3D(1.774 * Gaudi::Units::mm, 21.344 * Gaudi::Units::mm, -210.0 * Gaudi::Units::mm))};
79  m_branPos = {-89.5, -121.5};
80 }
81 
82 void ZDC_DetFactory::create(GeoPhysVol *world)
83 {
85  MsgStream LogStream(Athena::getMessageSvc(), "ZDC_DetectorFactory::create");
86 
87  StoredMaterialManager *theMaterialManager;
88  if (StatusCode::SUCCESS != m_detectorStore->retrieve(theMaterialManager, "MATERIALS")) {
89  MsgStream LogStream(Athena::getMessageSvc(), "ZDC_DetectorFactory::create");
90  LogStream << MSG::ERROR << "execute: Could not retrieve StoredMaterialManager object from the detector store" << endmsg;
91  return;
92  }
93 
94  buildMaterials(theMaterialManager);
95 
96  //Create the TAN/TAXN slot
97  const GeoMaterial *Air = theMaterialManager->getMaterial("std::Air");
98  GeoBox *Envelope_Box = new GeoBox(91 * Gaudi::Units::mm * 0.5, 181 * Gaudi::Units::mm * 0.5, 94.3 * Gaudi::Units::cm * 0.5);
99  GeoLogVol *Envelope_Logical = new GeoLogVol("Envelope_Logical", Envelope_Box, Air);
100 
101  char volName[256];
102  for(int side : {0, 1}){
103  int sideSign = (side == 0) ? -1 : 1;
104  GeoFullPhysVol *Envelope_Physical = new GeoFullPhysVol(Envelope_Logical);
105 
106  /*************************************************
107  * Place ZDC modules
108  **************************************************/
109  for(int module = 0; module < 4; ++module){
110  if(!m_zdcOn[side][module]) continue;
112  zdcMod->create(Envelope_Physical, new GeoAlignableTransform(GeoTrf::TranslateZ3D(m_zdcPos[side][module] * Gaudi::Units::mm)));
113  }
114 
115  /*************************************************
116  * Place RPD
117  **************************************************/
118  if(m_RPDs_On){
119  ZDC_RPDModule *rpdMod = new ZDC_RPDModule(m_detectorStore, sideSign, 4, m_zdcID);
120  rpdMod->create(Envelope_Physical, m_rpdPos[side]);
121  }
122 
123  /*************************************************
124  * Place BRAN
125  **************************************************/
126  if(m_BRANs_On){
127  ZDC_BRANModule *branMod = new ZDC_BRANModule(m_detectorStore, sideSign, 5, m_zdcID);
128  branMod->create(Envelope_Physical, new GeoAlignableTransform(GeoTrf::TranslateZ3D(m_branPos[side] * Gaudi::Units::mm)));
129  }
130 
131  /*************************************************
132  * Place TAN/TAXN slot
133  **************************************************/
134  sprintf(volName, "Zdc::ZDC_Air_Envelope %c", (side == 0) ? 'C' : 'A');
135  world->add(new GeoNameTag(volName));
136  world->add(new GeoIdentifierTag(m_zdcID->channel_id(sideSign, 0, ZdcIDType::INACTIVE,ZdcIDVolChannel::AIR).get_identifier32().get_compact()));
137  world->add(new GeoAlignableTransform(GeoTrf::TranslateZ3D(sideSign*141.580 * CLHEP::m)));
138  if(side == 0) world->add(new GeoAlignableTransform(GeoTrf::RotateY3D(180 * Gaudi::Units::deg)));
139  world->add(Envelope_Physical);
140 
141  m_detectorManager->addTreeTop(Envelope_Physical);
142  }
143 }
144 
146 
147  const GeoElement *Oxygen = materialManager->getElement("Oxygen");
148  const GeoElement *Silicon = materialManager->getElement("Silicon");
149  const GeoElement *Hydrogen = materialManager->getElement("Hydrogen");
150  const GeoElement *Nitrogen = materialManager->getElement("Nitrogen");
151  const GeoElement *Carbon = materialManager->getElement("Carbon");
152  const GeoElement *Argon = materialManager->getElement("Argon");
153  const GeoElement *Tung = materialManager->getElement("Wolfram");
154  const GeoElement *Iron = materialManager->getElement("Iron");
155  const GeoElement *Nickel = materialManager->getElement("Nickel");
156 
157  const int nEntries = 50; // Number of data points in each array
158  double eV = Gaudi::Units::eV;
159  double cm = Gaudi::Units::cm;
160 
161  //Evenly distributed photon energy bins for the coming arrays of material properties. Range is selected for a PMT which is sensitive from 300-650nm wavelength
162  double photonEnergy[nEntries] = {0};
163  double minEnergy = 1.90769 * eV; double maxEnergy = 4.08882 * eV;
164  double step = (maxEnergy-minEnergy)/nEntries;
165  for(int i=0; i<nEntries; ++i){
166  photonEnergy[i] = minEnergy + i*step;
167  }
168 
169  // Optical Air density and composition obtained from
170  // From https://physics.nist.gov/cgi-bin/Star/compos.pl?matno=104
172  OpAir->add(Nitrogen, 0.755);
173  OpAir->add(Oxygen , 0.232);
174  OpAir->add(Argon , 0.013);
175 
176  // The air in the modules must have refractive index defined for total internal reflection to work
177  // From NIST https://emtoolbox.nist.gov/wavelength/documentation.asp
178  double RefractiveIndexAir[nEntries];
179  for(int i=0; i<nEntries; ++i)
180  RefractiveIndexAir[i] = 1.000271800;
181 
183  airMPT->AddProperty("RINDEX", photonEnergy, RefractiveIndexAir, nEntries);
184  OpAir->SetMaterialPropertiesTable(airMPT);
185  OpAir->lock();
186  materialManager->addMaterial("ZDC", OpAir);
187 
188  // RPD fiber core and ZDC rod material
189  // Composition from https://physics.nist.gov/cgi-bin/Star/compos.pl?matno=245
191  OpSilicaCore->add(Silicon, 0.467);
192  OpSilicaCore->add(Oxygen, 0.533);
193 
194  // Refractive index of fused silica obtained from
195  // https://www.heraeus.com/media/media/hca/doc_hca/products_and_solutions_8/optics/Data_and_Properties_Optics_fused_silica_EN.pdf
196  double silica_RIND[] = {1.45656, 1.45694, 1.45737, 1.45781, 1.45825, 1.4587 , 1.45914, 1.45959, 1.46003, 1.46048,
197  1.46095, 1.46145, 1.46194, 1.46242, 1.46289, 1.4634 , 1.46394, 1.46448, 1.46502, 1.46556,
198  1.46608, 1.46666, 1.46725, 1.46784, 1.46843, 1.46902, 1.46961, 1.47024, 1.4709 , 1.47155,
199  1.4722 , 1.47288, 1.47356, 1.47425, 1.47494, 1.47566, 1.4764 , 1.47715, 1.4779 , 1.47864,
200  1.47935, 1.48014, 1.48093, 1.48172, 1.48254, 1.48339, 1.48424, 1.4851 , 1.48598, 1.48689};
201 
202  // Absorption length index of fused silica derrived from
203  // https://www.heraeus.com/media/media/hca/doc_hca/products_and_solutions_8/optics/Data_and_Properties_Optics_fused_silica_EN.pdf
204  double silica_ABSL[nEntries];
205  for(int i=0; i<nEntries-2; ++i)
206  silica_ABSL[i] = 302.163 * cm;
207  silica_ABSL[nEntries - 1] = silica_ABSL[nEntries - 2] = 204.542 * cm;
208 
210  silicaCoreMPT->AddProperty("RINDEX" , photonEnergy, silica_RIND, nEntries); // index of refraction
211  silicaCoreMPT->AddProperty("ABSLENGTH", photonEnergy, silica_ABSL, nEntries); // absorption length
212  OpSilicaCore->SetMaterialPropertiesTable(silicaCoreMPT);
213  OpSilicaCore->lock();
214  materialManager->addMaterial("ZDC", OpSilicaCore);
215 
216  // RPD fiber cladding
217  // Composition from https://physics.nist.gov/cgi-bin/Star/compos.pl?matno=245
219  OpSilicaClad->add(Silicon, 0.467);
220  OpSilicaClad->add(Oxygen, 0.533);
221 
222  // Numerical aperture is given by data sheet as 0.22 and NA = sqrt( n1^2 - n2^2 ), so n2 = sqrt( n1^2 - NA^2 ) where n1 is silica_RIND
223  // https://www.content.molex.com/dxdam/literature/987650-8936.pdf
224  double silica_clad_RIND[] = {1.43985, 1.44023, 1.44067, 1.44112, 1.44156, 1.44201, 1.44246, 1.44291, 1.44336, 1.44381,
225  1.44429, 1.4448 , 1.44529, 1.44577, 1.44625, 1.44677, 1.44731, 1.44786, 1.44841, 1.44895,
226  1.44948, 1.45007, 1.45067, 1.45126, 1.45186, 1.45245, 1.45305, 1.45369, 1.45435, 1.45501,
227  1.45567, 1.45635, 1.45705, 1.45774, 1.45844, 1.45916, 1.45992, 1.46067, 1.46143, 1.46219,
228  1.4629 , 1.4637 , 1.46449, 1.46529, 1.46612, 1.46698, 1.46785, 1.46871, 1.4696 , 1.47052};
229 
230  // Silica cladding
232  silicaCladMPT->AddProperty("RINDEX" , photonEnergy, silica_clad_RIND, nEntries); // index of refraction
233  silicaCladMPT->AddProperty("ABSLENGTH", photonEnergy, silica_ABSL , nEntries); // absorption length
234  OpSilicaClad->SetMaterialPropertiesTable(silicaCladMPT);
235  OpSilicaClad->lock();
236  materialManager->addMaterial("ZDC", OpSilicaClad);
237 
238  // Kapton fiber optic buffer material
239  // Composition from https://physics.nist.gov/cgi-bin/Star/compos.pl?matno=179
241  OpKapton->add(Hydrogen, 0.026362);
242  OpKapton->add(Carbon , 0.691133);
243  OpKapton->add(Nitrogen, 0.073270);
244  OpKapton->add(Oxygen , 0.209235);
245 
246  // Refractive index obtained from
247  // https://engineering.case.edu/centers/sdle/sites/engineering.case.edu.centers.sdle/files/optical_properties_of_materials.pdf
248  double kapton_RIND[] = {1.7095 , 1.7111 , 1.7143 , 1.7191, 1.7207 , 1.7255 , 1.7271 , 1.73157, 1.7351 , 1.7383 ,
249  1.7416 , 1.7464 , 1.74978, 1.7545, 1.7593 , 1.766 , 1.7692 , 1.7758 , 1.78179, 1.79009,
250  1.794 , 1.80245, 1.8074 , 1.8157, 1.82184, 1.82659, 1.8344 , 1.84222, 1.8514 , 1.8584 ,
251  1.86392, 1.8723 , 1.88251, 1.8959, 1.90567, 1.92604, 1.93911, 1.95036, 1.96867, 1.97804,
252  1.9905 , 1.99755, 2.00821, 2.0146, 2.03435, 2.05705, 2.08078, 2.10021, 2.12912, 2.14333};
253 
254  // Reflectivity obtained from
255  // https://amostech.com/TechnicalPapers/2018/Poster/Bengtson.pdf
256  double kapton_REFL[] = {0.502195 , 0.473894 , 0.446164 , 0.413816 , 0.375095 , 0.336845 , 0.293879 , 0.239299 , 0.200573 , 0.141596 ,
257  0.0949924 , 0.0590249 , 0.0353952 , 0.0206475 , 0.01305 , 0.00915075, 0.00722501, 0.00551299, 0.00552271, 0.00553177,
258  0.00554062, 0.00554942, 0.00555642, 0.00556579, 0.0083157, 0.011944 , 0.0172255 , 0.0225071 , 0.0277887 , 0.0330702 ,
259  0.0383518 , 0.0436334 , 0.0489149 , 0.0541965 , 0.0594781, 0.0647597 , 0.0700412 , 0.0753228 , 0.0806044 , 0.0858859 ,
260  0.0911675 , 0.0964491 , 0.101731 , 0.107012 , 0.112294 , 0.117575 , 0.122857 , 0.128139 , 0.13342 , 0.138702 };
261 
262  // Absorption length obtained from
263  // https://pubs.rsc.org/fa/content/articlehtml/2018/ra/c7ra12101f
264  double kapton_ABSL[] = {0.00867389 * cm, 0.00842316 * cm, 0.00818715 * cm, 0.00798542 * cm, 0.00774517 * cm, 0.00751684 * cm, 0.00729959 * cm, 0.00709258 * cm, 0.00685686 * cm, 0.0066337 * cm,
265  0.00642212 * cm, 0.00616231 * cm, 0.00587855 * cm, 0.00561968 * cm, 0.00541849 * cm, 0.0052337 * cm, 0.00504545 * cm, 0.00487671 * cm, 0.00474623 * cm, 0.00461459 * cm,
266  0.00449314 * cm, 0.00437628 * cm, 0.0042637 * cm, 0.00413695 * cm, 0.00401798 * cm, 0.00382827 * cm, 0.003625 * cm, 0.00335813 * cm, 0.00303474 * cm, 0.00264672 * cm,
267  0.00226016 * cm, 0.00185863 * cm, 0.00146109 * cm, 0.00116967 * cm, 0.000901973 * cm, 0.000721492 * cm, 0.000559526 * cm, 0.000463349 * cm, 0.00034795 * cm, 0.000317447 * cm,
268  0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm, 0.000317447 * cm};
269 
270  // Kapton
272  kaptonMPT->AddProperty("RINDEX" , photonEnergy, kapton_RIND, nEntries);
273  kaptonMPT->AddProperty("ABSLENGTH" , photonEnergy, kapton_ABSL, nEntries);
274  kaptonMPT->AddProperty("REFLECTIVITY", photonEnergy, kapton_REFL, nEntries);
275  OpKapton->SetMaterialPropertiesTable(kaptonMPT);
276  OpKapton->lock();
277  materialManager->addMaterial("ZDC", OpKapton);
278 
279  // Absorber composition: savannah.cern.ch/task/download.php?file_id=22925
280  GeoMaterial *Tungsten = new GeoMaterial("ZDC::Tungsten", 18.155 * GeoModelKernelUnits::g / Gaudi::Units::cm3);
281  Tungsten->add(Tung , 0.948);
282  Tungsten->add(Nickel, 0.037);
283  Tungsten->add(Iron , 0.015);
284  Tungsten->lock();
285  materialManager->addMaterial("ZDC", Tungsten);
286 
287  // ZDC housing material
288  GeoMaterial *Steel = new GeoMaterial("ZDC::Steel", 7.9 * GeoModelKernelUnits::g / Gaudi::Units::cm3);
289  Steel->add(Iron , 0.98);
290  Steel->add(Carbon, 0.02);
291  Steel->lock();
292  materialManager->addMaterial("ZDC", Steel);
293 
294 }
295 
ZDC_DetFactory::initializePbPb2023
void initializePbPb2023()
Definition: ZDC_DetFactory.cxx:68
ZDC_DetFactory::m_rpdPos
std::vector< GeoAlignableTransform * > m_rpdPos
Definition: ZDC_DetFactory.h:48
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
ZDC_BRANModule.h
ZDC_DetFactory::~ZDC_DetFactory
~ZDC_DetFactory()
Definition: ZDC_DetFactory.cxx:56
getMessageSvc.h
singleton-like access to IMessageSvc via open function and helper
ZDC_DetFactory::m_detectorManager
ZDC_DetManager * m_detectorManager
Definition: ZDC_DetFactory.h:40
python.PhysicalConstants.STP_Temperature
float STP_Temperature
Definition: PhysicalConstants.py:119
GeoMaterialPropertiesTable::AddProperty
void AddProperty(const char *key, double *PhotonMomenta, double *PropertyValues, int NumEntries)
Definition: GeoMaterialPropertiesTable.cxx:31
GeoExtendedMaterial.h
ZDC_DetManager
Definition: ZDC_DetManager.h:13
ZDC_DetFactory::create
virtual void create(GeoPhysVol *world) override
Definition: ZDC_DetFactory.cxx:82
ZDC_DetManager::addTreeTop
void addTreeTop(PVLink)
Definition: ZDC_DetManager.cxx:36
StoredMaterialManager::getElement
virtual const GeoElement * getElement(const std::string &name)=0
cm3
#define cm3
ZDC_RPDModule::create
virtual void create(GeoFullPhysVol *mother, GeoAlignableTransform *trf) override
Definition: ZDC_RPDModule.cxx:26
deg
#define deg
Definition: SbPolyhedron.cxx:17
ZDC_BRANModule
Definition: ZDC_BRANModule.h:10
stateSolid
@ stateSolid
Definition: GeoExtendedMaterial.h:25
GeoExtendedMaterial::SetMaterialPropertiesTable
void SetMaterialPropertiesTable(GeoMaterialPropertiesTable *MPT)
Definition: GeoExtendedMaterial.h:73
AIR
@ AIR
Definition: ZdcID.h:22
ZDC_ZDCModule::create
virtual void create(GeoFullPhysVol *mother, GeoAlignableTransform *trf) override
Definition: ZDC_ZDCModule.cxx:46
ZDC_ZDCModule.h
ZDC_DetFactory::getDetectorManager
virtual const ZDC_DetManager * getDetectorManager() const override
Definition: ZDC_DetFactory.cxx:296
Athena::getMessageSvc
IMessageSvc * getMessageSvc(bool quiet=false)
Definition: getMessageSvc.cxx:20
ZDC_RPDModule.h
StoreGateSvc::retrieve
StatusCode retrieve(const T *&ptr) const
Retrieve the default object into a const T*.
ZdcID::channel_id
Identifier channel_id(int side, int module, int type, int channel) const
Definition: ZdcID.h:205
TRT::Hit::side
@ side
Definition: HitInfo.h:83
ZDC_DetFactory.h
ZDC_DetFactory::initializePbPb2015
void initializePbPb2015()
Definition: ZDC_DetFactory.cxx:58
cm
const double cm
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/FCAL_ChannelMap.cxx:25
python.PyAthena.module
module
Definition: PyAthena.py:134
stateGas
@ stateGas
Definition: GeoExtendedMaterial.h:25
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
ZDC_DetFactory::m_branPos
std::vector< float > m_branPos
Definition: ZDC_DetFactory.h:49
Identifier32::get_compact
value_type get_compact(void) const
Get the compact id.
Definition: Identifier32.h:171
lumiFormat.i
int i
Definition: lumiFormat.py:92
python.CaloCondTools.g
g
Definition: CaloCondTools.py:15
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
ZDC_DetFactory::ZDC_DetFactory
ZDC_DetFactory(StoreGateSvc *)
Definition: ZDC_DetFactory.cxx:45
StoredMaterialManager::addMaterial
virtual void addMaterial(const std::string &space, GeoMaterial *material)=0
ZDC_DetFactory::m_zdcID
const ZdcID * m_zdcID
Definition: ZDC_DetFactory.h:42
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition: AthMessaging.h:55
ZDC_BRANModule::create
virtual void create(GeoFullPhysVol *mother, GeoAlignableTransform *trf) override
Definition: ZDC_BRANModule.cxx:33
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
ZDC_RPDModule
Definition: ZDC_RPDModule.h:10
python.SystemOfUnits.eV
int eV
Definition: SystemOfUnits.py:155
StoredMaterialManager.h
ZDC_ZDCModule
Definition: ZDC_ZDCModule.h:10
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
ZdcID.h
DiTauMassTools::MaxHistStrategyV2::e
e
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
ZDC_DetFactory::m_RPDs_On
bool m_RPDs_On
Definition: ZDC_DetFactory.h:43
ZDC_DetFactory::m_zdcModType
std::vector< std::vector< int > > m_zdcModType
Definition: ZDC_DetFactory.h:47
StoredMaterialManager::getMaterial
virtual const GeoMaterial * getMaterial(const std::string &name)=0
StoredMaterialManager
This class holds one or more material managers and makes them storeable, under StoreGate.
Definition: StoredMaterialManager.h:28
LArCellBinning.step
step
Definition: LArCellBinning.py:158
ZDC_DetFactory::buildMaterials
void buildMaterials(StoredMaterialManager *materialManager)
Definition: ZDC_DetFactory.cxx:145
GeoMaterialPropertiesTable
Definition: GeoMaterialPropertiesTable.h:20
Identifier::get_identifier32
Identifier32 get_identifier32(void) const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
ZDC_DetFactory::m_zdcPos
std::vector< std::vector< float > > m_zdcPos
Definition: ZDC_DetFactory.h:46
ZDC_DetFactory::m_BRANs_On
bool m_BRANs_On
Definition: ZDC_DetFactory.h:44
dqBeamSpot.nEntries
int nEntries
Definition: dqBeamSpot.py:73
INACTIVE
@ INACTIVE
Definition: ZdcID.h:21
StoreGateSvc.h
ZDC_DetFactory::m_detectorStore
StoreGateSvc * m_detectorStore
Definition: ZDC_DetFactory.h:41
ZDC_DetFactory::m_zdcOn
std::vector< std::vector< bool > > m_zdcOn
Definition: ZDC_DetFactory.h:45
GeoExtendedMaterial
Definition: GeoExtendedMaterial.h:28