3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 class AliITSv11GeometrySPD;
9 class AliITSv11GeometrySDD;
10 class AliITSv11GeometrySupport;
12 class AliITSv11 : public AliITS {
16 AliITSv11(const char *name, const char *title);
17 AliITSv11(Int_t debugITS, Int_t debugSPD = 0, Int_t debugSDD = 0,
18 Int_t debugSSD = 0, Int_t debugSUP = 0);
19 virtual ~AliITSv11() ;
20 virtual void BuildGeometry();
21 virtual void CreateGeometry();
22 virtual void CreateMaterials();
24 virtual void SetDefaults();
25 virtual void DrawModule() const;
26 virtual void StepManager();
27 //virtual AliITSv11GeometrySPD* GetSPDGeometry(){return fSPDgeom;}
28 virtual AliITSv11GeometrySDD* GetSDDGeometry(){return fSDDgeom;}
29 //virtual AliITSv11GeometrySupport* GetSupGeometry(){return fSupgeom;}
30 virtual Int_t IsVersion() const { return fMajorVersion;} // ITS version number
31 virtual Int_t GetMajorVersion() const {// return Major Version Number
32 return fMajorVersion;}
33 virtual Int_t GetMinorVersion() const {// return Major Version Number
34 return fMinorVersion;}
37 virtual void SetWriteDet(Bool_t det=kTRUE){ // set .det write
39 virtual void SetWriteDet(const char *f){ // set write file
40 strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
41 virtual void SetReadDet(Bool_t det=kTRUE){ //set .det read
43 virtual void SetReadDet(const char *f){ // set read file
44 strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
45 virtual void SetEUCLIDFileName(const char *f){ // set write file
46 fEuclidGeometry=f;fEuclidOut = kTRUE;}
47 virtual void SetMinorVersion(Int_t v=0){ // Choose between existing minor versions
50 virtual void SetDensityServicesByThickness(){// uses services density
51 // calculation based on the thickness of the services.
53 virtual void SetDensityServicesByMass(){// uses services density
54 // calculation based on the Mass of the services.
56 virtual Bool_t GetEUCLID() const {return fEuclidOut;}// returns value Euclid flag.
57 virtual const char *GetEULIIDFileName() const{ // return .euc file name
58 return fEuclidGeometry.Data();}
59 virtual Bool_t GetWriteDet() const { // returns value GeomDetOut flag.
61 virtual Bool_t GetReadDet() const { // returns value GeomDetIn flag.
63 virtual char *GetReadDetFileName(){ // return .det read file name
64 if(fRead[0]!='\0') return fRead; else return fEuclidGeomDet;}
65 virtual char *GetWriteDetFileName(){ // return .det write file name
66 if(fWrite[0]!='\0') return fWrite; else return fEuclidGeomDet;}
70 AliITSv11(const AliITSv11 &source); // copy constructor
71 AliITSv11& operator=(const AliITSv11 &source); // assignment operator
72 void InitAliITSgeom();
74 Bool_t fGeomDetOut; // Flag to write .det file out
75 Bool_t fGeomDetIn; // Flag to read .det file or directly from Geat.
76 Bool_t fByThick; // Flag to use services materials by thickness
77 // ture, or mass false.
78 Int_t fMajorVersion; // Major version number == IsVersion
79 Int_t fMinorVersion; // Minor version number
80 char fEuclidGeomDet[60];// file where detector transormation are define.
81 char fRead[60]; //! file name to read .det file
82 char fWrite[60]; //! file name to write .det file
85 //AliITSv11GeometrySPD *fSPDgeom; //SPD Geometry
86 AliITSv11GeometrySDD *fSDDgeom; //! SDD Geometry
87 //AliITSv11GeometrySupport /fSupgeom; //Support Geometry
89 ClassDef(AliITSv11,1) // ITS version 11