32 #ifndef vtkConditionVariable_h
33 #define vtkConditionVariable_h
41 #if defined(VTK_USE_PTHREADS) || defined(VTK_HP_PTHREADS)
49 #ifdef VTK_USE_WIN32_THREADS
51 # define _WIN32_WINNT 0x0501 // 0x0501 means target Windows XP or later
53 # include "vtkWindows.h"
56 #ifdef VTK_USE_WIN32_THREADS
61 int WaitingThreadCount;
64 CRITICAL_SECTION WaitingThreadCountCritSec;
67 vtkWindowsHANDLE Semaphore;
71 vtkWindowsHANDLE DoneWaiting;
82 int WaitingThreadCount;
85 CRITICAL_SECTION WaitingThreadCountCritSec;
96 vtkWindowsHANDLE Event;
101 #endif // VTK_USE_WIN32_THREADS
103 #ifndef VTK_USE_PTHREADS
104 #ifndef VTK_HP_PTHREADS
105 #ifndef VTK_USE_WIN32_THREADS
200 #endif // vtkConditionVariable_h
mutual exclusion locking class
abstract base class for most VTK objects
#define VTKCOMMONCORE_EXPORT
int Wait(vtkSimpleMutexLock &mutex)
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
int Wait(vtkMutexLock *mutex)
vtkSimpleMutexLock SimpleMutexLock
vtkConditionType ConditionVariable
vtkSimpleConditionVariable SimpleConditionVariable
mutual exclusion locking class