AliRoot Core  a565103 (a565103)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMUONTriggerGeometryBuilder Class Reference

MUON Trigger stations geometry construction class. More...

#include <AliMUONTriggerGeometryBuilder.h>

Inheritance diagram for AliMUONTriggerGeometryBuilder:

Public Member Functions

 AliMUONTriggerGeometryBuilder (AliMUON *muon)
 
 AliMUONTriggerGeometryBuilder ()
 
virtual ~AliMUONTriggerGeometryBuilder ()
 
virtual void CreateGeometry ()
 
virtual void SetVolumes ()
 and eventually the mother volume name should be defined More...
 
virtual void SetTransformations ()
 
virtual void SetSensitiveVolumes ()
 
virtual bool ApplyGlobalTransformation ()
 Do not apply global transformation (geometry is defined in the new ALICE reference frame) More...
 
- Public Member Functions inherited from AliMUONVGeometryBuilder
 AliMUONVGeometryBuilder (Int_t firstModuleId, Int_t nofModules)
 
 AliMUONVGeometryBuilder ()
 
virtual ~AliMUONVGeometryBuilder ()
 
void SetReferenceFrame (const TGeoCombiTrans &referenceFrame)
 
void RebuildSVMaps (Bool_t withEnvelopes=true) const
 
void UpdateDetElements (Bool_t create) const
 
virtual void CreateMaterials ()
 
Int_t NofGeometries () const
 Return the number of geometry modules. More...
 
AliMUONGeometryModuleGeometry (Int_t i) const
 Return the i th geometry module. More...
 

Private Member Functions

 AliMUONTriggerGeometryBuilder (const AliMUONTriggerGeometryBuilder &rhs)
 Not implemented. More...
 
AliMUONTriggerGeometryBuilderoperator= (const AliMUONTriggerGeometryBuilder &rhs)
 Not implemented. More...
 
void BuildChamberPrototype (Int_t icount) const
 
void BuildRPCSupportsVertical (Int_t &iVolNum, Int_t icount) const
 
void BuildRPCSupportsHorizontal (Int_t icount) const
 
void BuildAngularSupportForChambers (Int_t icount) const
 
void BuildGasPipes (Int_t icount) const
 
void BuildChamberTypeA (Int_t &iVolNum, Int_t icount)
 
void BuildChamberTypeB (Int_t &iVolNum, Int_t icount)
 
void BuildChamberTypeD (Int_t &iVolNum, Int_t icount)
 
void BuildChamberTypeE (Int_t &iVolNum, Int_t icount)
 
void BuildChamberTypeF (Int_t &iVolNum, Int_t icount)
 
TString GetVolumeName (const TString &volume, Int_t icount) const
 
TString GetVolEnvName (Int_t icount, Int_t ienv) const
 
TString GetVolAluAngSuppName (const TString &type1234X, const TString &typeHV, Int_t icount) const
 
TString GetVolEnvSuppAngName (const TString &type1234X, const TString &typeHV, const TString &typeABDEF, Int_t icount, Int_t ivol) const
 
TString GetVolEnvInoxGasPipeName (const TString &type12, const TString &typeABCDEF, Int_t icount, Int_t ivol) const
 

Private Attributes

AliMUONfMUON
 the MUON detector class More...
 
Int_t * fIdtmed
 ! tracking media More...
 
Int_t fIdAir
 ! medium 1 More...
 
Int_t fIdAlu1
 ! medium 4 More...
 
Int_t fIdInox
 ! medium 29 Stainless Steel (18Cr,9Ni,Fe) More...
 
Float_t fYEnvPsave
 ! add More...
 
Float_t fYEnvMsave
 ! add More...
 
Float_t fDYsave
 ! add More...
 
Float_t fDXsave
 ! add More...
 
TGeoRotation fRsupportpipe
 pipe support rotation More...
 

Static Private Attributes

static const Float_t fgkDXZERO =2.
 vertical gap between right and left chambers (kDXZERO*2=4cm) More...
 
static const Float_t fgkXMIN =34.
 xmin distance in first plane/first station More...
 
static const Float_t fgkXMED =51.
 xmed distance in first plane/first station More...
 
static const Float_t fgkXMAX =255.
 xmax distance in first plane/first station More...
 
static const Float_t fgkYMIN =34.
 add More...
 
