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