14 #ifndef __itkCUDAResamplerImageFilter_h
15 #define __itkCUDAResamplerImageFilter_h
18 #include "itkResampleImageFilter.h"
21 #include "itkBSplineDeformableTransform.h"
22 #include "cudaResampleImageFilter.cuh"
39 template <
typename TInputImage,
typename TOutputImage,
typename TInterpolatorPrecisionType =
float>
41 public ResampleImageFilter<TInputImage, TOutputImage, TInterpolatorPrecisionType>
46 typedef ResampleImageFilter<
47 TInputImage,TOutputImage,TInterpolatorPrecisionType>
Superclass;
70 typedef typename Superclass::SizeType
SizeType;
88 typedef BSplineDeformableTransform<
90 typedef cuda::CUDAResampleImageFilter<
91 typename InternalBSplineTransformType::ParametersValueType,
95 itkSetMacro( UseCuda,
bool );
96 itkGetConstMacro( UseCuda,
bool );
97 itkBooleanMacro( UseCuda );
100 itkSetMacro( UseGPUToCastData,
bool );
101 itkGetConstMacro( UseGPUToCastData,
bool );
102 itkBooleanMacro( UseGPUToCastData );
105 itkSetMacro( UseFastCUDAKernel,
bool );
106 itkGetConstMacro( UseFastCUDAKernel,
bool );
107 itkBooleanMacro( UseFastCUDAKernel );
110 virtual void GenerateData(
void );
118 void ResetWarningReport(
void )
120 this->m_Warnings.resize( 0 );
122 std::string GetWarningReportAsString(
void )
const
124 std::string warnings =
"\n---------------------------------\n";
125 for ( std::size_t i = 0; i < this->m_Warnings.size(); i++ )
127 warnings +=
"itkCUDAResampleImageFilter: " + this->m_Warnings[ i ];
128 warnings +=
"\n---------------------------------\n";
134 virtual const WarningReportType & GetWarningReport(
void )
const
136 return this->m_WarningReport;
143 virtual void CheckForValidConfiguration( ValidTransformPointer & bSplineTransform );
164 bool CheckForValidInterpolator(
void )
const;
179 #ifndef ITK_MANUAL_INSTANTIATION
180 #include "itkCUDAResampleImageFilter.hxx"
183 #endif // end #ifndef __itkCUDAResamplerImageFilter_h