Logo ROOT  
Reference Guide
TGLLockable Class Reference

Simple locking interface used by viewer and scene.

Definition at line 17 of file TGLLockable.h.

Classes

class  TUnlocker
 

Public Types

enum  ELock { kUnlocked , kDrawLock , kSelectLock , kModifyLock }
 

Public Member Functions

 TGLLockable ()
 
virtual ~TGLLockable ()
 
ELock CurrentLock () const
 
Bool_t IsDrawOrSelectLock () const
 
Bool_t IsLocked () const
 
virtual const char * LockIdStr () const
 
Bool_t ReleaseLock (ELock lock) const
 Release current lock, make sure it the same as the 'lock' argument. More...
 
Bool_t TakeLock (ELock lock) const
 Lock the object in mode 'lock'. More...
 

Static Public Member Functions

static const char * LockName (ELock lock)
 Return name-string for given lock-type. More...
 
static Bool_t LockValid (ELock lock)
 Test if lock is a valid type to take/release. More...
 

Protected Attributes

ELock fLock
 

Private Member Functions

 TGLLockable (const TGLLockable &)
 
TGLLockableoperator= (const TGLLockable &)
 

#include <TGLLockable.h>

Inheritance diagram for TGLLockable:
[legend]

Member Enumeration Documentation

◆ ELock

Enumerator
kUnlocked 
kDrawLock 
kSelectLock 
kModifyLock 

Definition at line 20 of file TGLLockable.h.

Constructor & Destructor Documentation

◆ TGLLockable() [1/2]

TGLLockable::TGLLockable ( const TGLLockable )
private

◆ TGLLockable() [2/2]

TGLLockable::TGLLockable ( )

Definition at line 22 of file TGLLockable.cxx.

◆ ~TGLLockable()

virtual TGLLockable::~TGLLockable ( )
inlinevirtual

Definition at line 54 of file TGLLockable.h.

Member Function Documentation

◆ CurrentLock()

ELock TGLLockable::CurrentLock ( ) const
inline

Definition at line 61 of file TGLLockable.h.

◆ IsDrawOrSelectLock()

Bool_t TGLLockable::IsDrawOrSelectLock ( ) const
inline

Definition at line 63 of file TGLLockable.h.

◆ IsLocked()

Bool_t TGLLockable::IsLocked ( ) const
inline

Definition at line 60 of file TGLLockable.h.

◆ LockIdStr()

virtual const char * TGLLockable::LockIdStr ( ) const
inlinevirtual

Reimplemented in TGLSceneBase, and TGLViewerBase.

Definition at line 56 of file TGLLockable.h.

◆ LockName()

const char * TGLLockable::LockName ( ELock  lock)
static

Return name-string for given lock-type.

Definition at line 69 of file TGLLockable.cxx.

◆ LockValid()

Bool_t TGLLockable::LockValid ( ELock  lock)
static

Test if lock is a valid type to take/release.

kUnlocked is never valid in these cases.

Definition at line 85 of file TGLLockable.cxx.

◆ operator=()

TGLLockable & TGLLockable::operator= ( const TGLLockable )
private

◆ ReleaseLock()

Bool_t TGLLockable::ReleaseLock ( ELock  lock) const

Release current lock, make sure it the same as the 'lock' argument.

Returns TRUE on success, FALSE on failure.

Definition at line 51 of file TGLLockable.cxx.

◆ TakeLock()

Bool_t TGLLockable::TakeLock ( ELock  lock) const

Lock the object in mode 'lock'.

Return TRUE if successful, FALSE if the object is already locked.

Definition at line 32 of file TGLLockable.cxx.

Member Data Documentation

◆ fLock

ELock TGLLockable::fLock
mutableprotected

Definition at line 32 of file TGLLockable.h.


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