static const Float_t fgkYMAX =51.
 add More...
 
static const Float_t fgkZm =-3.6
 inner radius of flange between beam shield. and chambers (1/station) More...
 
static const Float_t fgkZp =+3.6
 outer radius of flange between beam shield. and chambers (1/station) More...
 
static const Float_t fgkYVSup [4] ={61.45,122.45,192.95,236.95}
 y positions of vertical supports More...
 
static const Float_t fgkSizeVSupExt [3] ={1.5,1.5,306.+5.}
 ext dimensions of vertical supports More...
 
static const Float_t fgkSizeVSupInt [3] ={1.2,1.2,306.+5.}
 int dimensions of vertical supports More...
 
static const Float_t fgkSizeSupport1V [3] ={0.,1.5,0.1}
 transverse dimensions of 1V angular supports More...
 
static const Float_t fgkSizeSupport1H [3] ={0.,0.1,1.15}
 transverse dimensions of 1H angular supports More...
 
static const Float_t fgkSizeSupport2V [3] ={0.,3.0,0.1}
 transverse dimensions of 2V angular supports More...
 
static const Float_t fgkSizeSupport2H [3] ={0.,0.1,1.9}
 transverse dimensions of 2H angular supports More...
 
static const Float_t fgkSizeSupportXV [3] ={0.,1.25,0.25}
 transverse dimensions of XV angular supports More...
 
static const Float_t fgkSizeSupportXH [3] ={0.,0.25,1.5}
 transverse dimensions of XH angular supports More...
 
static const Float_t fgkSizeSupportCable [3] ={0.,2.,3.}
 
static const Float_t fgkSizeGasPipe [3] ={0.2,0.4,0.}
 transverse dimensions of horizontal cable supports More...
 
static const Float_t fgkOffsetGasPipe =0.75
 Position of gas pipe with respect to angular support. More...
 
static const Float_t fgkAvoidExtrusion =2.9
 Small cut on some volumes to avoid extrusion from SC1x. More...
 

Additional Inherited Members

- Protected Member Functions inherited from AliMUONVGeometryBuilder
AliMUONGeometryModuleGetGeometry (Int_t moduleId) const
 
AliMUONGeometryEnvelopeStoreGetEnvelopes (Int_t moduleId) const
 
AliMUONStringIntMapGetSVMap (Int_t moduleId) const
 
Int_t GetModuleId (const TString &envName) const
 
void SetTranslation (Int_t moduleId, const TGeoTranslation &translation)
 
void SetTransformation (Int_t moduleId, const TGeoTranslation &translation, const TGeoRotation &rotation)
 
void SetVolume (Int_t moduleId, const TString &volumeName, Bool_t isVirtual=false)
 
void SetMotherVolume (Int_t moduleId, const TString &volumeName)
 

Detailed Description

MUON Trigger stations geometry construction class.

Author
Philippe Crochet (LPCCFd)

Definition at line 20 of file AliMUONTriggerGeometryBuilder.h.

Constructor & Destructor Documentation

AliMUONTriggerGeometryBuilder::AliMUONTriggerGeometryBuilder ( AliMUON muon)

Standard constructor

Definition at line 87 of file AliMUONTriggerGeometryBuilder.cxx.

AliMUONTriggerGeometryBuilder::AliMUONTriggerGeometryBuilder ( )

Default constructor

Definition at line 105 of file AliMUONTriggerGeometryBuilder.cxx.

AliMUONTriggerGeometryBuilder::~AliMUONTriggerGeometryBuilder ( )
virtual

Destructor

Definition at line 122 of file AliMUONTriggerGeometryBuilder.cxx.

AliMUONTriggerGeometryBuilder::AliMUONTriggerGeometryBuilder ( const AliMUONTriggerGeometryBuilder rhs)
private

Not implemented.

Member Function Documentation

virtual bool AliMUONTriggerGeometryBuilder::ApplyGlobalTransformation ( )
inlinevirtual

Do not apply global transformation (geometry is defined in the new ALICE reference frame)

Reimplemented from AliMUONVGeometryBuilder.

Definition at line 34 of file AliMUONTriggerGeometryBuilder.h.

void AliMUONTriggerGeometryBuilder::BuildAngularSupportForChambers ( Int_t  icount) const
private

Build angular supports for chambers

Definition at line 318 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberPrototype ( Int_t  icount) const
private

