12#ifndef ROOT_TGLContext
13#define ROOT_TGLContext
38 std::unique_ptr<TGLContextPrivate>
fPimpl;
#define ClassDef(name, id)
Identifier of a shared GL-context.
std::list< DLRange_t > DLTrash_t
virtual ~TGLContextIdentity()
Destructor.
static TGLContextIdentity * GetDefaultIdentity()
Get identity of a default Gl context. Static.
std::list< TGLContext * > CtxList_t
void CheckDestroy()
Private function called when reference count is reduced.
TGLContextIdentity()
Constructor.
std::pair< UInt_t, Int_t > DLRange_t
TGLFontManager * fFontManager
Int_t GetClientRefCnt() const
static TGLContextIdentity * fgDefaultIdentity
void DeleteGLResources()
Delete GL resources registered for destruction.
void Release(TGLContext *ctx)
Remove context ctx from the list of references.
DLTrash_t::const_iterator DLTrashIt_t
static TGLContextIdentity * GetCurrent()
Find identitfy of current context. Static.
TGLFontManager * GetFontManager()
Get the free-type font-manager associated with this context-identity.
void AddRef(TGLContext *ctx)
Add context ctx to the list of references.
void RegisterDLNameRangeToWipe(UInt_t base, Int_t size)
Remember dl range for deletion in next MakeCurrent or dtor execution.
static TGLContext * GetDefaultContextAny()
Get the first GL context with the default identity.
This class encapsulates window-system specific information about a GL-context and alows their proper ...
void Release()
Make the context invalid and (do thread switch, if needed) free resources.
void SwapBuffers()
If context is valid (TGLPaintDevice, for which context was created still exists), swap buffers (in ca...
TGLContextIdentity * GetIdentity() const
We can have several shared contexts, and gl-scene wants to know, if some context (defined by its iden...
static Bool_t fgGlewInitDone
std::unique_ptr< TGLContextPrivate > fPimpl
virtual ~TGLContext()
TGLContext dtor.
Bool_t MakeCurrent()
If context is valid (TGLPaintDevice, for which context was created still exists), make it current.
void SetContext(TGLWidget *widget, const TGLContext *shareList)
X11 gl-context creation.
static void GlewInit()
Initialize GLEW - static private function.
TGLContext(TGLWidget *glWidget, Bool_t shareDefault=kTRUE, const TGLContext *shareList=0)
TGLContext ctor "from" TGLWidget.
TGLContext & operator=(const TGLContext &)
Bool_t ClearCurrent()
Reset current context.
TGLContextIdentity * fIdentity
static TGLContext * GetCurrent()
Ask TGLContextPrivate to lookup context in its internal map.
TGLContext(const TGLContext &)
A FreeType GL font manager.