ATLAS Offline Software
Loading...
Searching...
No Matches
InDetDD::ServiceVolume Class Reference

#include <ServiceVolume.h>

Collaboration diagram for InDetDD::ServiceVolume:

Public Member Functions

 ServiceVolume ()
 ServiceVolume (const ServiceVolume &)
void setRmin (double rmin)
void setRmax (double rmax)
void setRmin2 (double rmin2)
void setRmax2 (double rmax2)
void setZmin (double zmin)
void setZmax (double zmax)
void setZsymm (bool zsymm)
void setMaterial (const std::string &mat)
void setMaterial (const GeoMaterial *mat)
void setVolName (const std::string &name)
void setShapeType (const std::string &shapeType)
void setPhiLoc (double phiLoc)
void setPhiWidth (double phiWidth)
void setNeedsRotation (bool flag)
void setSides (int sides)
void setNCopies (int num)
void setRegion (const std::string &region)
void setLabel (const std::string &name, int volId)
void setLabel (const std::string &name)
void addLabel (const std::string &name)
void setOrigVolume (double volume)
void resetGeoShape ()
void reduceSize (double safety)
void setGeoShape (const GeoShape *geoShape, double volume=0)
void setEnvelopeNum (int num)
void setParentEnvelope (int num)
void setZShift (double shift)
double rmin () const
double rmax () const
double rmin2 () const
double rmax2 () const
double zmin () const
double zmax () const
bool zsymm () const
const std::string & materialName () const
const GeoMaterial * material () const
const std::string & volName () const
const std::string & shapeType () const
double phiLoc () const
double phiWidth () const
bool needsRotation () const
int sides () const
int nCopies () const
const std::string & region () const
std::string fullLabel () const
double length () const
double zposition () const
double rposition () const
double volume () const
double origVolume () const
const GeoShape * getShape () const
bool splittableInR () const
bool splittableInZ () const
int envelopeNum () const
int envelopeParent () const
double zShift () const
void print () const

Private Member Functions

void setSplittable ()

Private Attributes

double m_rmin
double m_rmax
double m_rmin2
double m_rmax2
double m_zmin
double m_zmax
bool m_zsymm
GeoShapeHolder m_geoShape ATLAS_THREAD_SAFE
const GeoMaterial * m_material
std::string m_materialName
std::string m_volName
std::string m_shapeType
double m_phiLoc
double m_phiWidth
bool m_needsRotation
int m_sides
int m_nCopies
double m_origVolume
double m_volume ATLAS_THREAD_SAFE
double m_safety
std::string m_region
std::string m_label
bool m_lockGeoShape
bool m_splittableR
bool m_splittableZ
int m_envNum
int m_envParentNum
double m_zShift
std::mutex m_mutex

Detailed Description

Constructor & Destructor Documentation

◆ ServiceVolume() [1/2]

ServiceVolume::ServiceVolume ( )

Definition at line 96 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

97 : m_rmin(0),
98 m_rmax(0),
99 m_rmin2(0),
100 m_rmax2(0),
101 m_zmin(0),
102 m_zmax(0),
103 //m_volId(0),
104 m_zsymm(false),
105 m_geoShape(nullptr),
106 m_material(nullptr),
107 m_phiLoc(0),
108 m_phiWidth(0),
109 m_needsRotation(false),
110 m_sides(0),
111 m_nCopies(1),
112 //m_origLength(0),
113 m_origVolume(0),
114 m_volume(0),
115 m_safety(0),
117 m_splittableR(true),
118 m_splittableZ(true),
119 m_envNum(0),
121 m_zShift(0.),
122 m_mutex()
123 {}

◆ ServiceVolume() [2/2]

ServiceVolume::ServiceVolume ( const ServiceVolume & rhs)

Definition at line 125 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

126 : m_rmin(rhs.m_rmin),
127 m_rmax(rhs.m_rmax),
128 m_rmin2(rhs.m_rmin2),
129 m_rmax2(rhs.m_rmax2),
130 m_zmin(rhs.m_zmin),
131 m_zmax(rhs.m_zmax),
132 //m_volId(rhs.m_volId),
133 m_zsymm(rhs.m_zsymm),
134 m_geoShape(rhs.m_geoShape),
135 m_material(rhs.m_material),
136 m_materialName(rhs.m_materialName),
137 m_volName(rhs.m_volName),
138 m_shapeType(rhs.m_shapeType),
139 m_phiLoc(rhs.m_phiLoc),
140 m_phiWidth(rhs.m_phiWidth),
141 m_needsRotation(rhs.m_needsRotation),
142 m_sides(rhs.m_sides),
143 m_nCopies(rhs.m_nCopies),
144 //m_origLength(rhs.m_origLength),
145 m_origVolume(rhs.m_origVolume),
146 m_volume(rhs.m_volume),
147 m_safety(rhs.m_safety),
148 m_region(rhs.m_region),
149 m_label(rhs.m_label),
150 m_lockGeoShape(rhs.m_lockGeoShape),
151 m_splittableR(rhs.m_splittableR),
152 m_splittableZ(rhs.m_splittableZ),
153 m_envNum(rhs.m_envNum),
154 m_envParentNum(rhs.m_envParentNum),
155 m_zShift(rhs.m_zShift),
156 m_mutex()
157 {}

Member Function Documentation

◆ addLabel()

void InDetDD::ServiceVolume::addLabel ( const std::string & name)
inline

◆ envelopeNum()

int InDetDD::ServiceVolume::envelopeNum ( ) const
inline

Definition at line 91 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

91{return m_envNum; }

◆ envelopeParent()

int InDetDD::ServiceVolume::envelopeParent ( ) const
inline

◆ fullLabel()

std::string ServiceVolume::fullLabel ( ) const

Definition at line 176 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

176 {
177 if (m_volName.empty()) return m_label;
178
179 return m_label + "_" + m_volName;
180 }

◆ getShape()

const GeoShape * ServiceVolume::getShape ( ) const

Definition at line 194 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

