#ifndef ROOT_TGLRnrCtx
#define ROOT_TGLRnrCtx
#include <Rtypes.h>
#include <list>
#include <vector>
class TGLViewerBase;
class TGLCamera;
class TGLSceneBase;
class TGLSceneInfo;
class TGLContextIdentity;
class TGLClip;
class TGLSelectBuffer;
class TGLRect;
class GLUquadric;
class TGLRnrCtx
{
public:
enum EStyle {
kStyleUndef = -1,
kFill,
kOutline,
kWireFrame
};
static const char* StyleName(Short_t style);
enum EPass {
kPassUndef = -1,
kPassFill,
kPassOutlineFill,
kPassOutlineLine,
kPassWireFrame
};
enum ELODPresets {
kLODUndef = -1,
kLODPixel = 0,
kLODLow = 20,
kLODMed = 50,
kLODHigh = 100
};
private:
TGLRnrCtx(const TGLRnrCtx&);
TGLRnrCtx& operator=(const TGLRnrCtx&);
protected:
TGLViewerBase *fViewer;
TGLCamera *fCamera;
TGLSceneInfo *fSceneInfo;
Short_t fViewerLOD;
Short_t fSceneLOD;
Short_t fCombiLOD;
Short_t fShapeLOD;
Short_t fViewerStyle;
Short_t fSceneStyle;
TGLClip *fViewerClip;
TGLClip *fSceneClip;
TGLClip *fClip;
Short_t fDrawPass;
Double_t fRenderTimeout;
Bool_t fSelection;
Bool_t fSecSelection;
Int_t fPickRadius;
TGLRect *fPickRectangle;
TGLSelectBuffer*fSelectBuffer;
UInt_t fEventKeySym;
Bool_t fDLCaptureOpen;
TGLContextIdentity *fGLCtxIdentity;
GLUquadric *fQuadric;
public:
TGLRnrCtx(TGLViewerBase* viewer);
virtual ~TGLRnrCtx();
TGLViewerBase * GetViewer() { return fViewer; }
TGLViewerBase & RefViewer() { return *fViewer; }
TGLCamera * GetCamera() { return fCamera; }
TGLCamera & RefCamera() { return *fCamera; }
TGLSceneInfo * GetSceneInfo() { return fSceneInfo; }
TGLSceneInfo & RefSceneInfo() { return *fSceneInfo; }
TGLSceneBase * GetScene();
TGLSceneBase & RefScene();
void SetCamera (TGLCamera* c) { fCamera = c; }
void SetSceneInfo(TGLSceneInfo* si) { fSceneInfo = si; }
Short_t ViewerLOD() const { return fViewerLOD; }
void SetViewerLOD(Short_t LOD) { fViewerLOD = LOD; }
Short_t SceneLOD() const { return fSceneLOD; }
void SetSceneLOD(Short_t LOD) { fSceneLOD = LOD; }
Short_t CombiLOD() const { return fCombiLOD; }
void SetCombiLOD(Short_t LOD) { fCombiLOD = LOD; }
Short_t ShapeLOD() const { return fShapeLOD; }
void SetShapeLOD(Short_t LOD) { fShapeLOD = LOD; }
Short_t ViewerStyle() const { return fViewerStyle; }
void SetViewerStyle(Short_t sty) { fViewerStyle = sty; }
Short_t SceneStyle() const { return fSceneStyle; }
void SetSceneStyle(Short_t sty) { fSceneStyle = sty; }
TGLClip* ViewerClip() const { return fViewerClip; }
void SetViewerClip(TGLClip *p) { fViewerClip = p; }
TGLClip* SceneClip() const { return fSceneClip; }
void SetSceneClip(TGLClip *p) { fSceneClip = p; }
TGLClip* Clip() const { return fClip; }
void SetClip(TGLClip *p) { fClip = p; }
Bool_t HasClip() const { return fClip != 0; }
Short_t DrawPass() const { return fDrawPass; }
void SetDrawPass(Short_t dpass) { fDrawPass = dpass; }
Bool_t IsDrawPassFilled() const;
Double_t RenderTimeout() const { return fRenderTimeout; }
void SetRenderTimeout(Double_t tout) { fRenderTimeout = tout; }
Bool_t Selection() const { return fSelection; }
void SetSelection(Bool_t sel) { fSelection = sel; }
Bool_t SecSelection() const { return fSecSelection; }
void SetSecSelection(Bool_t secSel) { fSecSelection = secSel; }
TGLRect * GetPickRectangle();
Int_t GetPickRadius();
TGLSelectBuffer * GetSelectBuffer() const { return fSelectBuffer; }
void BeginSelection(Int_t x, Int_t y, Int_t r=3);
void EndSelection (Int_t glResult);
UInt_t GetEventKeySym() const { return fEventKeySym; }
void SetEventKeySym(UInt_t k) { fEventKeySym = k; }
Bool_t IsDLCaptureOpen() const { return fDLCaptureOpen; }
void OpenDLCapture();
void CloseDLCapture();
TGLContextIdentity* GetGLCtxIdentity() const { return fGLCtxIdentity; }
void SetGLCtxIdentity(TGLContextIdentity* cid) { fGLCtxIdentity = cid; }
GLUquadric * GetGluQuadric() { return fQuadric; }
ClassDef(TGLRnrCtx, 0)
};
#endif
Last update: Thu Jan 17 08:52:13 2008
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.