]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Plugins/OtsuThresholdImageFilter.h
07c9b75ea0f00e10a0673c9645224b6a9b0a8051
[cpPlugins.git] / lib / cpPlugins / Plugins / OtsuThresholdImageFilter.h
1 #ifndef __CPPLUGINS__PLUGINS__OTSUTHRESHOLDIMAGEFILTER__H__
2 #define __CPPLUGINS__PLUGINS__OTSUTHRESHOLDIMAGEFILTER__H__
3
4 #include <cpPlugins/Plugins/cpPlugins_Export.h>
5 #include <cpPlugins/Interface/ImageToImageFilter.h>
6
7 namespace cpPlugins
8 {
9   namespace Plugins
10   {
11     /**
12      */
13     class cpPlugins_EXPORT OtsuThresholdImageFilter
14       : public cpPlugins::Interface::ImageToImageFilter
15     {
16     public:
17       typedef OtsuThresholdImageFilter                 Self;
18       typedef cpPlugins::Interface::ImageToImageFilter Superclass;
19       typedef itk::SmartPointer< Self >                Pointer;
20       typedef itk::SmartPointer< const Self >          ConstPointer;
21
22     public:
23       itkNewMacro( Self );
24       itkTypeMacro( OtsuThresholdImageFilter, cpPluginsInterfaceImageToImageFilter );
25
26     protected:
27       OtsuThresholdImageFilter( );
28       virtual ~OtsuThresholdImageFilter( );
29
30       virtual std::string _GenerateData( );
31
32       cpPlugins_Image_Demangle_Methods( OtsuThresholdImageFilter );
33
34       template< class I >
35         std::string _DemangleInput( itk::DataObject* image );
36
37       template< class I, class O >
38         std::string _RealGD( itk::DataObject* image );
39
40     private:
41       // Purposely not implemented
42       OtsuThresholdImageFilter( const Self& );
43       Self& operator=( const Self& );
44     };
45
46     // ---------------------------------------------------------------------
47     CPPLUGINS_INHERIT_PROVIDER( OtsuThresholdImageFilter );
48
49   } // ecapseman
50
51 } // ecapseman
52
53 #endif // __CPPLUGINS__PLUGINS__OTSUTHRESHOLDIMAGEFILTER__H__
54
55 // eof - $RCSfile$