194 {
195 std::lock_guard<std::mutex> lock(m_mutex);
196
197 // If prebuilt then return
198 if (m_geoShape.get()) return m_geoShape.get();
199
200 //
201 // Dimensions
202 //
203 //double rmin = rmin();
204 //double rmax = rmax();
205 //double rmin2 = rmin2();
206 //double rmax2 = rmax2();
207 //double phiLoc = phiLoc();
208 //double phiWidth = phiWidth();
209 //int sides = sides();
210 //const std::string & shapeType = shapeType();
211
212 double halflength = 0.5 * length();
213
214 //std::cout << "Building service volume " << logName << ": "
215 // << rmin << ", "
216 // << rmax << ", "
217 // << halflength << ", "
218 // << materialName << std::endl;
219
220 const GeoShape* serviceShape = nullptr;
221 double volume = 0;
222
223 // Check if service needs to be shifted
224 // if(fabs(m_zShift)>0.001)
225 // std::cout<<"SHIFTED SERVICE : "<<m_volName<<" "<<m_shapeType<<std::endl;
226
227 if (m_shapeType.empty() || m_shapeType == "TUBE") {
228 serviceShape = new GeoTube(m_rmin, m_rmax, halflength);
229 } else if (m_shapeType == "TUBS") {
230 serviceShape = new GeoTubs(m_rmin, m_rmax, halflength, m_phiLoc, m_phiWidth);
231 } else if (m_shapeType == "CONS" || m_shapeType == "CONE") {
232 double phiWidthTmp = m_phiWidth;
233 if (m_shapeType == "CONE" || phiWidthTmp == 0) {
234 phiWidthTmp = 2 * M_PI;
235 }
236 serviceShape = new GeoCons(m_rmin, m_rmin2, m_rmax, m_rmax2, halflength, m_phiLoc, phiWidthTmp);
237 } else if (m_shapeType == "PGON") {
238 GeoPgon* shapeTmp = new GeoPgon(m_phiLoc, 2 * M_PI, m_sides);
239 shapeTmp->addPlane(-halflength, m_rmin, m_rmax);
240 shapeTmp->addPlane(halflength, m_rmin2, m_rmax2);
241 serviceShape = shapeTmp;
242 } else if (m_shapeType == "PGON2") {
243 // Radius defined at the side, not the corner
244 double alpha = M_PI / m_sides;
245 double cosalpha = cos(alpha);
246 double rminB = m_rmin / cosalpha;
247 double rmaxB = m_rmax / cosalpha;
248 double rmin2B = m_rmin2 / cosalpha;
249 double rmax2B = m_rmax2 / cosalpha;
250 GeoPgon* shapeTmp = new GeoPgon(m_phiLoc - alpha, 2 * M_PI, m_sides);
251 shapeTmp->addPlane(-halflength, rminB, rmaxB);
252 shapeTmp->addPlane(halflength, rmin2B, rmax2B);
253 serviceShape = shapeTmp;
254 } else if (m_shapeType == "PGON3" || m_shapeType == "PGON4") {
255 // Outer edge
256 GeoPgon* shapeTmp1 = nullptr;
257 if (m_shapeType == "PGON3") {
258 shapeTmp1 = new GeoPgon(m_phiLoc, 2 * M_PI, m_sides);
259 shapeTmp1->addPlane(-halflength, 0, m_rmax);
260 shapeTmp1->addPlane(halflength, 0, m_rmax2);
261 } else { //PGON4
262 double alpha = M_PI / m_sides;
263 double cosalpha = cos(alpha);
264 double rmaxB = m_rmax / cosalpha;
265 double rmax2B = m_rmax2 / cosalpha;
266 shapeTmp1 = new GeoPgon(m_phiLoc - alpha, 2 * M_PI, m_sides);
267 shapeTmp1->addPlane(-halflength, 0, rmaxB);
268 shapeTmp1->addPlane(halflength, 0, rmax2B);
269 }
270 // Don't trust boolean volume calculation.
271 volume = shapeTmp1->volume();
272 // Inner edge
273 GeoShape* shapeTmp2 = nullptr;
274 if (m_rmin == m_rmin2) {
275 shapeTmp2 = new GeoTube(0, m_rmin, halflength + 0.1 * Gaudi::Units::mm);
276 volume -= 2 * M_PI * m_rmin * m_rmin * halflength;
277 } else {
278 shapeTmp2 = new GeoCons(0, 0, m_rmin, m_rmin2, halflength + 0.1 * Gaudi::Units::mm, 0, 2 * M_PI);
279 volume -= 2 * M_PI * pow(0.5 * (m_rmin + m_rmin2), 2) * halflength;
280 }
281 serviceShape = &(shapeTmp1->subtract(*shapeTmp2));
282 }
283// else if (m_shapeType == "PGON31"){
284// // Outer edge
285// GeoTube *shapeTmp1 = new GeoTube(0,m_rmax,halflength);
286// halflength+=0.1*CLHEP::mm;
287// double alpha = M_PI/m_sides;
288// double cosalpha = cos(alpha);
289// double rmaxB = m_rmin/cosalpha;
290// double rmax2B = m_rmin2/cosalpha;
291// GeoPgon* shapeTmp2 = new GeoPgon(m_phiLoc-alpha,2*M_PI,m_sides);
292// shapeTmp2->addPlane(-halflength,0.,rmaxB);
293// shapeTmp2->addPlane(halflength,0.,rmax2B);
294// // Don't trust boolean volume calculation.
295// volume = shapeTmp1->volume() - shapeTmp2->volume();
296// serviceShape = &(shapeTmp1->subtract(*shapeTmp2));
297// }
298 else if (m_shapeType == "ROD") {
299 serviceShape = new GeoTube(0, 0.5 * m_phiWidth, halflength);
300 } else if (m_shapeType == "ROD2") {
301 // std::cout<<"ROD2 : "<<m_rmin<<" "<<m_rmin2<<" "<<0.5*m_phiWidth<<" "<<halflength<<std::endl;
302 serviceShape = new GeoTube(m_rmin2 - m_rmin, 0.5 * m_phiWidth, halflength);
303 } else if (m_shapeType == "BOX") {
304 serviceShape = new GeoBox(0.5 * (m_rmax - m_rmin), 0.5 * m_phiWidth, halflength);
305 } else if (m_shapeType == "TRAP") {
306 double thickness = 0.5 * (m_rmax - m_rmin);
307 double averad = 0.5 * (m_rmin + m_rmax);
308 double w1 = 0.5 * m_phiWidth * m_rmin / averad;
309 double w2 = 0.5 * m_phiWidth * m_rmax / averad;
310 serviceShape = new GeoTrap(halflength, 0, 0, thickness, w1, w2, 0, thickness, w1, w2, 0);
311 } else {
312 // msg(MSG::ERROR) << "Unrecognized shape for services" << m_shapeType << endmsg;
313 std::cout << "ServiceVolume: ERROR: Unrecognized shape for services" << m_shapeType << std::endl;
314 }
315
316 if (!volume && serviceShape != nullptr) volume = serviceShape->volume();
317
318 m_volume = volume;
319 m_geoShape = serviceShape;
320 return serviceShape;
321 }
#define M_PI
constexpr int pow(int base, int exp) noexcept

