18 #ifndef itkDomainThreader_h
19 #define itkDomainThreader_h
65 template<
typename TDomainPartitioner,
typename TAssociate >
76 typedef typename DomainPartitionerType::DomainType
DomainType;
139 itkSetObjectMacro( MultiThreader, MultiThreader );
150 void operator=( const
Self & ) ITK_DELETE_FUNCTION;
172 #ifndef ITK_MANUAL_INSTANTIATION
173 #include "itkDomainThreader.hxx"
DomainThreader * domainThreader
virtual void BeforeThreadedExecution()
DomainType m_CompleteDomain
Light weight base class for most itk classes.
void StartThreadingSequence()
Multi-threaded processing on a domain by processing sub-domains per thread.
void SetMaximumNumberOfThreads(const ThreadIdType threads)
virtual void DetermineNumberOfThreadsUsed()
virtual void AfterThreadedExecution()
AssociateType * m_Associate
static ITK_THREAD_RETURN_TYPE ThreaderCallback(void *arg)
#define ITK_THREAD_RETURN_TYPE
DomainPartitionerType::DomainType DomainType
virtual ~DomainThreader()
TDomainPartitioner DomainPartitionerType
void Execute(AssociateType *enclosingClass, const DomainType &domain)
SmartPointer< Self > Pointer
DomainPartitionerType::Pointer m_DomainPartitioner
Partitions an indexed container.
SmartPointer< const Self > ConstPointer
unsigned int ThreadIdType
ThreadIdType m_NumberOfThreadsUsed
ThreadIdType GetMaximumNumberOfThreads() const
MultiThreader::Pointer m_MultiThreader
virtual void ThreadedExecution(const DomainType &subdomain, const ThreadIdType threadId)=0
Base class for most ITK classes.
MultiThreader * GetMultiThreader() const