ROOT
6.06/09
Reference Guide
|
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 () |
virtual const char * | LockIdStr () const |
Bool_t | TakeLock (ELock lock) const |
Lock the object in mode 'lock'. More... | |
Bool_t | ReleaseLock (ELock lock) const |
Release current lock, make sure it the same as the 'lock' argument. More... | |
Bool_t | IsLocked () const |
ELock | CurrentLock () const |
Bool_t | IsDrawOrSelectLock () const |
ClassDef (TGLLockable, 0) | |
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 &) | |
TGLLockable & | operator= (const TGLLockable &) |
#include <TGLLockable.h>
enum TGLLockable::ELock |
Enumerator | |
---|---|
kUnlocked | |
kDrawLock | |
kSelectLock | |
kModifyLock |
Definition at line 20 of file TGLLockable.h.
|
private |
TGLLockable::TGLLockable | ( | ) |
Definition at line 22 of file TGLLockable.cxx.
|
inlinevirtual |
Definition at line 54 of file TGLLockable.h.
TGLLockable::ClassDef | ( | TGLLockable | , |
0 | |||
) |
|
inline |
Definition at line 61 of file TGLLockable.h.
Referenced by TGLScenePad::AddObject(), TGLScenePad::BuildingScene(), TGLViewer::DoDraw(), TGLViewer::DoOverlaySelect(), TGLViewer::DoSecondarySelect(), TGLViewer::DoSelect(), TGLEventHandler::HandleButton(), TGLEventHandler::HandleConfigureNotify(), TGLEventHandler::HandleDoubleClick(), TGLEventHandler::HandleExpose(), TGLEventHandler::HandleKey(), TGLEventHandler::HandleMotion(), TGLEventHandler::Repaint(), TGLViewer::SetCurrentCamera(), TGLViewer::SetupCameras(), TGLViewer::SwapBuffers(), and TGLLockable::TUnlocker::~TUnlocker().
|
inline |
Definition at line 63 of file TGLLockable.h.
Referenced by TGLSceneBase::PreDraw(), and TGLViewer::SwapBuffers().
|
inline |
Definition at line 60 of file TGLLockable.h.
Referenced by TGLEventHandler::HandleButton(), TGLEventHandler::HandleConfigureNotify(), TGLEventHandler::HandleDoubleClick(), TGLEventHandler::HandleExpose(), TGLEventHandler::HandleKey(), TGLEventHandler::HandleMotion(), TGLEventHandler::Repaint(), TGLViewer::SetCurrentCamera(), TGLViewer::SetupCameras(), and TGLLockable::TUnlocker::~TUnlocker().
|
inlinevirtual |
Reimplemented in TGLViewerBase, and TGLSceneBase.
Definition at line 56 of file TGLLockable.h.
Referenced by ReleaseLock(), and TakeLock().
|
static |
Return name-string for given lock-type.
Definition at line 69 of file TGLLockable.cxx.
Referenced by TGLViewer::DoDraw(), TGLViewer::DoOverlaySelect(), TGLViewer::DoSecondarySelect(), TGLViewer::DoSelect(), TGLEventHandler::HandleButton(), TGLEventHandler::HandleConfigureNotify(), TGLEventHandler::HandleDoubleClick(), TGLEventHandler::HandleExpose(), TGLEventHandler::HandleKey(), TGLEventHandler::HandleMotion(), ReleaseLock(), TGLEventHandler::Repaint(), TGLViewer::SetCurrentCamera(), TGLViewer::SetupCameras(), TGLViewer::SwapBuffers(), and TakeLock().
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.
Referenced by ReleaseLock(), and TakeLock().
|
private |
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.
Referenced by TGLViewer::DoDraw(), TGLViewer::DoOverlaySelect(), TGLViewer::DoSecondarySelect(), TGLViewer::DoSelect(), TGLScene::EndUpdate(), TGLViewerBase::PostRender(), TGLViewerBase::PreRender(), TGLScene::~TGLScene(), and TGLLockable::TUnlocker::~TUnlocker().
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.
Referenced by TGLScene::BeginUpdate(), TGLViewer::DoDraw(), TGLViewer::GetPictureUsingBB(), TGLViewer::GetPictureUsingFBO(), TGLViewerBase::PreRender(), TGLViewer::RequestDraw(), TGLViewer::RequestOverlaySelect(), TGLViewer::RequestSecondarySelect(), TGLViewer::RequestSelect(), TGLViewer::SavePictureUsingBB(), TGLViewer::SavePictureUsingFBO(), and TGLScene::~TGLScene().
|
mutableprotected |
Definition at line 32 of file TGLLockable.h.
Referenced by TGLScene::AdoptLogical(), TGLScene::AdoptPhysical(), CurrentLock(), TGLScene::DestroyLogical(), TGLScene::DestroyLogicals(), TGLScene::DestroyPhysical(), TGLScene::DestroyPhysicals(), ReleaseLock(), TakeLock(), TGLScene::UpdateLogical(), TGLScene::UpdatePhysical(), and TGLScene::UpdatePhysioLogical().