18 #ifndef itkLevelSetEvolutionComputeIterationThreader_h
19 #define itkLevelSetEvolutionComputeIterationThreader_h
38 template<
typename TLevelSet,
typename TDomainPartitioner,
typename TLevelSetEvolution >
44 template<
typename TImage,
typename TLevelSetEvolution >
46 :
public DomainThreader< ThreadedImageRegionPartitioner< TImage::ImageDimension >, TLevelSetEvolution >
62 typedef typename Superclass::DomainType
DomainType;
67 typedef typename LevelSetEvolutionType::IdListType
IdListType;
84 virtual void ThreadedExecution(
const DomainType & imageSubRegion,
const ThreadIdType threadId ) ITK_OVERRIDE;
91 template<
typename TImage,
typename TLevelSetEvolution >
94 :
public DomainThreader< ThreadedIteratorRangePartitioner< typename TLevelSetEvolution::DomainMapImageFilterType::DomainMapType::const_iterator >, TLevelSetEvolution >
113 typedef typename Superclass::DomainType
DomainType;
118 typedef typename LevelSetEvolutionType::IdListType
IdListType;
135 virtual void ThreadedExecution(
const DomainType & imageSubRegion,
const ThreadIdType threadId ) ITK_OVERRIDE;
143 template<
typename TOutput,
unsigned int VDimension,
typename TLevelSetEvolution >
149 :
public DomainThreader< ThreadedIteratorRangePartitioner< typename WhitakerSparseLevelSetImage< TOutput, VDimension >::LayerConstIterator >, TLevelSetEvolution >
165 typedef typename Superclass::DomainType
DomainType;
185 virtual void BeforeThreadedExecution() ITK_OVERRIDE;
187 virtual
void ThreadedExecution( const
DomainType & iteratorSubRange, const
ThreadIdType threadId ) ITK_OVERRIDE;
189 virtual
void AfterThreadedExecution() ITK_OVERRIDE;
192 NodePairsPerThreadType m_NodePairsPerThread;
200 #ifndef ITK_MANUAL_INSTANTIATION
201 #include "itkLevelSetEvolutionComputeIterationThreader.hxx"
LevelSetEvolutionComputeIterationThreader Self
LevelSetEvolutionType::EquationContainerType EquationContainerType
LevelSetEvolutionType::LevelSetContainerType LevelSetContainerType
LevelSetEvolutionComputeIterationThreader Self
Light weight base class for most itk classes.
SmartPointer< const Self > ConstPointer
Superclass::AssociateType AssociateType
Multi-threaded processing on a domain by processing sub-domains per thread.
LevelSetEvolutionType::LevelSetImageType LevelSetImageType
std::vector< std::vector< NodePairType > > NodePairsPerThreadType
LevelSetEvolutionType::LevelSetIdentifierType LevelSetIdentifierType
LevelSetType::OffsetType OffsetType
LevelSetEvolutionType::TermContainerType TermContainerType
LevelSetEvolutionType::LevelSetType LevelSetType
SmartPointer< Self > Pointer
LevelSetEvolutionType::LevelSetDataType LevelSetDataType
LevelSetType::OffsetType OffsetType
LevelSetEvolutionType::IdListConstIterator IdListConstIterator
LevelSetEvolutionType::IdListType IdListType
Class for partitioning of an ImageRegion.
SmartPointer< const Self > ConstPointer
Superclass::DomainType DomainType
LevelSetEvolutionType::LevelSetInputType LevelSetInputType
SmartPointer< Self > Pointer
SmartPointer< const Self > ConstPointer
LevelSetEvolutionType::NodePairType NodePairType
LevelSetType::RegionType RegionType
LevelSetEvolutionType::LevelSetType LevelSetType
LevelSetType::RegionType RegionType
LevelSetEvolutionType::LevelSetOutputRealType LevelSetOutputRealType
Thread the ComputeIteration method.
LevelSetEvolutionType::InputImageType InputImageType
LevelSetEvolutionComputeIterationThreader Self
DomainThreader< ThreadedDomainMapPartitionerType, TLevelSetEvolution > Superclass
LevelSetEvolutionType::LevelSetDataType LevelSetDataType
Derived class for the sparse-field representation of level-set function.
LevelSetEvolutionType::IdListType IdListType
TLevelSetEvolution::DomainMapImageFilterType::DomainMapType::const_iterator DomainMapConstIteratorType
LevelSetType::OffsetType OffsetType
ThreadedIteratorRangePartitioner< DomainMapConstIteratorType > ThreadedDomainMapPartitionerType
LevelSetType::IndexType IndexType
Base class for the "dense" representation of a level-set function on one image.
LevelSetEvolutionType::InputImageType InputImageType
LevelSetEvolutionType::LevelSetContainerType LevelSetContainerType
LevelSetEvolutionType::LevelSetDataType LevelSetDataType
LevelSetEvolutionType::LevelSetContainerType LevelSetContainerType
Partitions an iterator range for threading.
LevelSetType::RegionType RegionType
unsigned int ThreadIdType
LevelSetType::IndexType IndexType
TLevelSetEvolution LevelSetEvolutionType
Superclass::DomainType DomainType
LevelSetEvolutionType::TermContainerType TermContainerType
LevelSetEvolutionType::TermContainerType TermContainerType
LevelSetEvolutionType::LevelSetOutputType LevelSetOutputType
LevelSetEvolutionType::LevelSetType LevelSetType
Superclass::DomainType DomainType
DomainThreader< ThreadedIteratorRangePartitioner< typename WhitakerSparseLevelSetImage< TOutput, VDimension >::LayerConstIterator >, TLevelSetEvolution > Superclass
SmartPointer< Self > Pointer
DomainThreader< ThreadedImageRegionPartitioner< TImage::ImageDimension >, TLevelSetEvolution > Superclass
LevelSetEvolutionType::IdListConstIterator IdListConstIterator
Superclass::AssociateType AssociateType
LevelSetEvolutionType::EquationContainerType EquationContainerType
TLevelSetEvolution LevelSetEvolutionType
Superclass::AssociateType AssociateType
LevelSetEvolutionType::LevelSetOutputRealType LevelSetOutputRealType
LevelSetEvolutionType::LevelSetImageType LevelSetImageType
LevelSetType::IndexType IndexType
TLevelSetEvolution LevelSetEvolutionType
ImageBaseType::IndexType IndexType