From Annalisa: new files for TOF visualization.
[u/mrichter/AliRoot.git] / EVE / Alieve / TOFSector.h
1 #ifndef ALIEVE_TOFSector_H
2 #define ALIEVE_TOFSector_H
3
4 #include <Reve/QuadSet.h>
5 #include <Reve/RenderElement.h>
6
7 #include <Reve/RGBAPalette.h>
8 #include <Reve/FrameBox.h>
9
10 #include <TGeoManager.h>
11 #include <TClonesArray.h>
12 #include <TTree.h>
13
14 #include <AliTOFGeometry.h>
15 #include <AliTOFGeometryV5.h>
16
17 namespace Alieve {
18   
19   class TOFSector : public Reve::QuadSet
20                    
21   {
22     TOFSector(const TOFSector&);            // Not implemented
23     TOFSector& operator=(const TOFSector&); // Not implemented
24  
25     //Int_t       fSectorID;
26   private:
27
28     void LoadQuads();
29     
30   protected:
31     
32     AliTOFGeometry *fTOFgeometry;
33     
34     TClonesArray   *fTOFarray;
35     TTree          *fTOFtree;
36     
37     Int_t fSector;
38     //Int_t fPlate;
39     //Int_t fStrip;
40     
41     Float_t  fDx;
42     Float_t  fDy;
43     Float_t  fDz;
44     ///////////////////////////////
45
46     Bool_t      fAutoTrans; 
47     Int_t       fMinTime;     
48     Int_t       fMaxTime;
49     Short_t     fThreshold;
50     Int_t       fMaxVal;
51     Int_t       fSectorID; 
52     Bool_t      *fPlateFlag;
53
54     Bool_t      fPlateFlag0;
55     Bool_t      fPlateFlag1;
56     Bool_t      fPlateFlag2;
57     Bool_t      fPlateFlag3;
58     Bool_t      fPlateFlag4;
59     
60     Color_t     fFrameColor;
61     Bool_t      fRnrFrame;
62     
63     TGeoManager *fGeoManager;
64     
65   public: 
66     // Bool_t       fAutoTrans;
67     
68     virtual void InitModule();
69     virtual void SetTrans(); 
70     TOFSector(const Text_t* n="TOFSector", const Text_t* t=0);
71     TOFSector(TGeoManager *localGeoManager, Int_t nSector);
72     
73     TOFSector(TGeoManager *localGeoManager, Int_t nSector,
74               TClonesArray *tofArray);
75     TOFSector(TGeoManager *localGeoManager,
76               Int_t nSector, TTree *tofTree);
77     virtual ~TOFSector();
78     
79     
80     static Bool_t    fgStaticInitDone;
81     static void      InitStatics();
82     void SetSectorID(Int_t id);
83     void SetAutoTrans(Bool_t r){fAutoTrans=r;};
84     void SetThreshold(Short_t t);
85     void SetMaxVal(Int_t mv);
86     Bool_t GetPlate(Int_t nPlate) const {return fPlateFlag[nPlate];};
87     Short_t GetThreshold() const {return fThreshold;};
88     Int_t GetMaxVal() const {return fMaxVal;};
89     Bool_t GetAutoTrans() const {return fAutoTrans;};
90     Int_t GetSectorID() const {return fSectorID;};
91     virtual void QuadSelected(Int_t idx);
92     ///////////////////////////////////////////
93    
94     void SetPlate(Int_t nPlate, Bool_t r);
95
96   static Reve::FrameBox* fgTOFsectorFrameBox;
97   
98   static Reve::RGBAPalette* fgTOFsectorPalette;
99
100   ClassDef(TOFSector, 1);
101   }; 
102 }
103 #endif