First version, stand alone detector
[u/mrichter/AliRoot.git] / CRT / AliCRTv1.h
1 #ifndef ALICRTV1_H
2 #define ALICRTV1_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 class for detector: CRTv1         //
10 ////////////////////////////////////////////////
11
12 #include "AliCRTv0.h"
13
14 class AliCRTv1 : public AliCRTv0
15 {
16  
17 public:
18                    AliCRTv1();
19                    AliCRTv1(const char *name, const char *title);
20                    AliCRTv1(const AliCRTv1& crt);
21                    AliCRTv1& operator= (const AliCRTv1& crt);
22    virtual         ~AliCRTv1() {}
23
24    virtual void    CreateGeometry();
25    virtual void    Init();
26    virtual Int_t   IsVersion() const {return 1;}
27    virtual void    DrawDetector();
28    virtual TString Version(void) {return TString("v1");}
29    virtual void    StepManager();
30    
31    void IncludeRICH(Bool_t status = kTRUE) {fRICHStatus=status;}
32    void IncludeMagnet(Bool_t status = kTRUE) {fMagnetStatus=status;}
33    void IncludeTPC(Bool_t status = kTRUE) {fTPCStatus=status;}
34
35 protected:
36    virtual void CreateMolasse();
37    virtual void CreateShafts();
38
39    void    CreateRICHGeometry();
40    void    CreateTPCGeometry();
41    void    CreateMagnetGeometry();
42
43    Bool_t fCRTModule;
44    Bool_t fRICHStatus;
45    Bool_t fTPCStatus;
46    Bool_t fMagnetStatus;
47    Bool_t fCRTStatus;
48
49 private: 
50   ClassDef(AliCRTv1,1)  //Class for CRT, version 1, Shafts outside of AliHALL
51
52 };
53
54 #endif