#ifndef __cpPluginsITKImageInterpolators__InterpolateImageFunction__h__ #define __cpPluginsITKImageInterpolators__InterpolateImageFunction__h__ #include #include namespace cpPluginsITKImageInterpolators { /** */ class cpPluginsITKImageInterpolators_EXPORT InterpolateImageFunction : public cpPlugins::BaseObjects::ProcessObject { public: typedef InterpolateImageFunction Self; typedef cpPlugins::BaseObjects::ProcessObject Superclass; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; public: itkTypeMacro( BaseFilter, cpPlugins::BaseObjects::ProcessObject ); cpPlugins_Id_Macro( InterpolateImageFunction, ImageInterpolators ); 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$