AliRoot Core  3dc7879 (3dc7879)
AliFMDGeometryBuilder Class Reference

Builder of FMD geometry. This class takes care of actually building the geometry using the TGeo classes. Various parameters are fecthed from the AliFMDGeometry manager. More...

#include <AliFMDGeometryBuilder.h>

Inheritance diagram for AliFMDGeometryBuilder:

Public Member Functions

 AliFMDGeometryBuilder ()
 
 AliFMDGeometryBuilder (Bool_t detailed)
 
virtual ~AliFMDGeometryBuilder ()
 
virtual void Exec (Option_t *option="")
 
virtual void UseAssembly (Bool_t use=kTRUE)
 
virtual void SetDetailed (Bool_t use)
 
Int_t GetSectorOff () const
 
Int_t GetModuleOff () const
 
Int_t GetRingOff () const
 
Int_t GetDetectorOff () const
 

Protected Member Functions

 AliFMDGeometryBuilder (const AliFMDGeometryBuilder &o)
 
AliFMDGeometryBuilderoperator= (const AliFMDGeometryBuilder &)
 
virtual TGeoShape * MakeXTRU (const TObjArray &verticies, Double_t thick) const
 
virtual TGeoVolume * RingGeometry (const AliFMDRing *r)
 
virtual TGeoShape * HoneycombShape (Int_t id, Char_t ring, double r1, double r2, double w, double t, double c=0.3)
 
virtual TGeoVolume * TensionBox ()
 
virtual TGeoVolume * DetectorGeometry (const AliFMDDetector *d, TGeoVolume *motherTop, TGeoVolume *motherBot, Double_t zmother, TGeoVolume *innerTop, TGeoVolume *innerBot, TGeoVolume *outerTop=0, TGeoVolume *outerBot=0)
 
virtual TGeoVolume * FMD1Geometry (const AliFMD1 *d, TGeoVolume *innerTop, TGeoVolume *innerBot)
 
virtual TGeoVolume * FMD2Geometry (const AliFMD2 *d, TGeoVolume *innerTop, TGeoVolume *innerBot, TGeoVolume *outerTop, TGeoVolume *outerBot)
 
virtual TGeoVolume * FMD3Geometry (const AliFMD3 *d, TGeoVolume *innerTop, TGeoVolume *innerBot, TGeoVolume *outerTop, TGeoVolume *outerBot)
 

Protected Attributes

TArrayI fActiveId
 
Bool_t fDetailed
 Active volume ID's. More...
 
Bool_t fUseAssembly
 
Int_t fSectorOff
 
Int_t fModuleOff
 
Int_t fRingOff
 
Int_t fDetectorOff
 
TGeoMedium * fSi
 
TGeoMedium * fC
 Si Medium. More...
 
TGeoMedium * fAl
 C Medium. More...
 
TGeoMedium * fPCB
 Al Medium. More...
 
TGeoMedium * fChip
 PCB Medium. More...
 
TGeoMedium * fAir
 Chip Medium. More...
 
TGeoMedium * fPlastic
 Air Medium. More...
 
TGeoMedium * fCopper
 Plastic Medium. More...
 
TGeoMedium * fSteel
 Copper Medium. More...
 

Static Protected Attributes

static const Char_t * fgkActiveName = "F%cAC"
 Steel Medium. More...
 
static const Char_t * fgkSectorName = "F%cSC"
 
static const Char_t * fgkStripName = "F%cST"
 
static const Char_t * fgkSensorName = "F%cSE"
 
static const Char_t * fgkPCBName = "F%cPB"
 
static const Char_t * fgkCuName = "F%cCU"
 
static const Char_t * fgkChipName = "F%cCH"
 
static const Char_t * fgkLongLegName = "F%cLL"
 
static const Char_t * fgkShortLegName = "F%cSL"
 
static const Char_t * fgkFrontVName = "F%cFH"
 
static const Char_t * fgkBackVName = "F%cBH"
 
static const Char_t * fgkRingTopName = "F%cTV"
 
static const Char_t * fgkRingBotName = "F%cBV"
 
static const Char_t * fgkHCName = "F%dH%c"
 
static const Char_t * fgkIHCName = "F%dI%c"
 
static const Char_t * fgkNoseName = "F3SN"
 
static const Char_t * fgkBackName = "F%dSB"
 
static const Char_t * fgkTopName = "F%dSU"
 
