25 #ifndef vtkMultiThreader_h 
   26 #define vtkMultiThreader_h 
   28 #include "vtkCommonCoreModule.h"  
   33 #if defined(VTK_USE_PTHREADS) 
   35 #include <sys/types.h>  
   53 #ifdef VTK_USE_PTHREADS 
   54 typedef void* (*vtkThreadFunctionType)(
void*);
 
   61 #ifdef VTK_USE_WIN32_THREADS 
   69 #if !defined(VTK_USE_PTHREADS) && !defined(VTK_USE_WIN32_THREADS) 
  113   vtkSetClampMacro(NumberOfThreads, 
int, 1, VTK_MAX_THREADS);
 
  114   virtual int GetNumberOfThreads();
 
  123   static void SetGlobalMaximumNumberOfThreads(
int val);
 
  124   static int GetGlobalMaximumNumberOfThreads();
 
  133   static void SetGlobalDefaultNumberOfThreads(
int val);
 
  134   static int GetGlobalDefaultNumberOfThreads();
 
  145   void SingleMethodExecute();
 
  152   void MultipleMethodExecute();
 
  179   void TerminateThread(
int thread_id);
 
  214   int SpawnedThreadActiveFlag[VTK_MAX_THREADS];
 
  215   std::mutex* SpawnedThreadActiveFlagLock[VTK_MAX_THREADS];
 
  221   void* MultipleData[VTK_MAX_THREADS];