◆ length()

double InDetDD::ServiceVolume::length ( ) const
inline

Definition at line 82 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

82{return std::abs(m_zmax - m_zmin) - 2*m_safety;}

◆ material()

const GeoMaterial * InDetDD::ServiceVolume::material ( ) const
inline

Definition at line 71 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

71{return m_material;}

◆ materialName()

const std::string & InDetDD::ServiceVolume::materialName ( ) const
inline

◆ nCopies()

int InDetDD::ServiceVolume::nCopies ( ) const
inline

Definition at line 78 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

78{return m_nCopies;}

◆ needsRotation()

bool InDetDD::ServiceVolume::needsRotation ( ) const
inline

◆ origVolume()

double ServiceVolume::origVolume ( ) const

Definition at line 349 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

349 {
350 if (m_origVolume) return m_origVolume;
351
352 return volume();
353 }

◆ phiLoc()

double InDetDD::ServiceVolume::phiLoc ( ) const
inline

Definition at line 74 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

74{return m_phiLoc;}

◆ phiWidth()

double InDetDD::ServiceVolume::phiWidth ( ) const
inline

Definition at line 75 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

75{return m_phiWidth;}

◆ print()

void ServiceVolume::print ( ) const

Definition at line 183 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

183 {
184 std::cout << m_rmin << " "
185 << m_rmax << " "
186 << m_zmin << " "
187 << m_zmax << " "
188 << m_region << " "
189 << fullLabel()
190 << std::endl;
191 }

◆ reduceSize()

void ServiceVolume::reduceSize ( double safety)

Definition at line 160 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

160 {
161 // Don't do anything if its a very thin volume.
162 if (length() > 4. * safety) {
164 m_safety = safety;
165 }
166 std::lock_guard<std::mutex> lock(m_mutex);
167 m_geoShape = nullptr;
168 }
void swap(ElementLinkVector< DOBJ > &lhs, ElementLinkVector< DOBJ > &rhs)

◆ region()

const std::string & InDetDD::ServiceVolume::region ( ) const
inline

Definition at line 80 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

80{return m_region;}

◆ resetGeoShape()

void InDetDD::ServiceVolume::resetGeoShape ( )
inline

Definition at line 52 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

52{if (!m_lockGeoShape) m_geoShape.reset();}

◆ rmax()

double InDetDD::ServiceVolume::rmax ( ) const
inline

Definition at line 63 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

63{return m_rmax;}

◆ rmax2()

double InDetDD::ServiceVolume::rmax2 ( ) const
inline

Definition at line 65 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

65{return m_rmax2;}

◆ rmin()

double InDetDD::ServiceVolume::rmin ( ) const
inline

Definition at line 62 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

62{return m_rmin;}

◆ rmin2()

double InDetDD::ServiceVolume::rmin2 ( ) const
inline

Definition at line 64 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

64{return m_rmin2;}

◆ rposition()

double InDetDD::ServiceVolume::rposition ( ) const
inline

Definition at line 84 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

84{return 0.5 * (m_rmin + m_rmax);}

◆ setEnvelopeNum()

void InDetDD::ServiceVolume::setEnvelopeNum ( int num)
inline

◆ setGeoShape()

void ServiceVolume::setGeoShape ( const GeoShape * geoShape,
double volume = 0 )

Definition at line 332 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

332 {
333 m_geoShape.reset();
334 if (geoShape) {
335 m_volume = volume;
336 // We allow a volume to specified as the volume calculation for some shapes (ie boolean volumes) are unreliable.
337 // If volume is not supplied, get it from the shape itself.
338 if (!m_volume) m_volume = geoShape->volume();
339 m_geoShape = geoShape;
340 m_lockGeoShape = true; // This disables resetGeoShape().
341 setShapeType("CUSTOM");
342 } else {
343 // If pass null pointer we unlock the shape.
344 m_lockGeoShape = false;
345 }
346 }

◆ setLabel() [1/2]

void InDetDD::ServiceVolume::setLabel ( const std::string & name)
inline

◆ setLabel() [2/2]

void ServiceVolume::setLabel ( const std::string & name,
int volId )

Definition at line 171 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

171 {
172 m_label = std::format("{:s}{:02d}", name, volId);
173 }

◆ setMaterial() [1/2]

void InDetDD::ServiceVolume::setMaterial ( const GeoMaterial * mat)
inline

◆ setMaterial() [2/2]

void InDetDD::ServiceVolume::setMaterial ( const std::string & mat)
inline

◆ setNCopies()

void InDetDD::ServiceVolume::setNCopies ( int num)
inline

◆ setNeedsRotation()

void InDetDD::ServiceVolume::setNeedsRotation ( bool flag)
inline

◆ setOrigVolume()

void InDetDD::ServiceVolume::setOrigVolume ( double volume)
inline

◆ setParentEnvelope()

void InDetDD::ServiceVolume::setParentEnvelope ( int num)
inline

◆ setPhiLoc()

◆ setPhiWidth()

void InDetDD::ServiceVolume::setPhiWidth ( double phiWidth)
inline

◆ setRegion()

void InDetDD::ServiceVolume::setRegion ( const std::string & region)
inline

◆ setRmax()

void InDetDD::ServiceVolume::setRmax ( double rmax)
inline

◆ setRmax2()

void InDetDD::ServiceVolume::setRmax2 ( double rmax2)
inline

◆ setRmin()

void InDetDD::ServiceVolume::setRmin ( double rmin)
inline

◆ setRmin2()

void InDetDD::ServiceVolume::setRmin2 ( double rmin2)
inline

◆ setShapeType()

void InDetDD::ServiceVolume::setShapeType ( const std::string & shapeType)
inline

◆ setSides()

void InDetDD::ServiceVolume::setSides ( int sides)
inline

◆ setSplittable()

void ServiceVolume::setSplittable ( )
private

Definition at line 356 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

356 {
358 if (m_shapeType == "CUSTOM") {
360 } else if (!(m_shapeType.empty() || m_shapeType == "TUBE" || m_shapeType == "TUBS")) {
361 m_splittableR = false;
362 }
363 }

◆ setVolName()

void InDetDD::ServiceVolume::setVolName ( const std::string & name)
inline

◆ setZmax()

void InDetDD::ServiceVolume::setZmax ( double zmax)
inline

◆ setZmin()

void InDetDD::ServiceVolume::setZmin ( double zmin)
inline

◆ setZShift()

void InDetDD::ServiceVolume::setZShift ( double shift)
inline

Definition at line 60 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

60{ m_zShift=shift; }

◆ setZsymm()

void InDetDD::ServiceVolume::setZsymm ( bool zsymm)
inline

◆ shapeType()

const std::string & InDetDD::ServiceVolume::shapeType ( ) const
inline

Definition at line 73 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

73{return m_shapeType;}

◆ sides()

int InDetDD::ServiceVolume::sides ( ) const
inline

Definition at line 77 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

77{return m_sides;}

◆ splittableInR()

bool InDetDD::ServiceVolume::splittableInR ( ) const
inline

◆ splittableInZ()

bool InDetDD::ServiceVolume::splittableInZ ( ) const
inline

◆ volName()

const std::string & InDetDD::ServiceVolume::volName ( ) const
inline

Definition at line 72 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

72{return m_volName;}

◆ volume()

double ServiceVolume::volume ( ) const

Definition at line 324 of file InDetGeoModelUtils/src/ServiceVolume.cxx.

324 {
325 // Make sure shape is already built.
326 getShape();
327 std::lock_guard<std::mutex> lock(m_mutex);
328 return m_volume;
329 }

◆ zmax()

double InDetDD::ServiceVolume::zmax ( ) const
inline

◆ zmin()

double InDetDD::ServiceVolume::zmin ( ) const
inline

◆ zposition()

double InDetDD::ServiceVolume::zposition ( ) const
inline

Definition at line 83 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

83{return 0.5 * (m_zmin + m_zmax);}

◆ zShift()

double InDetDD::ServiceVolume::zShift ( ) const
inline

Definition at line 93 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

93{return m_zShift; }

◆ zsymm()

bool InDetDD::ServiceVolume::zsymm ( ) const
inline

Definition at line 69 of file InDetGeoModelUtils/InDetGeoModelUtils/ServiceVolume.h.

69{return m_zsymm;}

Member Data Documentation

◆ ATLAS_THREAD_SAFE [1/2]

GeoShapeHolder m_geoShape InDetDD::ServiceVolume::ATLAS_THREAD_SAFE
mutableprivate

◆ ATLAS_THREAD_SAFE [2/2]

double m_volume InDetDD::ServiceVolume::ATLAS_THREAD_SAFE
mutableprivate

◆ m_envNum

int InDetDD::ServiceVolume::m_envNum
private

◆ m_envParentNum

int InDetDD::ServiceVolume::m_envParentNum
private

◆ m_label

std::string InDetDD::ServiceVolume::m_label
private

◆ m_lockGeoShape

bool InDetDD::ServiceVolume::m_lockGeoShape
private

◆ m_material

const GeoMaterial* InDetDD::ServiceVolume::m_material
private

◆ m_materialName

std::string InDetDD::ServiceVolume::m_materialName
private

◆ m_mutex

std::mutex InDetDD::ServiceVolume::m_mutex
mutableprivate

◆ m_nCopies

int InDetDD::ServiceVolume::m_nCopies
private

◆ m_needsRotation

bool InDetDD::ServiceVolume::m_needsRotation
private

◆ m_origVolume

double InDetDD::ServiceVolume::m_origVolume
private

◆ m_phiLoc

double InDetDD::ServiceVolume::m_phiLoc
private

◆ m_phiWidth

double InDetDD::ServiceVolume::m_phiWidth
private

◆ m_region

std::string InDetDD::ServiceVolume::m_region
private

◆ m_rmax

double InDetDD::ServiceVolume::m_rmax
private

◆ m_rmax2

double InDetDD::ServiceVolume::m_rmax2
private

◆ m_rmin

double InDetDD::ServiceVolume::m_rmin
private

◆ m_rmin2

double InDetDD::ServiceVolume::m_rmin2
private

◆ m_safety

double InDetDD::ServiceVolume::m_safety
private

◆ m_shapeType

std::string InDetDD::ServiceVolume::m_shapeType
private

◆ m_sides

int InDetDD::ServiceVolume::m_sides
private

◆ m_splittableR

bool InDetDD::ServiceVolume::m_splittableR
private

◆ m_splittableZ

bool InDetDD::ServiceVolume::m_splittableZ
private

◆ m_volName

std::string InDetDD::ServiceVolume::m_volName
private

◆ m_zmax

double InDetDD::ServiceVolume::m_zmax
private

◆ m_zmin

double InDetDD::ServiceVolume::m_zmin
private

◆ m_zShift

double InDetDD::ServiceVolume::m_zShift
private

◆ m_zsymm

bool InDetDD::ServiceVolume::m_zsymm
private

The documentation for this class was generated from the following files: