]> Creatis software - clitk.git/blob - tools/clitkZeroVFGenericFilter.h
Initial revision
[clitk.git] / tools / clitkZeroVFGenericFilter.h
1 #ifndef __clitkZeroVFGenericFilter_h
2 #define __clitkZeroVFGenericFilter_h
3
4 //clitk include
5 #include "clitkIOCommon.h"
6 #include "clitkImageCommon.h"
7
8 //itk include
9 #include "itkLightObject.h"
10 #include "itkImage.h"
11 #include "itkVector.h"
12
13
14 namespace clitk
15 {
16   
17   class ITK_EXPORT ZeroVFGenericFilter : public itk::LightObject
18   
19   {
20   public:
21     typedef ZeroVFGenericFilter     Self;
22     typedef itk::LightObject     Superclass;
23     typedef itk::SmartPointer<Self>            Pointer;
24     typedef itk::SmartPointer<const Self>      ConstPointer;
25    
26     /** Method for creation through the object factory. */
27     itkNewMacro(Self);  
28
29     /** Run-time type information (and related methods) */
30     itkTypeMacro( ZeroVFGenericFilter, ImageToImageFilter );
31   
32      //Set Methods (inline)
33     void SetInput(const std::string m){m_InputName=m;}
34     void SetOutput(const std::string m){m_OutputName=m;}
35     void SetVerbose(const bool m){m_Verbose=m;}
36
37     //Update
38     void Update( );
39
40
41   protected:
42
43     ZeroVFGenericFilter();
44     ~ZeroVFGenericFilter() {};
45
46     //Templated members
47     template<unsigned int Dimension> void UpdateWithDim(std::string PixelType);
48     template<unsigned int Dimension, class PixelType> void UpdateWithDimAndPixelType(); 
49
50     std::string m_InputName;
51     std::string m_OutputName;
52     bool m_Verbose;
53   
54 };
55
56
57 } // end namespace clitk
58 #ifndef ITK_MANUAL_INSTANTIATION
59 #include "clitkZeroVFGenericFilter.txx"
60 #endif
61
62 #endif // #define __clitkZeroVFGenericFilter_h