]>
Commit | Line | Data |
---|---|---|
dcb55984 | 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 | ||
84aff7a4 | 10 | class TEveBoxSetGL; |
dcb55984 | 11 | |
12 | namespace Alieve { | |
13 | ||
14 | class TPCSector3D; | |
15 | ||
16 | class TPCSector3DGL : public TGLObject | |
17 | { | |
265ecb21 | 18 | TPCSector3DGL(const TPCSector3DGL&); // Not implemented |
19 | TPCSector3DGL& operator=(const TPCSector3DGL&); // Not implemented | |
20 | ||
dcb55984 | 21 | protected: |
22 | TPCSector3D* fSector; // fModel dynamic-casted to TPCSector3DGL | |
84aff7a4 | 23 | TEveBoxSetGL* fBoxRnr; |
dcb55984 | 24 | |
7b7bcadc | 25 | mutable UInt_t fRTS; |
26 | ||
19208112 | 27 | virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; |
dcb55984 | 28 | |
29 | public: | |
30 | TPCSector3DGL(); | |
31 | virtual ~TPCSector3DGL(); | |
32 | ||
32e219c2 | 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 | ||
19208112 | 37 | virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); |
dcb55984 | 38 | virtual void SetBBox(); |
39 | ||
91cb2b7c | 40 | void DrawSegmentFrame(const TPCSectorData::SegmentInfo& s, |
41 | Int_t botExtraPads=0, Int_t topExtraPads=0) const; | |
dcb55984 | 42 | |
32e219c2 | 43 | virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } |
44 | virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & rec); | |
45 | ||
dcb55984 | 46 | ClassDef(TPCSector3DGL, 0); |
47 | }; // endclass TPCSector3DGL | |
48 | ||
49 | } | |
50 | ||
51 | #endif |