static const Char_t * fgkBeamName = "F%dSL"
 
static const Char_t * fgkFlangeName = "F%dSF"
 
static const Char_t * fgkFMDDCuName = "F%cDC"
 
static const Char_t * fgkFMDDPCBName = "F%cDP"
 
static const Char_t * fgkFMDDChipName = "F%cDI"
 
static const Char_t * fgkFMDDName = "F%cDD"
 
static const Char_t * fgkFMDName = "F%dM%c"
 

Detailed Description

Builder of FMD geometry. This class takes care of actually building the geometry using the TGeo classes. Various parameters are fecthed from the AliFMDGeometry manager.

Definition at line 43 of file AliFMDGeometryBuilder.h.

Constructor & Destructor Documentation

AliFMDGeometryBuilder::AliFMDGeometryBuilder ( )

CTOR

Definition at line 99 of file AliFMDGeometryBuilder.cxx.

AliFMDGeometryBuilder::AliFMDGeometryBuilder ( Bool_t  detailed)

CTOR

Parameters
detailedWhether to make a detailed geometry.

Definition at line 123 of file AliFMDGeometryBuilder.cxx.

virtual AliFMDGeometryBuilder::~AliFMDGeometryBuilder ( )
inlinevirtual

Definition at line 51 of file AliFMDGeometryBuilder.h.

AliFMDGeometryBuilder::AliFMDGeometryBuilder ( const AliFMDGeometryBuilder o)
inlineprotected

Copy CTOR

Definition at line 69 of file AliFMDGeometryBuilder.h.

Member Function Documentation

TGeoVolume * AliFMDGeometryBuilder::DetectorGeometry ( const AliFMDDetector d,
TGeoVolume *  motherTop,
TGeoVolume *  motherBot,
Double_t  zmother,
TGeoVolume *  innerTop,
TGeoVolume *  innerBot,
TGeoVolume *  outerTop = 0,
TGeoVolume *  outerBot = 0 
)
protectedvirtual

Make a detector volume

Parameters
dDetector geometry
motherTopMother volume (detector volume)
motherBotMother volume (detector volume)
zmotherZ position of mother
innerTopInner ring volume
innerBotInner ring volume
outerTopOuter ring volume
outerBotOuter ring volume
Returns
Detector volume

Definition at line 579 of file AliFMDGeometryBuilder.cxx.

Referenced by FMD1Geometry(), FMD2Geometry(), FMD3Geometry(), and operator=().

void AliFMDGeometryBuilder::Exec ( Option_t *  option = "")
virtual

Register

Definition at line 1396 of file AliFMDGeometryBuilder.cxx.

Referenced by AliFMDGeometry::Build(), and ~AliFMDGeometryBuilder().

TGeoVolume * AliFMDGeometryBuilder::FMD1Geometry ( const AliFMD1 d,
TGeoVolume *  innerTop,
TGeoVolume *  innerBot 
)
protectedvirtual

Make FMD1 volume

Parameters
dDetector geometry
innerTopInner ring volume
innerBotInner ring volume
Returns
FMD1 volume

Definition at line 671 of file AliFMDGeometryBuilder.cxx.

Referenced by Exec(), and operator=().

TGeoVolume * AliFMDGeometryBuilder::FMD2Geometry ( const AliFMD2 d,
TGeoVolume *  innerTop,
TGeoVolume *  innerBot,
TGeoVolume *  outerTop,
TGeoVolume *  outerBot 
)
protectedvirtual

Make FMD2 volume

Parameters
dDetector geometry
innerTopInner ring volume
innerBotInner ring volume
outerTopOuter ring volume
outerBotOuter ring volume
Returns
FMD2 volume

Definition at line 819 of file AliFMDGeometryBuilder.cxx.

Referenced by Exec(), and operator=().

TGeoVolume * AliFMDGeometryBuilder::FMD3Geometry ( const AliFMD3 d,
TGeoVolume *  innerTop,
TGeoVolume *  innerBot,
TGeoVolume *  outerTop,
TGeoVolume *  outerBot 
)
protectedvirtual

Make FMD3 volume

Parameters
dDetector geometry
innerTopInner ring volume
innerBotInner ring volume
outerTopOuter ring volume
outerBotOuter ring volume
Returns
FMD3 volume

Definition at line 1018 of file AliFMDGeometryBuilder.cxx.

Referenced by Exec(), and operator=().

