|
ROOT 6.14/05 Reference Guide |
This class encapsulates window-system specific information about a GL-context and alows their proper management in ROOT.
Definition at line 30 of file TGLContext.h.
Public Member Functions | |
| TGLContext (TGLWidget *glWidget, Bool_t shareDefault=kTRUE, const TGLContext *shareList=0) | |
| TGLContext ctor "from" TGLWidget. More... | |
| virtual | ~TGLContext () |
| TGLContext dtor. More... | |
| Bool_t | ClearCurrent () |
| Reset current context. More... | |
| TGLContextIdentity * | GetIdentity () const |
| We can have several shared contexts, and gl-scene wants to know, if some context (defined by its identity) can be used. More... | |
| Bool_t | IsValid () const |
| Bool_t | MakeCurrent () |
| If context is valid (TGLPaintDevice, for which context was created still exists), make it current. More... | |
| void | Release () |
| Make the context invalid and (do thread switch, if needed) free resources. More... | |
| void | SetContext (TGLWidget *widget, const TGLContext *shareList) |
| X11 gl-context creation. More... | |
| void | SwapBuffers () |
| If context is valid (TGLPaintDevice, for which context was created still exists), swap buffers (in case of P-buffer call glFinish()). More... | |
Static Public Member Functions | |
| static TGLContext * | GetCurrent () |
| Ask TGLContextPrivate to lookup context in its internal map. More... | |
| static void | GlewInit () |
| Initialize GLEW - static private function. More... | |
Private Member Functions | |
| TGLContext (const TGLContext &) | |
| TGLContext & | operator= (const TGLContext &) |
Private Attributes | |
| TGLPaintDevice * | fDevice |
| Bool_t | fFromCtor |
| TGLContextIdentity * | fIdentity |
| std::unique_ptr< TGLContextPrivate > | fPimpl |
| Bool_t | fValid |
Static Private Attributes | |
| static Bool_t | fgGlewInitDone = kFALSE |
Friends | |
| class | TGLContextPrivate |
| class | TGLWidget |
#include <TGLContext.h>
| TGLContext::TGLContext | ( | TGLWidget * | wid, |
| Bool_t | shareDefault = kTRUE, |
||
| const TGLContext * | shareList = 0 |
||
| ) |
TGLContext ctor "from" TGLWidget.
Is shareDefault is true, the shareList is set from default context-identity. Otherwise the given shareList is used (can be null). Makes thread switching.
Definition at line 51 of file TGLContext.cxx.
|
virtual |
TGLContext dtor.
If it's called before TGLPaintDevice's dtor (context is valid) resource will be freed and context un-registered.
Definition at line 428 of file TGLContext.cxx.
|
private |
| Bool_t TGLContext::ClearCurrent | ( | ) |
Reset current context.
Definition at line 386 of file TGLContext.cxx.
|
static |
Ask TGLContextPrivate to lookup context in its internal map.
Definition at line 451 of file TGLContext.cxx.
| TGLContextIdentity * TGLContext::GetIdentity | ( | ) | const |
We can have several shared contexts, and gl-scene wants to know, if some context (defined by its identity) can be used.
Definition at line 443 of file TGLContext.cxx.
|
static |
Initialize GLEW - static private function.
Called immediately after creation of the first GL context.
Definition at line 85 of file TGLContext.cxx.
|
inline |
Definition at line 65 of file TGLContext.h.
| Bool_t TGLContext::MakeCurrent | ( | ) |
If context is valid (TGLPaintDevice, for which context was created still exists), make it current.
Definition at line 362 of file TGLContext.cxx.
|
private |
| void TGLContext::Release | ( | ) |
Make the context invalid and (do thread switch, if needed) free resources.
Definition at line 412 of file TGLContext.cxx.
| void TGLContext::SetContext | ( | TGLWidget * | widget, |
| const TGLContext * | shareList | ||
| ) |
X11 gl-context creation.
Defined as a member-function (this code removed from ctor) to make WIN32/X11 separation cleaner. This function is public only for calls via gROOT and called from ctor.
Definition at line 329 of file TGLContext.cxx.
| void TGLContext::SwapBuffers | ( | ) |
If context is valid (TGLPaintDevice, for which context was created still exists), swap buffers (in case of P-buffer call glFinish()).
Definition at line 395 of file TGLContext.cxx.
|
friend |
Definition at line 32 of file TGLContext.h.
|
friend |
Definition at line 33 of file TGLContext.h.
|
private |
Definition at line 37 of file TGLContext.h.
|
private |
Definition at line 40 of file TGLContext.h.
Definition at line 45 of file TGLContext.h.
|
private |
Definition at line 43 of file TGLContext.h.
|
private |
Definition at line 38 of file TGLContext.h.
|
private |
Definition at line 41 of file TGLContext.h.