library: libCore
#include "TVirtualGL.h"

TGLManager


class description - header file - source file - inheritance tree (.pdf)

class TGLManager : public TNamed

Inheritance Chart:
TObject
<-
TNamed
<-
TGLManager
<-
TX11GLManager
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

    private:
TGLManager& operator=(const TGLManager&) public:
~TGLManager() virtual Bool_t AttachOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h) static TClass* Class() virtual Int_t CreateGLContext(Int_t winInd) virtual void DeleteGLContext(Int_t ctxInd) virtual void DrawViewer(TVirtualViewer3D* vv) virtual void ExtractViewport(Int_t ctxInd, Int_t* vp) virtual void Flush(Int_t ctxInd) virtual Int_t GetVirtualXInd(Int_t ctxInd) virtual Int_t InitGLWindow(Window_t winID) static TGLManager*& Instance() virtual TClass* IsA() const virtual Bool_t MakeCurrent(Int_t ctxInd) virtual void MarkForDirectCopy(Int_t ctxInd, Bool_t) virtual void PaintSingleObject(TVirtualGLPainter*) virtual void PanObject(TVirtualGLPainter* o, Int_t x, Int_t y) virtual void PrintViewer(TVirtualViewer3D* vv) virtual void ReadGLBuffer(Int_t ctxInd) virtual Bool_t ResizeOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h) virtual TObject* Select(TVirtualGLPainter* painter, Int_t px, Int_t py) virtual Bool_t SelectManip(TVirtualGLManip* manip, const TGLCamera* camera, const TGLRect* rect, const TGLBoundingBox* sceneBox) virtual void SelectOffScreenDevice(Int_t ctxInd) virtual Bool_t SelectViewer(TVirtualViewer3D* viewer, const TGLRect* selRect) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members




Class Description

                                                                      
 TVirtualGL                                                           
                                                                      
 The TVirtualGL class is an abstract base class defining the          
 OpenGL interface protocol. All interactions with OpenGL should be    
 done via the global pointer gVirtualGL. If the OpenGL library is     
 available this pointer is pointing to an instance of the TGLKernel   
 class which provides the actual interface to OpenGL. Using this      
 scheme of ABC we can use OpenGL in other parts of the framework      
 without having to link with the OpenGL library in case we don't      
 use the classes using OpenGL.                                        
                                                                      

TGLManager *& Instance()
 Return the global GL Manager.
void MakeCurrent(Window_t wind, ULong_t ctx)
TVirtualGL& operator=(const TVirtualGL& vgl)
void DrawViewer(TGLViewer *viewer)
Bool_t SelectViewer(TGLViewer *viewer, const TGLRect * rect)
Bool_t SelectManip(TGLManip *manip, const TGLCamera * camera, const TGLRect * rect, const TGLBoundingBox * sceneBox)
Bool_t Select(const TGLCamera & camera, const TGLRect & rect, const TGLBoundingBox & sceneBox)
Int_t InitGLWindow(Window_t winID)
index returned can be used as a result of gVirtualX->InitWindow
Int_t CreateGLContext(Int_t winInd)
winInd is the index, returned by InitGLWindow
Bool_t AttachOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h)
[            Off-screen rendering part
create DIB section/pixmap to read GL buffer into it,
ctxInd is the index, returned by CreateGLContext
Bool_t ResizeOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h)
void SelectOffScreenDevice(Int_t ctxInd)
analog of gVirtualX->SelectWindow(fPixmapID) => gVirtualGL->SelectOffScreenDevice(fPixmapID)
Int_t GetVirtualXInd(Int_t ctxInd)
Index of DIB/pixmap, valid for gVirtualX
void MarkForDirectCopy(Int_t ctxInd, Bool_t)
copy pixmap into window directly
void ExtractViewport(Int_t ctxInd, Int_t *vp)
Off-screen device holds sizes for glViewport
void ReadGLBuffer(Int_t ctxInd)
Read GL buffer into off-screen device
void Flush(Int_t ctxInd)
Swap buffers or copies DIB/pixmap (via BitBlt/XCopyArea)
void DeleteGLContext(Int_t ctxInd)
GL context and off-screen device deletion
void PaintSingleObject(TVirtualGLPainter *)
void PanObject(TVirtualGLPainter *o, Int_t x, Int_t y)
void PrintViewer(TVirtualViewer3D *vv)
EPS/PDF output

Author: Valery Fine(fine@vxcern.cern.ch) 05/03/97
Last update: root/base:$Name: $:$Id: TVirtualGL.cxx,v 1.8 2006/05/26 09:01:58 brun Exp $


ROOT page - Class index - Class Hierarchy - Top of the page

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.