]> Creatis software - FrontAlgorithms.git/blobdiff - lib/fpa/Image/Functors/RegionGrowAllBelongsFunction.h
CMake updated. Some other filters added.
[FrontAlgorithms.git] / lib / fpa / Image / Functors / RegionGrowAllBelongsFunction.h
index ca520505069b13503ad345013f87cee058f6d780..362304fc07233a20c86d0be5db6834fa6e7266a6 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef __FPA__IMAGE__FUNCTORS__REGIONGROWALLBELONGSFUNCTION__H__
 #define __FPA__IMAGE__FUNCTORS__REGIONGROWALLBELONGSFUNCTION__H__
 
-#include <itkImageFunction.h>
+#include <fpa/Base/Functors/TautologyFunction.h>
 
 namespace fpa
 {
@@ -13,45 +13,27 @@ namespace fpa
        */
       template< class I >
       class RegionGrowAllBelongsFunction
-        : public itk::ImageFunction< I, bool >
+        : public fpa::Base::Functors::TautologyFunction< I, typename I::IndexType >
       {
       public:
         /// Type-related and pointers
         typedef RegionGrowAllBelongsFunction    Self;
-        typedef itk::ImageFunction< I, bool >   Superclass;
         typedef itk::SmartPointer< Self >       Pointer;
         typedef itk::SmartPointer< const Self > ConstPointer;
+        typedef fpa::Base::Functors::
+        TautologyFunction< I, typename I::IndexType >
+        Superclass;
 
         // Superclass' types
-        typedef typename Superclass::InputImageType      InputImageType;
-        typedef typename Superclass::InputPixelType      InputPixelType;
-        typedef typename Superclass::OutputType          OutputType;
-        typedef typename Superclass::CoordRepType        CoordRepType;
-        typedef typename Superclass::IndexType           IndexType;
-        typedef typename Superclass::IndexValueType      IndexValueType;
-        typedef typename Superclass::ContinuousIndexType ContinuousIndexType;
-        typedef typename Superclass::PointType           PointType;
+        typedef I                     TInputImage;
+        typedef typename I::IndexType TIndex;
 
       public:
         itkNewMacro( Self );
         itkTypeMacro( RegionGrowAllBelongsFunction, itkImageFunction );
 
       public:
-        virtual OutputType Evaluate( const PointType& point ) const
-          {
-            IndexType index;
-            this->ConvertPointToNearestIndex( point, index );
-            return( this->EvaluateAtIndex( index ) );
-          }
-        virtual OutputType EvaluateAtContinuousIndex(
-          const ContinuousIndexType& cindex
-          ) const
-          {
-            IndexType index;
-            this->ConvertContinuousIndexToNearestIndex( cindex, index );
-            return( this->EvaluateAtIndex( index ) );
-          }
-        virtual OutputType EvaluateAtIndex( const IndexType& index ) const
+        virtual bool Evaluate( const TIndex& v ) const
           { return( true ); }
 
       protected: