Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLContextIdentity Class Reference

Identifier of a shared GL-context.

Objects shared among GL-contexts include: display-list definitions, texture objects and shader programs.

Definition at line 80 of file TGLContext.h.

Public Member Functions

 TGLContextIdentity ()
 Constructor.
 
virtual ~TGLContextIdentity ()
 Destructor.
 
void AddClientRef ()
 
void AddRef (TGLContext *ctx)
 Add context ctx to the list of references.
 
void DeleteGLResources ()
 Delete GL resources registered for destruction.
 
Int_t GetClientRefCnt () const
 
TGLFontManagerGetFontManager ()
 Get the free-type font-manager associated with this context-identity.
 
Int_t GetRefCnt () const
 
virtual TClassIsA () const
 
Bool_t IsValid () const
 
void RegisterDLNameRangeToWipe (UInt_t base, Int_t size)
 Remember dl range for deletion in next MakeCurrent or dtor execution.
 
void Release (TGLContext *ctx)
 Remove context ctx from the list of references.
 
void ReleaseClient ()
 
virtual void Streamer (TBuffer &)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static TGLContextIdentityGetCurrent ()
 Find identitfy of current context. Static.
 
static TGLContextGetDefaultContextAny ()
 Get the first GL context with the default identity.
 
static TGLContextIdentityGetDefaultIdentity ()
 Get identity of a default Gl context. Static.
 

Protected Attributes

TGLFontManagerfFontManager
 

Private Types

typedef std::list< TGLContext * > CtxList_t
 
typedef std::pair< UInt_t, Int_tDLRange_t
 
typedef std::list< DLRange_tDLTrash_t
 
typedef DLTrash_t::const_iterator DLTrashIt_t
 

Private Member Functions

void CheckDestroy ()
 Private function called when reference count is reduced.
 

Private Attributes

Int_t fClientCnt
 
Int_t fCnt
 
CtxList_t fCtxs
 
DLTrash_t fDLTrash
 

Static Private Attributes

static TGLContextIdentityfgDefaultIdentity = new TGLContextIdentity
 

#include <TGLContext.h>

Member Typedef Documentation

◆ CtxList_t

typedef std::list<TGLContext*> TGLContextIdentity::CtxList_t
private

Definition at line 121 of file TGLContext.h.

◆ DLRange_t

typedef std::pair<UInt_t, Int_t> TGLContextIdentity::DLRange_t
private

Definition at line 117 of file TGLContext.h.

◆ DLTrash_t

typedef std::list<DLRange_t> TGLContextIdentity::DLTrash_t
private

Definition at line 118 of file TGLContext.h.

◆ DLTrashIt_t

typedef DLTrash_t::const_iterator TGLContextIdentity::DLTrashIt_t
private

Definition at line 119 of file TGLContext.h.

Constructor & Destructor Documentation

◆ TGLContextIdentity()

TGLContextIdentity::TGLContextIdentity ( )

Constructor.

Definition at line 471 of file TGLContext.cxx.

◆ ~TGLContextIdentity()

TGLContextIdentity::~TGLContextIdentity ( )
virtual

Destructor.

Definition at line 479 of file TGLContext.cxx.

Member Function Documentation

◆ AddClientRef()

void TGLContextIdentity::AddClientRef ( )
inline

Definition at line 93 of file TGLContext.h.

◆ AddRef()

void TGLContextIdentity::AddRef ( TGLContext ctx)

Add context ctx to the list of references.

Definition at line 487 of file TGLContext.cxx.

◆ CheckDestroy()

void TGLContextIdentity::CheckDestroy ( )
private

Private function called when reference count is reduced.

Definition at line 577 of file TGLContext.cxx.

◆ Class()

static TClass * TGLContextIdentity::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGLContextIdentity::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGLContextIdentity::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 128 of file TGLContext.h.

◆ DeclFileName()

static const char * TGLContextIdentity::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 128 of file TGLContext.h.

◆ DeleteGLResources()

void TGLContextIdentity::DeleteGLResources ( )

Delete GL resources registered for destruction.

Definition at line 522 of file TGLContext.cxx.

◆ GetClientRefCnt()

Int_t TGLContextIdentity::GetClientRefCnt ( ) const
inline

Definition at line 97 of file TGLContext.h.

◆ GetCurrent()

TGLContextIdentity * TGLContextIdentity::GetCurrent ( )
static

Find identitfy of current context. Static.

Definition at line 538 of file TGLContext.cxx.

◆ GetDefaultContextAny()

TGLContext * TGLContextIdentity::GetDefaultContextAny ( )
static

Get the first GL context with the default identity.

Can return zero, but that's OK, too. Static.

Definition at line 558 of file TGLContext.cxx.

◆ GetDefaultIdentity()

TGLContextIdentity * TGLContextIdentity::GetDefaultIdentity ( )
static

Get identity of a default Gl context. Static.

Definition at line 547 of file TGLContext.cxx.

◆ GetFontManager()

TGLFontManager * TGLContextIdentity::GetFontManager ( )

Get the free-type font-manager associated with this context-identity.

Definition at line 568 of file TGLContext.cxx.

◆ GetRefCnt()

Int_t TGLContextIdentity::GetRefCnt ( ) const
inline

Definition at line 96 of file TGLContext.h.

◆ IsA()

virtual TClass * TGLContextIdentity::IsA ( ) const
inlinevirtual
Returns
TClass describing current object

Definition at line 128 of file TGLContext.h.

◆ IsValid()

Bool_t TGLContextIdentity::IsValid ( ) const
inline

Definition at line 99 of file TGLContext.h.

◆ RegisterDLNameRangeToWipe()

void TGLContextIdentity::RegisterDLNameRangeToWipe ( UInt_t  base,
Int_t  size 
)

Remember dl range for deletion in next MakeCurrent or dtor execution.

Definition at line 514 of file TGLContext.cxx.

◆ Release()

void TGLContextIdentity::Release ( TGLContext ctx)

Remove context ctx from the list of references.

Definition at line 496 of file TGLContext.cxx.

◆ ReleaseClient()

void TGLContextIdentity::ReleaseClient ( )
inline

Definition at line 94 of file TGLContext.h.

◆ Streamer()

virtual void TGLContextIdentity::Streamer ( TBuffer )
virtual

◆ StreamerNVirtual()

void TGLContextIdentity::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 128 of file TGLContext.h.

Member Data Documentation

◆ fClientCnt

Int_t TGLContextIdentity::fClientCnt
private

Definition at line 113 of file TGLContext.h.

◆ fCnt

Int_t TGLContextIdentity::fCnt
private

Definition at line 112 of file TGLContext.h.

◆ fCtxs

CtxList_t TGLContextIdentity::fCtxs
private

Definition at line 124 of file TGLContext.h.

◆ fDLTrash

DLTrash_t TGLContextIdentity::fDLTrash
private

Definition at line 123 of file TGLContext.h.

◆ fFontManager

TGLFontManager* TGLContextIdentity::fFontManager
protected

Definition at line 84 of file TGLContext.h.

◆ fgDefaultIdentity

TGLContextIdentity * TGLContextIdentity::fgDefaultIdentity = new TGLContextIdentity
staticprivate

Definition at line 126 of file TGLContext.h.

Libraries for TGLContextIdentity:

The documentation for this class was generated from the following files: