25 #ifndef vtkMultiThreader_h 26 #define vtkMultiThreader_h 28 #include "vtkCommonCoreModule.h" 31 #if defined(VTK_USE_PTHREADS) 33 #include <sys/types.h> 51 #ifdef VTK_USE_PTHREADS 52 typedef void *(*vtkThreadFunctionType)(
void *);
59 #ifdef VTK_USE_WIN32_THREADS 67 #if !defined(VTK_USE_PTHREADS) && !defined(VTK_USE_WIN32_THREADS) 98 #define ThreadInfoStruct vtkMultiThreader::ThreadInfo 115 vtkSetClampMacro( NumberOfThreads,
int, 1, VTK_MAX_THREADS );
116 virtual int GetNumberOfThreads();
125 static void SetGlobalMaximumNumberOfThreads(
int val);
126 static int GetGlobalMaximumNumberOfThreads();
135 static void SetGlobalDefaultNumberOfThreads(
int val);
136 static int GetGlobalDefaultNumberOfThreads();
147 void SingleMethodExecute();
154 void MultipleMethodExecute();
181 void TerminateThread(
int thread_id );
217 int SpawnedThreadActiveFlag[VTK_MAX_THREADS];
224 void *MultipleData[VTK_MAX_THREADS];
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void(* vtkThreadFunctionType)(void *)
vtkMutexLock * ActiveFlagLock
A class for performing multithreaded execution.
int vtkMultiThreaderIDType
a simple class to control print indentation
int vtkThreadProcessIDType
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
mutual exclusion locking class
vtkThreadFunctionType SingleMethod