Updated ITS version 11 geometry. Requires ROOT version 4 with a special patch
[u/mrichter/AliRoot.git] / ITS / AliITSv11.h
1 #ifndef ALIITSV11_H
2 #define ALIITSV11_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /*
7   $Id$
8  */
9
10 /////////////////////////////////////////////////////////////////////////
11 //  Manager and hits classes for set: ITS version 11, 2003 geometry    //
12 /////////////////////////////////////////////////////////////////////////
13  
14 #include "AliITS.h"
15 class TGeoVolume;
16 class TGeoPcon;
17 class AliITSv11GeometrySPD;
18 class AliITSv11GeometrySDD;
19 class AliITSv11GeometrySupport;
20  
21 class AliITSv11 : public AliITS {
22
23  public:
24     AliITSv11();
25     AliITSv11(Int_t debugITS,Int_t debugSPD=0,Int_t debugSDD=0,
26               Int_t debugSSD=0,Int_t debugSUP=0);
27     AliITSv11(const char *title);
28     AliITSv11(const AliITSv11 &source); // copy constructor
29     AliITSv11& operator=(const AliITSv11 &source); // assignment operator
30     virtual       ~AliITSv11();
31     virtual void   BuildGeometry();
32     virtual void   CreateGeometry();
33     virtual void   CreateMaterials();
34     virtual Int_t  IsVersion() const {return 11;} // ITS version number
35     virtual void   Init(); 
36     virtual void   SetDefaults();
37     virtual void   DrawModule();
38     virtual void   StepManager();
39     // Getters for different parts of the geometry initilization
40     virtual AliITSv11GeometrySPD*     GetSPDGeometry(){return fSPDgeom;} // SPD
41     virtual AliITSv11GeometrySupport* GetSupGeometry(){return fSupgeom;} //Sup.
42   private:
43     void InitAliITSgeom();
44
45     // TString fEuclidGeomtery,fEuclidMaterial defined in AliModule.
46     Bool_t fGeomDetOut;       // Flag to write .det file out
47     Bool_t fGeomDetIn;        // Flag to read .det file or directly from Geat.
48     Int_t  fMajorVersion;     // Major version number == IsVersion
49     Int_t  fMinorVersion;     // Minor version number
50     Float_t  fDet1;           // thickness of detector in SPD layer 1
51     Float_t  fDet2;           // thickness of detector in SPD layer 2
52     Float_t  fChip1;          // thickness of chip in SPD layer 1   
53     Float_t  fChip2;          // thickness of chip in SPD layer 2   
54     Int_t    fRails;          // switch rails on (=1) and off (=0)
55     Int_t    fFluid;          // switch between water(=1) and freon(=0)
56     //
57     AliITSv11GeometrySPD     *fSPDgeom;  //! Pointer to SPD Geometry
58     AliITSv11GeometrySDD     *fSDDgeom;  //! Pointer to SDD Geometry
59     AliITSv11GeometrySupport *fSupgeom;  //! Pointer to ITS support Geometry
60
61     ClassDef(AliITSv11,1)  //Hits manager for set:ITS version 11
62 };
63  
64 #endif