18#ifndef itkCorrelationImageToImageMetricv4HelperThreader_h
19#define itkCorrelationImageToImageMetricv4HelperThreader_h
37template <
typename TDomainPartitioner,
typename TImageToImageMetric,
typename TCorrelationMetric>
54 using typename Superclass::DomainType;
55 using typename Superclass::AssociateType;
58 using typename Superclass::VirtualIndexType;
59 using typename Superclass::VirtualPointType;
60 using typename Superclass::FixedImagePointType;
61 using typename Superclass::FixedImagePixelType;
62 using typename Superclass::FixedImageGradientType;
63 using typename Superclass::MovingImagePointType;
64 using typename Superclass::MovingImagePixelType;
65 using typename Superclass::MovingImageGradientType;
66 using typename Superclass::MeasureType;
67 using typename Superclass::DerivativeType;
68 using typename Superclass::DerivativeValueType;
70 using typename Superclass::InternalComputationValueType;
71 using typename Superclass::NumberOfParametersType;
73 using typename Superclass::FixedOutputPointType;
74 using typename Superclass::MovingOutputPointType;
103 const VirtualPointType & virtualPoint,
112 const VirtualPointType &,
113 const FixedImagePointType &,
114 const FixedImagePixelType &,
115 const FixedImageGradientType &,
116 const MovingImagePointType &,
117 const MovingImagePixelType &,
118 const MovingImageGradientType &,
134 PaddedCorrelationMetricPerThreadStruct,
135 AlignedCorrelationMetricPerThreadStruct);
141 TCorrelationMetric * m_CorrelationAssociate{};
146#ifndef ITK_MANUAL_INSTANTIATION
147# include "itkCorrelationImageToImageMetricv4HelperThreader.hxx"
CorrelationImageToImageMetricv4HelperThreader()
void AfterThreadedExecution() override
itkAlignedTypedef(ITK_CACHE_LINE_ALIGNMENT, PaddedCorrelationMetricPerThreadStruct, AlignedCorrelationMetricPerThreadStruct)
bool ProcessPoint(const VirtualIndexType &, const VirtualPointType &, const FixedImagePointType &, const FixedImagePixelType &, const FixedImageGradientType &, const MovingImagePointType &, const MovingImagePixelType &, const MovingImageGradientType &, MeasureType &, DerivativeType &, const ThreadIdType) const override
void BeforeThreadedExecution() override
std::unique_ptr< AlignedCorrelationMetricPerThreadStruct[]> m_CorrelationMetricPerThreadVariables
typename Superclass::ImageToImageMetricv4Type ImageToImageMetricv4Type
itkPadStruct(ITK_CACHE_LINE_ALIGNMENT, CorrelationMetricPerThreadStruct, PaddedCorrelationMetricPerThreadStruct)
bool ProcessVirtualPoint(const VirtualIndexType &virtualIndex, const VirtualPointType &virtualPoint, const ThreadIdType threadId) override
~CorrelationImageToImageMetricv4HelperThreader() override=default
Provides threading for ImageToImageMetricv4::GetValueAndDerivative.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType
InternalComputationValueType MovSum
InternalComputationValueType FixSum