#ifndef ALI_MUON_TRIGGER_GEOMETRY_BUILDER_H
#define ALI_MUON_TRIGGER_GEOMETRY_BUILDER_H
#include "AliMUONVGeometryBuilder.h"
class AliMUON;
class AliMUONTriggerGeometryBuilder : public AliMUONVGeometryBuilder
{
public:
AliMUONTriggerGeometryBuilder(AliMUON* muon);
AliMUONTriggerGeometryBuilder();
virtual ~AliMUONTriggerGeometryBuilder();
virtual void CreateGeometry();
virtual void SetVolumes();
virtual void SetTransformations();
virtual void SetSensitiveVolumes();
virtual bool ApplyGlobalTransformation() { return false; }
protected:
private:
AliMUONTriggerGeometryBuilder(const AliMUONTriggerGeometryBuilder& rhs);
AliMUONTriggerGeometryBuilder& operator = (const AliMUONTriggerGeometryBuilder& rhs);
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);
static const Float_t fgkDXZERO;
static const Float_t fgkXMIN;
static const Float_t fgkXMED;
static const Float_t fgkXMAX;
static const Float_t fgkYMIN;
static const Float_t fgkYMAX;
static const Float_t fgkZm;
static const Float_t fgkZp;
static const Float_t fgkYVSup[4];
static const Float_t fgkSizeVSupExt[3];
static const Float_t fgkSizeVSupInt[3];
static const Float_t fgkSizeSupport1V[3];
static const Float_t fgkSizeSupport1H[3];
static const Float_t fgkSizeSupport2V[3];
static const Float_t fgkSizeSupport2H[3];
static const Float_t fgkSizeSupportXV[3];
static const Float_t fgkSizeSupportXH[3];
static const Float_t fgkSizeSupportCable[3];
static const Float_t fgkSizeGasPipe[3];
static const Float_t fgkOffsetGasPipe;
static const Float_t fgkAvoidExtrusion;
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;
AliMUON* fMUON;
Int_t* fIdtmed;
Int_t fIdAir;
Int_t fIdAlu1;
Int_t fIdInox;
Float_t fYEnvPsave;
Float_t fYEnvMsave;
Float_t fDYsave;
Float_t fDXsave;
TGeoRotation fRsupportpipe;
ClassDef(AliMUONTriggerGeometryBuilder,1)
};
#endif //ALI_MUON_TRIGGER_GEOMETRY_BUILDER_H
AliMUONTriggerGeometryBuilder.h:1 AliMUONTriggerGeometryBuilder.h:2 AliMUONTriggerGeometryBuilder.h:3 AliMUONTriggerGeometryBuilder.h:4 AliMUONTriggerGeometryBuilder.h:5 AliMUONTriggerGeometryBuilder.h:6 AliMUONTriggerGeometryBuilder.h:7 AliMUONTriggerGeometryBuilder.h:8 AliMUONTriggerGeometryBuilder.h:9 AliMUONTriggerGeometryBuilder.h:10 AliMUONTriggerGeometryBuilder.h:11 AliMUONTriggerGeometryBuilder.h:12 AliMUONTriggerGeometryBuilder.h:13 AliMUONTriggerGeometryBuilder.h:14 AliMUONTriggerGeometryBuilder.h:15 AliMUONTriggerGeometryBuilder.h:16 AliMUONTriggerGeometryBuilder.h:17 AliMUONTriggerGeometryBuilder.h:18 AliMUONTriggerGeometryBuilder.h:19 AliMUONTriggerGeometryBuilder.h:20 AliMUONTriggerGeometryBuilder.h:21 AliMUONTriggerGeometryBuilder.h:22 AliMUONTriggerGeometryBuilder.h:23 AliMUONTriggerGeometryBuilder.h:24 AliMUONTriggerGeometryBuilder.h:25 AliMUONTriggerGeometryBuilder.h:26 AliMUONTriggerGeometryBuilder.h:27 AliMUONTriggerGeometryBuilder.h:28 AliMUONTriggerGeometryBuilder.h:29 AliMUONTriggerGeometryBuilder.h:30 AliMUONTriggerGeometryBuilder.h:31 AliMUONTriggerGeometryBuilder.h:32 AliMUONTriggerGeometryBuilder.h:33 AliMUONTriggerGeometryBuilder.h:34 AliMUONTriggerGeometryBuilder.h:35 AliMUONTriggerGeometryBuilder.h:36 AliMUONTriggerGeometryBuilder.h:37 AliMUONTriggerGeometryBuilder.h:38 AliMUONTriggerGeometryBuilder.h:39 AliMUONTriggerGeometryBuilder.h:40 AliMUONTriggerGeometryBuilder.h:41 AliMUONTriggerGeometryBuilder.h:42 AliMUONTriggerGeometryBuilder.h:43 AliMUONTriggerGeometryBuilder.h:44 AliMUONTriggerGeometryBuilder.h:45 AliMUONTriggerGeometryBuilder.h:46 AliMUONTriggerGeometryBuilder.h:47 AliMUONTriggerGeometryBuilder.h:48 AliMUONTriggerGeometryBuilder.h:49 AliMUONTriggerGeometryBuilder.h:50 AliMUONTriggerGeometryBuilder.h:51 AliMUONTriggerGeometryBuilder.h:52 AliMUONTriggerGeometryBuilder.h:53 AliMUONTriggerGeometryBuilder.h:54 AliMUONTriggerGeometryBuilder.h:55 AliMUONTriggerGeometryBuilder.h:56 AliMUONTriggerGeometryBuilder.h:57 AliMUONTriggerGeometryBuilder.h:58 AliMUONTriggerGeometryBuilder.h:59 AliMUONTriggerGeometryBuilder.h:60 AliMUONTriggerGeometryBuilder.h:61 AliMUONTriggerGeometryBuilder.h:62 AliMUONTriggerGeometryBuilder.h:63 AliMUONTriggerGeometryBuilder.h:64 AliMUONTriggerGeometryBuilder.h:65 AliMUONTriggerGeometryBuilder.h:66 AliMUONTriggerGeometryBuilder.h:67 AliMUONTriggerGeometryBuilder.h:68 AliMUONTriggerGeometryBuilder.h:69 AliMUONTriggerGeometryBuilder.h:70 AliMUONTriggerGeometryBuilder.h:71 AliMUONTriggerGeometryBuilder.h:72 AliMUONTriggerGeometryBuilder.h:73 AliMUONTriggerGeometryBuilder.h:74 AliMUONTriggerGeometryBuilder.h:75 AliMUONTriggerGeometryBuilder.h:76 AliMUONTriggerGeometryBuilder.h:77 AliMUONTriggerGeometryBuilder.h:78 AliMUONTriggerGeometryBuilder.h:79 AliMUONTriggerGeometryBuilder.h:80 AliMUONTriggerGeometryBuilder.h:81 AliMUONTriggerGeometryBuilder.h:82 AliMUONTriggerGeometryBuilder.h:83 AliMUONTriggerGeometryBuilder.h:84 AliMUONTriggerGeometryBuilder.h:85 AliMUONTriggerGeometryBuilder.h:86 AliMUONTriggerGeometryBuilder.h:87 AliMUONTriggerGeometryBuilder.h:88 AliMUONTriggerGeometryBuilder.h:89 AliMUONTriggerGeometryBuilder.h:90 AliMUONTriggerGeometryBuilder.h:91 AliMUONTriggerGeometryBuilder.h:92 AliMUONTriggerGeometryBuilder.h:93 AliMUONTriggerGeometryBuilder.h:94 AliMUONTriggerGeometryBuilder.h:95 AliMUONTriggerGeometryBuilder.h:96 AliMUONTriggerGeometryBuilder.h:97 AliMUONTriggerGeometryBuilder.h:98 AliMUONTriggerGeometryBuilder.h:99 AliMUONTriggerGeometryBuilder.h:100 AliMUONTriggerGeometryBuilder.h:101 AliMUONTriggerGeometryBuilder.h:102 AliMUONTriggerGeometryBuilder.h:103 AliMUONTriggerGeometryBuilder.h:104 AliMUONTriggerGeometryBuilder.h:105 AliMUONTriggerGeometryBuilder.h:106 AliMUONTriggerGeometryBuilder.h:107 AliMUONTriggerGeometryBuilder.h:108 AliMUONTriggerGeometryBuilder.h:109 AliMUONTriggerGeometryBuilder.h:110 AliMUONTriggerGeometryBuilder.h:111 AliMUONTriggerGeometryBuilder.h:112 AliMUONTriggerGeometryBuilder.h:113 AliMUONTriggerGeometryBuilder.h:114 AliMUONTriggerGeometryBuilder.h:115 AliMUONTriggerGeometryBuilder.h:116 AliMUONTriggerGeometryBuilder.h:117 AliMUONTriggerGeometryBuilder.h:118 AliMUONTriggerGeometryBuilder.h:119 AliMUONTriggerGeometryBuilder.h:120 AliMUONTriggerGeometryBuilder.h:121 AliMUONTriggerGeometryBuilder.h:122 AliMUONTriggerGeometryBuilder.h:123 AliMUONTriggerGeometryBuilder.h:124 AliMUONTriggerGeometryBuilder.h:125 AliMUONTriggerGeometryBuilder.h:126 AliMUONTriggerGeometryBuilder.h:127 AliMUONTriggerGeometryBuilder.h:128 AliMUONTriggerGeometryBuilder.h:129 AliMUONTriggerGeometryBuilder.h:130