Int_t AliFMDGeometryBuilder::GetDetectorOff ( ) const
inline
Returns
Detector offfset in the volume tree

Definition at line 66 of file AliFMDGeometryBuilder.h.

Int_t AliFMDGeometryBuilder::GetModuleOff ( ) const
inline
Returns
Module offset in volume tree

Definition at line 62 of file AliFMDGeometryBuilder.h.

Int_t AliFMDGeometryBuilder::GetRingOff ( ) const
inline
Returns
Ring offset in the volume tree

Definition at line 64 of file AliFMDGeometryBuilder.h.

Int_t AliFMDGeometryBuilder::GetSectorOff ( ) const
inline
Returns
Sector offset in volume tree

Definition at line 60 of file AliFMDGeometryBuilder.h.

TGeoShape * AliFMDGeometryBuilder::HoneycombShape ( Int_t  id,
Char_t  ring,
double  r1,
double  r2,
double  w,
double  t,
double  c = 0.3 
)
protectedvirtual

Make a honey comb shape from passed parameters.

Parameters
idDetector identifier (1,2, or 3)
ringRing identifier ('I' or 'O')
r1Inner radius
r2Outer radius
wwidth
tThickness of material
cClearing from horizontal.
Returns
Pointer to newly allocated composite shape.

Definition at line 491 of file AliFMDGeometryBuilder.cxx.

Referenced by DetectorGeometry(), and operator=().

TGeoShape * AliFMDGeometryBuilder::MakeXTRU ( const TObjArray verticies,
Double_t  thick 
) const
protectedvirtual

Make a polygonic extrusion shape based on verticies passed in verticies

Parameters
verticiesList of verticies
thickThickness
Returns
newly allocated polygonic extrusion shape

Definition at line 154 of file AliFMDGeometryBuilder.cxx.

Referenced by operator=(), and RingGeometry().

AliFMDGeometryBuilder& AliFMDGeometryBuilder::operator= ( const AliFMDGeometryBuilder )
inlineprotected

Assignment operator

Returns
Reference to this object

Definition at line 93 of file AliFMDGeometryBuilder.h.

TGeoVolume * AliFMDGeometryBuilder::RingGeometry ( const AliFMDRing r)
protectedvirtual

Make a ring volume

Parameters
rRing geometry
Returns
Ring volume

Definition at line 187 of file AliFMDGeometryBuilder.cxx.

Referenced by Exec(), and operator=().

virtual void AliFMDGeometryBuilder::SetDetailed ( Bool_t  use)
inlinevirtual

Whether to make a detailed geometry or not.

Parameters
useIf true, make a detailed geometry

Definition at line 58 of file AliFMDGeometryBuilder.h.

Referenced by AliFMDGeometry::Build().

TGeoVolume * AliFMDGeometryBuilder::TensionBox ( )
protectedvirtual

Get the tension box volume

Returns

Definition at line 550 of file AliFMDGeometryBuilder.cxx.

Referenced by FMD2Geometry(), FMD3Geometry(), and operator=().

virtual void AliFMDGeometryBuilder::UseAssembly ( Bool_t  use = kTRUE)
inlinevirtual
Parameters
useWheher to assemblies in the geometry definition

Definition at line 55 of file AliFMDGeometryBuilder.h.

Referenced by AliFMDGeometry::Build().

Member Data Documentation

TArrayI AliFMDGeometryBuilder::fActiveId
protected

Definition at line 205 of file AliFMDGeometryBuilder.h.

Referenced by AliFMDGeometryBuilder(), Exec(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fAir
protected

Chip Medium.

Definition at line 218 of file AliFMDGeometryBuilder.h.

Referenced by Exec().

TGeoMedium* AliFMDGeometryBuilder::fAl
protected

C Medium.

Definition at line 215 of file AliFMDGeometryBuilder.h.

Referenced by DetectorGeometry(), Exec(), FMD2Geometry(), FMD3Geometry(), and TensionBox().

TGeoMedium* AliFMDGeometryBuilder::fC
protected

Si Medium.

Definition at line 214 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), FMD1Geometry(), FMD2Geometry(), and FMD3Geometry().

TGeoMedium* AliFMDGeometryBuilder::fChip
protected

PCB Medium.

Definition at line 217 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fCopper
protected

Plastic Medium.

Definition at line 220 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

Bool_t AliFMDGeometryBuilder::fDetailed
protected

