18#ifndef itkGPURecursiveGaussianImageFilter_h
19#define itkGPURecursiveGaussianImageFilter_h
21#include "itkRecursiveGaussianImageFilter.h"
41template <
typename TInputImage,
typename TOutputImage>
43 :
public GPUInPlaceImageFilter<TInputImage, TOutputImage, RecursiveGaussianImageFilter<TInputImage, TOutputImage>>
50 using CPUSuperclass = RecursiveGaussianImageFilter<TInputImage, TOutputImage>;
82 PrintSelf(std::ostream & os, Indent indent)
const override;
94#ifndef ITK_MANUAL_INSTANTIATION
95# include "itkGPURecursiveGaussianImageFilter.hxx"
class to abstract the behaviour of the GPU filters.
GPUInPlaceImageFilter()=default
itkStaticConstMacro(InputImageDimension, unsigned int, TInputImage::ImageDimension)
RecursiveGaussianImageFilter< TInputImage, TOutputImage > CPUSuperclass
typename GPUSuperclass::OutputImagePixelType OutputImagePixelType
TInputImage InputImageType
void PrintSelf(std::ostream &os, Indent indent) const override
typename CPUSuperclass::ScalarRealType ScalarRealType
SmartPointer< const Self > ConstPointer
GPURecursiveGaussianImageFilter()
ITK_DISALLOW_COPY_AND_MOVE(GPURecursiveGaussianImageFilter)
std::vcl_size_t m_DeviceLocalMemorySize
typename InputImageType::Pointer InputImagePointer
typename InputImageType::RegionType InputImageRegionType
~GPURecursiveGaussianImageFilter() override=default
typename InputImageType::PixelType InputImagePixelType
GPUImageToImageFilter< TInputImage, TOutputImage, CPUSuperclass > GPUSuperclass
typename GPUSuperclass::OutputImageRegionType OutputImageRegionType
SmartPointer< Self > Pointer
typename InputImageType::ConstPointer InputImageConstPointer
std::vcl_size_t m_FilterGPUKernelHandle
void GPUGenerateData() override
GPURecursiveGaussianImageFilter Self
itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension)
itkGPUKernelClassMacro(GPUBSplineTransformKernel)