18#ifndef itkGPUFiniteDifferenceFunction_h
19#define itkGPUFiniteDifferenceFunction_h
46template <
typename TImageType>
63 using typename Superclass::ImageType;
64 using typename Superclass::PixelType;
65 using typename Superclass::PixelRealType;
68 static constexpr unsigned int ImageDimension = ImageType::ImageDimension;
71 using typename Superclass::TimeStepType;
75 using typename Superclass::DefaultBoundaryConditionType;
78 using typename Superclass::RadiusType;
81 using typename Superclass::NeighborhoodType;
85 using typename Superclass::FloatOffsetType;
87#if !defined(ITK_WRAPPING_PARSER)
91 void * itkNotUsed(globalData),
124 int m_ComputeUpdateGPUKernelHandle{};
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
typename ImageType::PixelType PixelType
~GPUFiniteDifferenceFunction() override=default
PixelType ComputeUpdate(const NeighborhoodType &, void *, const FloatOffsetType &=FloatOffsetType(0.0)) override
virtual void GPUReleaseMetricData()
virtual void GPUAllocateMetricData(unsigned int)
GPUFiniteDifferenceFunction()
virtual void GPUComputeUpdate(const typename TImageType::Pointer output, typename TImageType::Pointer update, void *gd)=0
Light weight base class for most itk classes.
A templated class holding a n-Dimensional vector.
BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage > Superclass
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....