18 #ifndef __itkGPUPDEDeformableRegistrationFilter_h
19 #define __itkGPUPDEDeformableRegistrationFilter_h
78 template<
class TFixedImage,
class TMovingImage,
class TDisplacementField,
79 class TParentImageFilter = PDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField >
113 typedef typename TDisplacementField::PixelType::ValueType
130 itkStaticConstMacro(ImageDimension,
unsigned int,
131 GPUSuperclass::ImageDimension);
134 itkGetOpenCLSourceFromKernelMacro(GPUPDEDeformableRegistrationFilterKernel);
157 return this->GetOutput();
165 virtual std::vector< SmartPointer< DataObject > >::size_type GetNumberOfValidRequiredInputs()
const;
173 void PrintSelf(std::ostream & os,
Indent indent)
const;
177 virtual void CopyInputToOutput();
181 virtual void InitializeIteration();
186 virtual void SmoothDisplacementField();
190 virtual void GPUSmoothVectorField(DisplacementFieldPointer field,
192 int GPUSmoothingKernelSizes[]);
194 virtual void AllocateSmoothingBuffer();
199 virtual void SmoothUpdateField();
203 virtual void PostProcessOutput();
206 virtual void Initialize();
212 virtual void GenerateOutputInformation();
220 virtual void GenerateInputRequestedRegion();
224 void operator=(
const Self &);
232 int m_SmoothingKernelSizes[ImageDimension];
237 int m_UpdateFieldSmoothingKernelSizes[ImageDimension];
250 #ifndef ITK_MANUAL_INSTANTIATION
251 #include "itkGPUPDEDeformableRegistrationFilter.hxx"