Active volume ID's.

Definition at line 206 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), RingGeometry(), and SetDetailed().

Int_t AliFMDGeometryBuilder::fDetectorOff
protected

Definition at line 211 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), GetDetectorOff(), and RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkActiveName = "F%cAC"
staticprotected

Steel Medium.

Definition at line 223 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkBackName = "F%dSB"
staticprotected

Definition at line 239 of file AliFMDGeometryBuilder.h.

Referenced by FMD2Geometry().

const Char_t * AliFMDGeometryBuilder::fgkBackVName = "F%cBH"
staticprotected

Definition at line 233 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkBeamName = "F%dSL"
staticprotected

Definition at line 241 of file AliFMDGeometryBuilder.h.

const Char_t * AliFMDGeometryBuilder::fgkChipName = "F%cCH"
staticprotected

Definition at line 229 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkCuName = "F%cCU"
staticprotected

Definition at line 228 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkFlangeName = "F%dSF"
staticprotected

Definition at line 242 of file AliFMDGeometryBuilder.h.

const Char_t * AliFMDGeometryBuilder::fgkFMDDChipName = "F%cDI"
staticprotected

Definition at line 245 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkFMDDCuName = "F%cDC"
staticprotected

Definition at line 243 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkFMDDName = "F%cDD"
staticprotected

Definition at line 246 of file AliFMDGeometryBuilder.h.

const Char_t * AliFMDGeometryBuilder::fgkFMDDPCBName = "F%cDP"
staticprotected

Definition at line 244 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkFMDName = "F%dM%c"
staticprotected

Definition at line 247 of file AliFMDGeometryBuilder.h.

Referenced by FMD1Geometry(), FMD2Geometry(), and FMD3Geometry().

const Char_t * AliFMDGeometryBuilder::fgkFrontVName = "F%cFH"
staticprotected

Definition at line 232 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkHCName = "F%dH%c"
staticprotected

Definition at line 236 of file AliFMDGeometryBuilder.h.

Referenced by DetectorGeometry(), and HoneycombShape().

const Char_t * AliFMDGeometryBuilder::fgkIHCName = "F%dI%c"
staticprotected

Definition at line 237 of file AliFMDGeometryBuilder.h.

const Char_t * AliFMDGeometryBuilder::fgkLongLegName = "F%cLL"
staticprotected

Definition at line 230 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkNoseName = "F3SN"
staticprotected

Definition at line 238 of file AliFMDGeometryBuilder.h.

const Char_t * AliFMDGeometryBuilder::fgkPCBName = "F%cPB"
staticprotected

Definition at line 227 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkRingBotName = "F%cBV"
staticprotected

Definition at line 235 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkRingTopName = "F%cTV"
staticprotected

Definition at line 234 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkSectorName = "F%cSC"
staticprotected

Definition at line 224 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkSensorName = "F%cSE"
staticprotected

Definition at line 226 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkShortLegName = "F%cSL"
staticprotected

Definition at line 231 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkStripName = "F%cST"
staticprotected

Definition at line 225 of file AliFMDGeometryBuilder.h.

Referenced by RingGeometry().

const Char_t * AliFMDGeometryBuilder::fgkTopName = "F%dSU"
staticprotected

Definition at line 240 of file AliFMDGeometryBuilder.h.

Referenced by FMD2Geometry().

Int_t AliFMDGeometryBuilder::fModuleOff
protected

Definition at line 209 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), GetModuleOff(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fPCB
protected

Al Medium.

Definition at line 216 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fPlastic
protected

Air Medium.

Definition at line 219 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), FMD1Geometry(), and FMD3Geometry().

Int_t AliFMDGeometryBuilder::fRingOff
protected

Definition at line 210 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), GetRingOff(), and RingGeometry().

Int_t AliFMDGeometryBuilder::fSectorOff
protected

Definition at line 208 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), GetSectorOff(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fSi
protected

Definition at line 213 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), and RingGeometry().

TGeoMedium* AliFMDGeometryBuilder::fSteel
protected

Copper Medium.

Definition at line 221 of file AliFMDGeometryBuilder.h.

Referenced by Exec(), FMD2Geometry(), and FMD3Geometry().

Bool_t AliFMDGeometryBuilder::fUseAssembly
protected

Definition at line 207 of file AliFMDGeometryBuilder.h.

Referenced by UseAssembly().


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