OpenDAFF C++ API  v1.7
Directional Audio File Format
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
DAFFViz::GlobalLock Class Referenceabstract

Global lock for synchronization of VTK access. More...

#include <DAFFVizGlobalLock.h>

Inheritance diagram for DAFFViz::GlobalLock:
DAFFViz::GlobalLockImpl

Public Member Functions

virtual void lock ()=0
 Lock globally. More...
 
virtual void unlock ()=0
 Unlock globally. More...
 

Static Public Member Functions

static DAFFViz::GlobalLockgetInstance ()
 Return the singleton instance. More...
 

Protected Member Functions

virtual ~GlobalLock ()
 

Detailed Description

Global lock for synchronization of VTK access.

When drawing a VTK scene by a render process, the mutual exclusion of access to the root node is indispensable. Any change of the scene graph has to be suppressed to avoid inconsistancy. Be aware that when writing or deriving a DAFFViz class that crucial access to the members of e.g. the vtkActor has to be locked! For ease you can use the DAFFVIZ_LOCK_VTK and DAFFVIZ_UNLOCK_VTK macros at the start and end of your method to provide for constistancy. If your renderer crashes for some esoteric matter you probably forget to lock the write access of your node.

Definition at line 36 of file DAFFVizGlobalLock.h.

Constructor & Destructor Documentation

virtual DAFFViz::GlobalLock::~GlobalLock ( )
inlineprotectedvirtual

Definition at line 49 of file DAFFVizGlobalLock.h.

Member Function Documentation

GlobalLock * DAFFViz::GlobalLock::getInstance ( )
static

Return the singleton instance.

Definition at line 27 of file DAFFVizGlobalLock.cpp.

virtual void DAFFViz::GlobalLock::lock ( )
pure virtual

Lock globally.

Implemented in DAFFViz::GlobalLockImpl.

virtual void DAFFViz::GlobalLock::unlock ( )
pure virtual

Unlock globally.

Implemented in DAFFViz::GlobalLockImpl.


The documentation for this class was generated from the following files:
OpenDAFF is a project from the Institute of Technical Acoustics, RWTH Aachen University, Germany.