![]() |
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>
Inheritance diagram for TGLLockable:| 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().