]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSvPPRasymm.h
d1965e55c8ac66e65537c266ba4badeaf1cb2e37
[u/mrichter/AliRoot.git] / ITS / AliITSvPPRasymm.h
1 #ifndef ALIITSVPPRASYMM_H
2 #define ALIITSVPPRASYMM_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 /////////////////////////////////////////////////////////
9 //  Manager and hits classes for set: ITS version 6    //
10 /////////////////////////////////////////////////////////
11  
12 #include "AliITS.h"
13  
14 class AliITSvPPRasymm : public AliITS {
15
16  public:
17     AliITSvPPRasymm();
18     AliITSvPPRasymm(const char *name, const char *title);
19     AliITSvPPRasymm(const AliITSvPPRasymm &source); // copy constructor
20     AliITSvPPRasymm& operator=(const AliITSvPPRasymm &source); // assignment operator
21     virtual       ~AliITSvPPRasymm() ;
22     virtual void   BuildGeometry();
23     virtual void   CreateGeometry();
24     virtual void   CreateMaterials();
25     virtual void   Init(); 
26     virtual Int_t  IsVersion() const {// returns the ITS version number 
27                                       return 8;} 
28     virtual void   DrawModule();
29     virtual void   StepManager();
30     virtual void   SetWriteDet(Bool_t det=kTRUE){ // set .det write
31                                                  fGeomDetOut = det;}
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
35                                                 fGeomDetIn = det;}
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
39                                                   fEuclidOut = euclid;}
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
43         fMinorVersion = v;}
44     virtual Bool_t GetEUCLID(){return fEuclidOut;}// returns value Euclid flag.
45     virtual const char  *GetEULIIDFileName() const{ // return .euc file name
46                                        return fEuclidGeometry.Data();}
47     virtual Bool_t GetWriteDet() { // returns value GeomDetOut flag.
48                                   return fGeomDetOut;}
49     virtual Bool_t GetReadDet() { // returns value GeomDetIn flag.
50                                  return fGeomDetIn;}
51     virtual char  *GetReadDetFileName(){ // return .det read file name
52                   if(fRead[0]!='\0') return fRead; else return fEuclidGeomDet;}
53     virtual char  *GetWriteDetFileName(){ // return .det write file name
54                 if(fWrite[0]!='\0') return fWrite; else return fEuclidGeomDet;}
55     virtual Int_t GetMajorVersion(){// return Major Version Number
56         return fMajorVersion;}
57     virtual Int_t GetMinorVersion(){// return Major Version Number
58         return fMinorVersion;}
59
60  private:
61     void InitAliITSgeom();
62
63     // TString fEuclidGeomtery,fEuclidMaterial defined in AliModule.
64     Bool_t fEuclidOut;        // Flag to write geometry in euclid format
65     Bool_t fGeomDetOut;       // Flag to write .det file out
66     Bool_t fGeomDetIn;        // Flag to read .det file or directly from Geat.
67     Int_t  fMajorVersion;     // Major version number == IsVersion
68     Int_t  fMinorVersion;     // Minor version number
69     char   fEuclidGeomDet[60];// file where detector transormation are define.
70     char   fRead[60];         //! file name to read .det file
71     char   fWrite[60];        //! file name to write .det file
72
73     ClassDef(AliITSvPPRasymm,1)  //Hits manager for set:ITS version 8 
74                                  // PPR detailed Geometry asymmetric
75 };
76  
77 #endif