--- /dev/null
+#ifndef __cpPluginsITKImageInterpolators__InterpolateImageFunction__h__
+#define __cpPluginsITKImageInterpolators__InterpolateImageFunction__h__
+
+#include <cpPlugins_ITKImageInterpolators_Export.h>
+#include <cpPlugins/Pipeline/ProcessObject.h>
+
+namespace cpPluginsITKImageInterpolators
+{
+ /**
+ */
+ class cpPlugins_ITKImageInterpolators_EXPORT InterpolateImageFunction
+ : public cpPlugins::Pipeline::ProcessObject
+ {
+ public:
+ typedef InterpolateImageFunction Self;
+ typedef cpPlugins::Pipeline::ProcessObject Superclass;
+ typedef itk::SmartPointer< Self > Pointer;
+ typedef itk::SmartPointer< const Self > ConstPointer;
+
+ public:
+ itkTypeMacro( BaseFilter, cpPlugins::Pipeline::ProcessObject );
+ cpPlugins_Id_Macro( InterpolateImageFunction, ImageInterpolators );
+
+ public:
+ virtual void SetITK( itk::LightObject* o ) cpPlugins_OVERRIDE;
+ virtual void SetVTK( vtkObjectBase* o ) cpPlugins_OVERRIDE;
+
+ protected:
+ InterpolateImageFunction( );
+ virtual ~InterpolateImageFunction( );
+
+ public:
+ virtual void CreateInterpolator(
+ itk::LightObject* image,
+ const std::string& precision_type
+ ) = 0;
+
+ protected:
+ virtual void _GenerateData( ) cpPlugins_OVERRIDE;
+
+ private:
+ // Purposely not implemented.
+ InterpolateImageFunction( const Self& other );
+ Self& operator=( const Self& other );
+
+ protected:
+ std::string m_PrecisionType;
+ };
+
+} // ecapseman
+
+#endif // __cpPluginsITKImageInterpolators__InterpolateImageFunction__h__
+
+// eof - $RCSfile$