]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Alieve/TPCSector3DGL.h
Put black-listed classes out of Alieve namespace.
[u/mrichter/AliRoot.git] / EVE / Alieve / TPCSector3DGL.h
1 // $Header$
2
3 #ifndef ALIEVE_TPCSector3DGL_H
4 #define ALIEVE_TPCSector3DGL_H
5
6 #include <TGLObject.h>
7
8 #include <Alieve/TPCSectorData.h>
9
10 class TEveBoxSetGL;
11
12 namespace Alieve {
13
14 class TPCSector3D;
15
16 class TPCSector3DGL : public TGLObject
17 {
18   TPCSector3DGL(const TPCSector3DGL&);            // Not implemented
19   TPCSector3DGL& operator=(const TPCSector3DGL&); // Not implemented
20
21 protected:
22   TPCSector3D*    fSector; // fModel dynamic-casted to TPCSector3DGL
23   TEveBoxSetGL* fBoxRnr;
24
25   mutable UInt_t  fRTS;
26
27   virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
28
29 public:
30   TPCSector3DGL();
31   virtual ~TPCSector3DGL();
32
33   virtual Bool_t   ShouldDLCache(const TGLRnrCtx&) const { return kFALSE; }
34   virtual ELODAxes SupportedLODAxes()              const { return kLODAxesAll; }
35   virtual Short_t  QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const;
36
37   virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0);
38   virtual void   SetBBox();
39
40   void DrawSegmentFrame(const TPCSectorData::SegmentInfo& s,
41                         Int_t botExtraPads=0, Int_t topExtraPads=0) const;
42
43   virtual Bool_t SupportsSecondarySelect() const { return kTRUE; }
44   virtual void   ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & rec);
45
46   ClassDef(TPCSector3DGL, 0);
47 }; // endclass TPCSector3DGL
48
49 }
50
51 #endif