]> Creatis software - cpPlugins.git/blob - plugins/cpPluginsImageFilters/OtsuThresholdImageFilter.h
a583ad56e046f94f90260d9668a3e7f7923a4cf8
[cpPlugins.git] / plugins / cpPluginsImageFilters / OtsuThresholdImageFilter.h
1 #ifndef __CPPLUGINSIMAGEFILTERS__OTSUTHRESHOLDIMAGEFILTER__H__
2 #define __CPPLUGINSIMAGEFILTERS__OTSUTHRESHOLDIMAGEFILTER__H__
3
4 #include <plugins/cpPluginsImageFilters/cpPluginsImageFilters_Export.h>
5 #include <cpPlugins/ProcessObject.h>
6
7 namespace cpPluginsImageFilters
8 {
9   /**
10    */
11   class cpPluginsImageFilters_EXPORT OtsuThresholdImageFilter
12     : public cpPlugins::ProcessObject
13   {
14   public:
15     typedef OtsuThresholdImageFilter        Self;
16     typedef cpPlugins::ProcessObject        Superclass;
17     typedef itk::SmartPointer< Self >       Pointer;
18     typedef itk::SmartPointer< const Self > ConstPointer;
19
20   public:
21     itkNewMacro( Self );
22     itkTypeMacro( OtsuThresholdImageFilter, cpPlugins::ProcessObject );
23     cpPlugins_Id_Macro( OtsuThresholdImageFilter, ImageFilters );
24
25   protected:
26     OtsuThresholdImageFilter( );
27     virtual ~OtsuThresholdImageFilter( );
28
29     virtual std::string _GenerateData( );
30
31     template< class _TImage >
32       inline std::string _GD0( _TImage* image );
33
34     template< class _TImage, class _TBinaryImage >
35       inline std::string _GD1( _TImage* image );
36
37   private:
38     // Purposely not implemented
39     OtsuThresholdImageFilter( const Self& );
40     Self& operator=( const Self& );
41   };
42
43 } // ecapseman
44
45 #endif // __CPPLUGINSIMAGEFILTERS__OTSUTHRESHOLDIMAGEFILTER__H__
46
47 // eof - $RCSfile$