]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSvSSD03.h
Updating geometry for new scintillaton modules
[u/mrichter/AliRoot.git] / ITS / AliITSvSSD03.h
1 #ifndef ALIITSVSSD03_H
2 #define ALIITSVSSD03_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 // ITS step manager and geometry class for the ITS SSD test beam geometry
7 // of june 2003.
8
9 #include "AliITS.h"
10
11 class AliITSvSSD03 : public AliITS{
12  public:
13     AliITSvSSD03(); // default constructor
14     AliITSvSSD03(const char *title,Int_t geomnum=2003); // standard constructor
15     AliITSvSSD03(const AliITSvSSD03 &source); // Copy constructor
16     AliITSvSSD03& operator=(const AliITSvSSD03 &source); // = operator
17     virtual ~AliITSvSSD03(); // destructor
18     virtual void   BuildGeometry();
19     virtual void   CreateGeometry();
20     virtual void   CreateMaterials();
21     virtual Int_t  IsVersion() const {// returns the ITS version number 
22                                       return 1;} 
23     virtual void   Init();
24     virtual void   SetDefaults();
25     virtual void   DrawModule() const;
26     virtual void   StepManager(); 
27     virtual void   SetWriteDet(Bool_t det=kTRUE){ // set .det write
28                                                  fGeomDetOut = det;}
29     virtual void   SetWriteDet(const char *f){ // set write file
30                                      strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
31     virtual void   SetReadDet(Bool_t det=kTRUE){ //set .det read
32                                                 fGeomDetIn = det;}
33     virtual void   SetReadDet(const char *f){ // set read file
34                                        strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
35     virtual void   SetEUCLID(Bool_t euclid=kTRUE){ // set write Euclid file
36                                                   fEuclidOut = euclid;}
37     virtual void   SetEUCLIDFileName(const char *f){ // set write file
38                              fEuclidGeometry=f;fEuclidOut = kTRUE;}
39     virtual void   SetMinorVersion(Int_t v=22){ // Choose between existing minor versions
40         fMinorVersion = v;} 
41     virtual void   SetThicknessDet1(Float_t v=300.){
42          // Set detector thickness in layer 1
43          fDet1 = v;}
44     virtual void   SetThicknessDet2(Float_t v=300.){
45          // Set detector thickness in layer 2
46          fDet2 = v;}
47     virtual void   SetThicknessChip1(Float_t v=300.){
48          // Set chip thickness in layer 1
49          fChip1 = v;}
50     virtual void   SetThicknessChip2(Float_t v=300.){
51          // Set chip thickness in layer 2
52          fChip2 = v;}
53     // Replacement default simulation initilization.
54     virtual void SetDefaultSimulation();
55     //
56   private:
57     void BuildGeometry2003();
58     void CreateGeometry2003();
59     void CreateMaterials2003();
60
61  private:  
62     void InitAliITSgeom();
63     Bool_t fGeomDetOut;       // Flag to write .det file out
64     Bool_t fGeomDetIn;        // Flag to read .det file or directly from Geat.
65     Int_t  fMajorVersion;     // Major version number == IsVersion
66     Int_t  fMinorVersion;     // Minor version number 
67     Int_t  fGeomNumber;       // Geometry version number (year)
68     char   fEuclidGeomDet[60];// file where detector transormation are define.
69     char   fRead[60];         //! file name to read .det file
70     char   fWrite[60];        //! file name to write .det file 
71     Float_t  fDet1;           // thickness of detector in SSD layer 1
72     Float_t  fDet2;           // thickness of detector in SSD layer 2
73     Float_t  fChip1;          // thickness of chip in SSD layer 1
74     Float_t  fChip2;          // thickness of chip in SSD layer 2 
75     Int_t fIDMother;          //! ITS Mother Volume id.
76
77     ClassDef(AliITSvSSD03,2) // Hits manager and geometry for SSD testbeam
78 };
79 #endif