1 #ifndef __fpa__Base__Functors__VertexCostFunctionBase__h__
2 #define __fpa__Base__Functors__VertexCostFunctionBase__h__
5 #include <itkObjectFactory.h>
15 template< class _TVertex, class _TOutput >
16 class VertexCostFunctionBase
20 typedef VertexCostFunctionBase Self;
21 typedef itk::Object Superclass;
22 typedef itk::SmartPointer< Self > Pointer;
23 typedef itk::SmartPointer< const Self > ConstPointer;
25 typedef _TVertex TVertex;
26 typedef _TOutput TOutput;
29 itkTypeMacro( VertexCostFunctionBase, itk::Object );
32 virtual TOutput Evaluate( const TVertex& a, const TVertex& b ) const = 0;
35 VertexCostFunctionBase( )
38 virtual ~VertexCostFunctionBase( )
42 // Purposely not defined
43 VertexCostFunctionBase( const Self& other );
44 Self& operator=( const Self& other );
53 #endif // __fpa__Base__Functors__VertexCostFunctionBase__h__