1 #ifndef ALIITSVPPRSYMM_H
2 #define ALIITSVPPRSYMM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 /////////////////////////////////////////////////////////
9 // Manager and hits classes for set: ITS version 7 //
10 /////////////////////////////////////////////////////////
14 class AliITSvPPRsymm : public AliITS {
18 AliITSvPPRsymm(const char *name, const char *title);
19 AliITSvPPRsymm(const AliITSvPPRsymm &source); // copy constructor
20 AliITSvPPRsymm& operator=(const AliITSvPPRsymm &source); // assignment operator
21 virtual ~AliITSvPPRsymm() ;
22 virtual void BuildGeometry();
23 virtual void CreateGeometry();
24 virtual void CreateMaterials();
26 virtual Int_t IsVersion() const {// returns the ITS version number
28 virtual void DrawModule();
29 virtual void StepManager();
30 virtual void SetWriteDet(Bool_t det=kTRUE){ // set .det write
32 virtual void SetWriteDet(const char *f){ // set write file
33 strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
34 virtual void SetReadDet(Bool_t det=kTRUE){ //set .det read
36 virtual void SetReadDet(const char *f){ // set read file
37 strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
38 virtual void SetEUCLID(Bool_t euclid=kTRUE){ // set write Euclid file
40 virtual void SetEUCLIDFileName(const char *f){ // set write file
41 fEuclidGeometry=f;fEuclidOut = kTRUE;}
42 virtual void SetMinorVersion(Int_t v=22){ // Choose between existing minor versions
44 virtual void SetThicknessDet1(Float_t v=300.){
45 // Set detector thickness in layer 1
47 virtual void SetThicknessDet2(Float_t v=300.){
48 // Set detector thickness in layer 2
50 virtual void SetThicknessChip1(Float_t v=300.){
51 // Set chip thickness in layer 1
53 virtual void SetThicknessChip2(Float_t v=300.){
54 // Set chip thickness in layer 2
56 virtual Bool_t GetEUCLID(){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() { // returns value GeomDetOut flag.
61 virtual Bool_t GetReadDet() { // 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;}
67 virtual Int_t GetMajorVersion(){// return Major Version Number
68 return fMajorVersion;}
69 virtual Int_t GetMinorVersion(){// return Major Version Number
70 return fMinorVersion;}
71 virtual Float_t GetThicknessDet1(){
72 // Get detector thickness in layer 1
74 virtual Float_t GetThicknessDet2(){
75 // Get detector thickness in layer 2
77 virtual Float_t GetThicknessChip1(){
78 // Get chip thickness in layer 1
80 virtual Float_t GetThicknessChip2(){
81 // Get chip thickness in layer 2
84 void InitAliITSgeom();
86 // TString fEuclidGeomtery,fEuclidMaterial defined in AliModule.
87 Bool_t fEuclidOut; // Flag to write geometry in euclid format
88 Bool_t fGeomDetOut; // Flag to write .det file out
89 Bool_t fGeomDetIn; // Flag to read .det file or directly from Geat.
90 Int_t fMajorVersion; // Major version number == IsVersion
91 Int_t fMinorVersion; // Minor version number
92 char fEuclidGeomDet[60];// file where detector transormation are define.
93 char fRead[60]; //! file name to read .det file
94 char fWrite[60]; //! file name to write .det file
95 Float_t fDet1; // thickness of detector in SPD layer 1
96 Float_t fDet2; // thickness of detector in SPD layer 2
97 Float_t fChip1; // thickness of chip in SPD layer 1
98 Float_t fChip2; // thickness of chip in SPD layer 2
100 ClassDef(AliITSvPPRsymm,1) //Hits manager for set:ITS version 9
101 // PPR detailed Geometry symmetric