Build chamber prototype

Definition at line 227 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberTypeA ( Int_t &  iVolNum,
Int_t  icount 
)
private

Build chamber type A and horizontal support

Definition at line 351 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberTypeB ( Int_t &  iVolNum,
Int_t  icount 
)
private

Definition at line 643 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberTypeD ( Int_t &  iVolNum,
Int_t  icount 
)
private

Definition at line 1199 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberTypeE ( Int_t &  iVolNum,
Int_t  icount 
)
private

Definition at line 1617 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildChamberTypeF ( Int_t &  iVolNum,
Int_t  icount 
)
private

Definition at line 2014 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildGasPipes ( Int_t  icount) const
private

Build gas pipes

Definition at line 339 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildRPCSupportsHorizontal ( Int_t  icount) const
private

Build RPC horizontal supports

Definition at line 295 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::BuildRPCSupportsVertical ( Int_t &  iVolNum,
Int_t  icount 
) const
private

Build RPC vertical supports

Definition at line 251 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by CreateGeometry().

void AliMUONTriggerGeometryBuilder::CreateGeometry ( )
virtual

Function to be overriden in a concrete chamber/station geometry builder class.
The geometry built there should not be placed in ALIC; but all volumes going to ALIC have to be added as envelopes to the chamber geometries (They will be then placed automatically usind the provided transformation.

From AliMUONv1::CreateGeometry()

Implements AliMUONVGeometryBuilder.

Definition at line 2442 of file AliMUONTriggerGeometryBuilder.cxx.

TString AliMUONTriggerGeometryBuilder::GetVolAluAngSuppName ( const TString &  type1234X,
const TString &  typeHV,
Int_t  icount 
) const
private
TString AliMUONTriggerGeometryBuilder::GetVolEnvInoxGasPipeName ( const TString &  type12,
const TString &  typeABCDEF,
Int_t  icount,
Int_t  ivol 
) const
private

Utility function to generate volume name

Definition at line 211 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

TString AliMUONTriggerGeometryBuilder::GetVolEnvName ( Int_t  icount,
Int_t  ienv 
) const
private

Compose envelope names as: S0R1, S0R2, ..., S0R9, S0L1, S0L2, ..., S0L9 where ienv = 0, .., 17

Definition at line 158 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

TString AliMUONTriggerGeometryBuilder::GetVolEnvSuppAngName ( const TString &  type1234X,
const TString &  typeHV,
const TString &  typeABDEF,
Int_t  icount,
Int_t  ivol 
) const
private

Utility function to generate volume name

Definition at line 193 of file AliMUONTriggerGeometryBuilder.cxx.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

TString AliMUONTriggerGeometryBuilder::GetVolumeName ( const TString &  volume,
Int_t  icount 
) const
private
AliMUONTriggerGeometryBuilder& AliMUONTriggerGeometryBuilder::operator= ( const AliMUONTriggerGeometryBuilder rhs)
private

Not implemented.

void AliMUONTriggerGeometryBuilder::SetSensitiveVolumes ( )
virtual

Function to be overriden in a concrete chamber/station geometry class.
The sensitive volumes Ids for each chamber should be defined and set to its geometry class.

Defines the sensitive volumes for trigger station chambers.

Implements AliMUONVGeometryBuilder.

Definition at line 2553 of file AliMUONTriggerGeometryBuilder.cxx.

void AliMUONTriggerGeometryBuilder::SetTransformations ( )
virtual

Function to be overriden in a concrete chamber/station geometry class.
The transformation of each chamber(s) wrt ALICE should be defined and set to its geometry class.

Defines the transformations for the trigger chambers.

Implements AliMUONVGeometryBuilder.

Definition at line 2532 of file AliMUONTriggerGeometryBuilder.cxx.

void AliMUONTriggerGeometryBuilder::SetVolumes ( )
virtual

and eventually the mother volume name should be defined

Function to be overriden in a concrete chamber/station geometry class.
The volume name for each geometry module, its virtuality

Defines the volumes for the trigger chambers.

Implements AliMUONVGeometryBuilder.

Definition at line 2514 of file AliMUONTriggerGeometryBuilder.cxx.

Member Data Documentation

Float_t AliMUONTriggerGeometryBuilder::fDXsave
private

! add

Definition at line 124 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeB().

Float_t AliMUONTriggerGeometryBuilder::fDYsave
private

! add

Definition at line 123 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeB().

const Float_t AliMUONTriggerGeometryBuilder::fgkAvoidExtrusion =2.9
staticprivate

Small cut on some volumes to avoid extrusion from SC1x.

Definition at line 95 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeB().

const Float_t AliMUONTriggerGeometryBuilder::fgkDXZERO =2.
staticprivate

vertical gap between right and left chambers (kDXZERO*2=4cm)

Definition at line 58 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkOffsetGasPipe =0.75
staticprivate

Position of gas pipe with respect to angular support.

Definition at line 94 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeGasPipe ={0.2,0.4,0.}
staticprivate

transverse dimensions of horizontal cable supports

dimensions of gas pipes (inner and outer radius)

Definition at line 92 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupport1H ={0.,0.1,1.15}
staticprivate

transverse dimensions of 1H angular supports

Definition at line 84 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupport1V ={0.,1.5,0.1}
staticprivate

transverse dimensions of 1V angular supports

Definition at line 83 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupport2H ={0.,0.1,1.9}
staticprivate

transverse dimensions of 2H angular supports

Definition at line 87 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupport2V ={0.,3.0,0.1}
staticprivate

transverse dimensions of 2V angular supports

Definition at line 86 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupportCable ={0.,2.,3.}
staticprivate
const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupportXH ={0.,0.25,1.5}
staticprivate

transverse dimensions of XH angular supports

Definition at line 89 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeSupportXV ={0.,1.25,0.25}
staticprivate

transverse dimensions of XV angular supports

Definition at line 88 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkSizeVSupExt ={1.5,1.5,306.+5.}
staticprivate
const Float_t AliMUONTriggerGeometryBuilder::fgkSizeVSupInt ={1.2,1.2,306.+5.}
staticprivate

int dimensions of vertical supports

Definition at line 81 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildRPCSupportsVertical().

const Float_t AliMUONTriggerGeometryBuilder::fgkXMAX =255.
staticprivate

xmax distance in first plane/first station

Definition at line 63 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkXMED =51.
staticprivate

xmed distance in first plane/first station

Definition at line 62 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA().

const Float_t AliMUONTriggerGeometryBuilder::fgkXMIN =34.
staticprivate

xmin distance in first plane/first station

Definition at line 61 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeB().

const Float_t AliMUONTriggerGeometryBuilder::fgkYMAX =51.
staticprivate

add

Definition at line 69 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeB().

const Float_t AliMUONTriggerGeometryBuilder::fgkYMIN =34.
staticprivate
const Float_t AliMUONTriggerGeometryBuilder::fgkYVSup ={61.45,122.45,192.95,236.95}
staticprivate
const Float_t AliMUONTriggerGeometryBuilder::fgkZm =-3.6
staticprivate

inner radius of flange between beam shield. and chambers (1/station)

Definition at line 75 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

const Float_t AliMUONTriggerGeometryBuilder::fgkZp =+3.6
staticprivate

outer radius of flange between beam shield. and chambers (1/station)

Definition at line 76 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberTypeA(), BuildChamberTypeB(), BuildChamberTypeD(), BuildChamberTypeE(), and BuildChamberTypeF().

Int_t AliMUONTriggerGeometryBuilder::fIdAir
private
Int_t AliMUONTriggerGeometryBuilder::fIdAlu1
private
Int_t AliMUONTriggerGeometryBuilder::fIdInox
private

! medium 29 Stainless Steel (18Cr,9Ni,Fe)

Definition at line 120 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildGasPipes(), and CreateGeometry().

Int_t* AliMUONTriggerGeometryBuilder::fIdtmed
private

! tracking media

Definition at line 117 of file AliMUONTriggerGeometryBuilder.h.

Referenced by BuildChamberPrototype(), and CreateGeometry().

AliMUON* AliMUONTriggerGeometryBuilder::fMUON
private

the MUON detector class

Definition at line 116 of file AliMUONTriggerGeometryBuilder.h.

Referenced by CreateGeometry().

TGeoRotation AliMUONTriggerGeometryBuilder::fRsupportpipe
private
Float_t AliMUONTriggerGeometryBuilder::fYEnvMsave
private
Float_t AliMUONTriggerGeometryBuilder::fYEnvPsave
private

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