+++ /dev/null
-// =========================================================================
-// @author Leonardo Florez Valencia
-// @email florez-l@javeriana.edu.co
-// =========================================================================
-
-#ifndef __fpa__Image__Mori__h__
-#define __fpa__Image__Mori__h__
-
-#include <fpa/Base/Mori.h>
-#include <fpa/Base/MarksInterface.h>
-#include <fpa/Base/SingleSeedInterface.h>
-#include <fpa/Image/Algorithm.h>
-#include <fpa/Image/DefaultTraits.h>
-
-namespace fpa
-{
- namespace Image
- {
- /**
- */
- template< class _TInputImage, class _TOutputImage >
- class MoriTraits
- : public fpa::Image::DefaultTraits< _TInputImage, _TOutputImage, typename _TOutputImage::PixelType >
- {
- public:
- typedef MoriTraits Self;
- typedef _TInputImage TInputImage;
- typedef _TOutputImage TOutputImage;
- typedef typename TOutputImage::PixelType TFrontId;
- typedef fpa::Image::DefaultTraits< TInputImage, TOutputImage, TFrontId > Superclass;
-
- typedef typename Superclass::TVertex TVertex;
- typedef typename Superclass::TInputValue TInputValue;
- typedef typename Superclass::TPoint TPoint;
- typedef typename Superclass::TOutputValue TOutputValue;
- typedef typename Superclass::TCompare TCompare;
- typedef typename Superclass::TNeighborhood TNeighborhood;
- typedef typename Superclass::TFilter TFilter;
-
- typedef fpa::Base::SingleSeedInterface< TVertex, TPoint, TInputValue, TOutputValue, TFrontId, TCompare > TSeedsInterface;
- typedef fpa::Base::MarksInterface< TVertex > TMarksInterface;
-
- typedef typename TSeedsInterface::TNode TNode;
- typedef typename TSeedsInterface::TNodes TNodes;
- typedef typename TSeedsInterface::TSeed TSeed;
- typedef typename TSeedsInterface::TSeeds TSeeds;
-
- private:
- // Purposely not implemented.
- MoriTraits( );
- MoriTraits( const Self& other );
- virtual ~MoriTraits( );
- Self& operator=( const Self& other );
- };
-
- /**
- */
- template< class _TInputImage, class _TOutputImage >
- class Mori
- : public fpa::Base::Mori< fpa::Image::Algorithm< fpa::Image::MoriTraits< _TInputImage, _TOutputImage > > >
- {
- public:
- typedef _TInputImage TInputImage;
- typedef _TOutputImage TOutputImage;
- typedef fpa::Image::MoriTraits< TInputImage, TOutputImage > TTraits;
- typedef fpa::Image::Algorithm< TTraits > TAlgorithm;
-
- typedef Mori Self;
- typedef fpa::Base::Mori< TAlgorithm > Superclass;
- typedef itk::SmartPointer< Self > Pointer;
- typedef itk::SmartPointer< const Self > ConstPointer;
-
- typedef typename TAlgorithm::TMarks TMarks;
-
- public:
- itkNewMacro( Self );
- itkTypeMacro( fpa::Image::Mori, fpa::Base::Mori );
-
- public:
- TOutputImage* GetThresholdedOutput( );
- const TOutputImage* GetThresholdedOutput( ) const;
-
- protected:
- Mori( );
- virtual ~Mori( );
-
- virtual void _AfterGenerateData( ) override;
-
- private:
- // Purposely not implemented.
- Mori( const Self& other );
- Self& operator=( const Self& other );
-
- protected:
- unsigned long m_ThresholdedOutputIdx;
- };
-
- } // ecapseman
-
-} // ecapseman
-
-#ifndef ITK_MANUAL_INSTANTIATION
-# include <fpa/Image/Mori.hxx>
-#endif // ITK_MANUAL_INSTANTIATION
-
-#endif // __fpa__Image__Mori__h__
-
-// eof - $RCSfile$