1 #ifndef __CPM__ALGORITHMS__QUADEDGE__MESHFUNCTIONBASE__H__
2 #define __CPM__ALGORITHMS__QUADEDGE__MESHFUNCTIONBASE__H__
5 #include <itkObjectFactory.h>
15 template< class M, class I, class O >
16 class MeshFunctionBase
20 typedef MeshFunctionBase Self;
21 typedef itk::Object Superclass;
22 typedef itk::SmartPointer< Self > Pointer;
23 typedef itk::SmartPointer< const Self > ConstPointer;
30 itkTypeMacro( MeshFunctionBase, itkObject );
32 itkGetObjectMacro( Mesh, M );
33 itkSetObjectMacro( Mesh, M );
36 virtual O Evaluate( const I& input ) = 0;
43 virtual ~MeshFunctionBase( )
47 // Purposely not implemented
48 MeshFunctionBase( const Self& );
49 void operator=( const Self& );
52 typename M::Pointer m_Mesh;
61 #endif // __CPM__ALGORITHMS__QUADEDGE__MESHFUNCTIONBASE__H__