18 #ifndef __itkGPUBinaryThresholdImageFilter_h
19 #define __itkGPUBinaryThresholdImageFilter_h
37 template<
class TInput,
class TOutput >
73 KernelManager->SetKernelArg(KernelHandle, 0,
sizeof(TInput), &(
m_LowerThreshold) );
74 KernelManager->SetKernelArg(KernelHandle, 1,
sizeof(TInput), &(
m_UpperThreshold) );
75 KernelManager->SetKernelArg(KernelHandle, 2,
sizeof(TOutput), &(
m_InsideValue) );
76 KernelManager->SetKernelArg(KernelHandle, 3,
sizeof(TOutput), &(
m_OutsideValue) );
93 template<
class TInputImage,
class TOutputImage >
97 Functor::GPUBinaryThreshold<
98 typename TInputImage::PixelType,
99 typename TOutputImage::PixelType >,
100 BinaryThresholdImageFilter<TInputImage, TOutputImage> >
108 typename TInputImage::PixelType,
109 typename TOutputImage::PixelType >,
129 itkGetOpenCLSourceFromKernelMacro(GPUBinaryThresholdImageFilterKernel);
142 virtual void GPUGenerateData();
146 void operator=(
const Self &);
164 return "A Factory for GPUBinaryThresholdImageFilter";
169 itkFactorylessNewMacro(
Self);
186 #define OverrideThresholdFilterTypeMacro(ipt,opt,dm) \
188 typedef itk::Image<ipt,dm> InputImageType; \
189 typedef itk::Image<opt,dm> OutputImageType; \
190 this->RegisterOverride( \
191 typeid(itk::BinaryThresholdImageFilter<InputImageType,OutputImageType>).name(), \
192 typeid(itk::GPUBinaryThresholdImageFilter<InputImageType,OutputImageType>).name(), \
193 "GPU Binary Threshold Image Filter Override", \
195 itk::CreateObjectFunction<GPUBinaryThresholdImageFilter<InputImageType,OutputImageType> >::New() ); \
231 #include "itkGPUBinaryThresholdImageFilter.hxx"