18#ifndef itkThreadSupport_h
19#define itkThreadSupport_h
23#include "itkConfigure.h"
29#ifdef ITK_USE_WIN32_THREADS
31# define _WIN32_WINNT 0x0501
35#if defined(ITK_USE_PTHREADS)
37#elif defined(ITK_USE_WIN32_THREADS)
47#if defined(ITK_USE_PTHREADS)
53# if !defined(ITK_FUTURE_LEGACY_REMOVE)
62#elif defined(ITK_USE_WIN32_THREADS)
69# if !defined(ITK_FUTURE_LEGACY_REMOVE)
76# define ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION itk::ITK_THREAD_RETURN_TYPE __stdcall
84# if !defined(ITK_FUTURE_LEGACY_REMOVE)
88# define ITK_THREAD_RETURN_DEFAULT_VALUE
97#if defined(ITK_USE_PTHREADS)
98 pthread_cond_t m_ConditionVariable;
99#elif defined(ITK_USE_WIN32_THREADS)
100 int m_NumberOfWaiters;
101 CRITICAL_SECTION m_NumberOfWaitersLock;
106 HANDLE m_WaitersAreDone;
124#if defined(ITK_USE_PTHREADS)
127#elif defined(ITK_USE_WIN32_THREADS)
134#if !defined(ITK_FUTURE_LEGACY_REMOVE)
136using itk::ITK_DEFAULT_THREAD_ID;
#define ITK_THREAD_RETURN_DEFAULT_VALUE
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
void ITK_THREAD_RETURN_TYPE
constexpr vcl_size_t ITK_MAX_THREADS
void(*)(void *) ThreadFunctionType
itk::ITK_THREAD_RETURN_TYPE ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION