X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FBase%2FMori.h;fp=lib%2Ffpa%2FBase%2FMori.h;h=0000000000000000000000000000000000000000;hb=3c639e5da479c7216a0a302ffa156ac6762caeed;hp=27f6915a671a8893805afc193973e9eb491278fc;hpb=5bf766068f54d061d3816f4950a076c3cf3a4d8b;p=FrontAlgorithms.git diff --git a/lib/fpa/Base/Mori.h b/lib/fpa/Base/Mori.h deleted file mode 100644 index 27f6915..0000000 --- a/lib/fpa/Base/Mori.h +++ /dev/null @@ -1,132 +0,0 @@ -// ========================================================================= -// @author Leonardo Florez Valencia -// @email florez-l@javeriana.edu.co -// ========================================================================= - -#ifndef __fpa__Base__Mori__h__ -#define __fpa__Base__Mori__h__ - -#include -#include -#include -#include - -#include -#include - -namespace fpa -{ - namespace Base - { - /** - */ - template< class _TAlgorithm > - class Mori - : public _TAlgorithm - { - public: - typedef Mori Self; - typedef _TAlgorithm Superclass; - typedef itk::SmartPointer< Self > Pointer; - typedef itk::SmartPointer< const Self > ConstPointer; - - typedef typename _TAlgorithm::TNode TNode; - typedef typename _TAlgorithm::TNodes TNodes; - typedef typename _TAlgorithm::TInputValue TInputValue; - typedef typename _TAlgorithm::TOutputValue TOutputValue; - typedef typename _TAlgorithm::TFrontId TFrontId; - typedef typename _TAlgorithm::TVertex TVertex; - - typedef std::deque< TNode > TQueue; - typedef std::set< TInputValue > TThresholds; - - typedef ivq::ITK::PeakDetector TPeakDetector; - typedef TPeakDetector::TPeak TPeak; - - typedef fpa::Base::Functors::RegionGrow::BinaryThreshold< TInputValue > TPredicate; - - public: - itkConceptMacro( - Check_TOutputValue, - ( itk::Concept::IsUnsignedInteger< TOutputValue > ) - ); - - itkGetConstMacro( InsideValue, TOutputValue ); - itkSetMacro( InsideValue, TOutputValue ); - - itkGetConstMacro( MinimumThreshold, TInputValue ); - itkSetMacro( MinimumThreshold, TInputValue ); - - public: - virtual itk::ModifiedTimeType GetMTime( ) const override; - - TOutputValue GetOutsideValue( ) const; - void SetOutsideValue( const TOutputValue& v ); - - unsigned long GetSignalKernelSize( ) const; - double GetSignalThreshold( ) const; - double GetSignalInfluence( ) const; - - void SetSignalKernelSize( unsigned long k ); - void SetSignalThreshold( double t ); - void SetSignalInfluence( double i ); - - void ClearThresholds( ); - void AddThreshold( const TInputValue& thr ); - void SetThresholds( - const TInputValue& init, - const TInputValue& end, - const TInputValue& delta - ); - const TThresholds& GetThresholds( ) const; - unsigned long GetNumberOfEvaluatedThresholds( ) const; - TInputValue GetOptimumThreshold( ) const; - void GetSignalValues( - unsigned long i, double& x, double& y, TPeak& p - ) const; - - protected: - Mori( ); - virtual ~Mori( ); - - virtual void _BeforeGenerateData( ) override; - virtual void _FinishOneLoop( ) override; - virtual void _ComputeOutputValue( TNode& n ) override; - virtual void _UpdateOutputValue( TNode& n ) override; - virtual void _QueueClear( ) override; - virtual TNode _QueuePop( ) override; - virtual void _QueuePush( const TNode& node ) override; - virtual unsigned long _QueueSize( ) const override; - virtual void _PrepareSeeds( TNodes& nodes ) override; - - private: - // Purposely not implemented. - Mori( const Self& other ); - Self& operator=( const Self& other ); - - protected: - typename TPredicate::Pointer m_Predicate; - - TOutputValue m_InsideValue; - TInputValue m_MinimumThreshold; - TThresholds m_Thresholds; - typename TThresholds::const_iterator m_CurrThr; - - TQueue m_Queues[ 2 ]; - unsigned int m_CurrQueue; - double m_CurrCount; - - TPeakDetector m_PeakDetector; - }; - - } // ecapseman - -} // ecapseman - -#ifndef ITK_MANUAL_INSTANTIATION -# include -#endif // ITK_MANUAL_INSTANTIATION - -#endif // __fpa__Base__Mori__h__ - -// eof - $RCSfile$