1 /*=========================================================================
2 Program: vv http://www.creatis.insa-lyon.fr/rio/vv
5 - University of LYON http://www.universite-lyon.fr/
6 - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
7 - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the copyright notices for more information.
13 It is distributed under dual licence
15 - BSD See included LICENSE.txt file
16 - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ======================================================================-====*/
18 #ifndef clitkMorphoMathGenericFilter_h
19 #define clitkMorphoMathGenericFilter_h
21 =================================================
22 * @file clitkMorphoMathGenericFilter.h
23 * @author Jef Vandemeulebroucke <jef@creatis.insa-lyon.fr>
28 =================================================*/
32 #include "clitkImageCommon.h"
33 #include "clitkMorphoMath_ggo.h"
34 #include "clitkConditionalBinaryErodeImageFilter.h"
35 #include "clitkConditionalBinaryDilateImageFilter.h"
38 #include "itkLightObject.h"
39 #include "itkBinaryErodeImageFilter.h"
40 #include "itkBinaryDilateImageFilter.h"
41 #include "itkBinaryMorphologicalClosingImageFilter.h"
42 #include "itkBinaryMorphologicalOpeningImageFilter.h"
43 #include "itkBinaryBallStructuringElement.h"
44 #include "itkCastImageFilter.h"
48 //====================================================================
49 class MorphoMathGenericFilter: public itk::LightObject
53 //================================================
54 typedef MorphoMathGenericFilter Self;
55 typedef itk::LightObject Superclass;
56 typedef itk::SmartPointer<Self> Pointer;
57 typedef itk::SmartPointer<const Self> ConstPointer;
59 //================================================
62 //====================================================================
64 void SetArgsInfo(const args_info_clitkMorphoMath a)
67 m_InputFileName=m_ArgsInfo.input_arg;
68 m_Verbose=m_ArgsInfo.verbose_flag;
71 //====================================================================
73 virtual void Update();
76 const char * GetNameOfClass() const { return "MorphoMathGenericFilter"; }
78 //====================================================================
79 // Constructor & Destructor
80 MorphoMathGenericFilter();
81 ~MorphoMathGenericFilter(){;}
83 //====================================================================
84 //Protected member functions
85 template <unsigned int Dimension> void UpdateWithDim(std::string PixelType);
86 template <unsigned int Dimension, class PixelType> void UpdateWithDimAndPixelType();
89 args_info_clitkMorphoMath m_ArgsInfo;
91 std::string m_InputFileName;
95 } // end namespace clitk
96 #ifndef ITK_MANUAL_INSTANTIATION
97 #include "clitkMorphoMathGenericFilter.txx"
100 #endif //#define clitkMorphoMathGenericFilter_h