+++ /dev/null
-// =========================================================================
-// @author Leonardo Florez Valencia
-// @email florez-l@javeriana.edu.co
-// =========================================================================
-#ifndef __fpa__Functors__Dijkstra__Image__Identity__h__
-#define __fpa__Functors__Dijkstra__Image__Identity__h__
-
-#include <fpa/Functors/BaseVertexFunction.h>
-
-namespace fpa
-{
- namespace Functors
- {
- namespace Dijkstra
- {
- namespace Image
- {
- /**
- */
- template< class _TImage, class _TValue >
- class Identity
- : public fpa::Functors::BaseVertexFunction< typename _TImage::IndexType, _TValue >
- {
- public:
- typedef _TImage TImage;
- typedef _TValue TValue;
- typedef typename TImage::IndexType TVertex;
- typedef fpa::Functors::BaseVertexFunction< TVertex, TValue > Superclass;
- typedef Identity Self;
- typedef itk::SmartPointer< Self > Pointer;
- typedef itk::SmartPointer< const Self > ConstPointer;
-
- public:
- itkNewMacro( Self );
- itkTypeMacro(
- fpa::Functors::Dijkstra::Image::Identity,
- fpa::Functors::BaseVertexFunction
- );
-
- public:
- virtual TValue Evaluate( const TVertex& v, const TVertex& p ) const override
- {
- const TImage* image =
- dynamic_cast< const TImage* >(
- this->m_DataObject.GetPointer( )
- );
- if( image != NULL )
- return( TValue( image->GetPixel( v ) ) );
- else
- return( TValue( -1 ) );
- }
-
- protected:
- Identity( )
- : Superclass( )
- {
- }
- virtual ~Identity( )
- {
- }
-
- private:
- // Purposely not implemented.
- Identity( const Self& other );
- Self& operator=( const Self& other );
- };
-
- } // ecapseman
-
- } // ecapseman
-
- } // ecapseman
-
-} // ecapseman
-
-#endif // __fpa__Functors__Dijkstra__Identity__h__
-// eof - $RCSfile$