]> Creatis software - clitk.git/blob - tools/clitkAnisotropicDiffusionGenericFilter.h
Set the Root Tree maximum size to 1TB instead of 1GB
[clitk.git] / tools / clitkAnisotropicDiffusionGenericFilter.h
1 /*=========================================================================
2   Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
3
4   Authors belong to:
5   - University of LYON              http://www.universite-lyon.fr/
6   - Léon Bérard cancer center       http://www.centreleonberard.fr
7   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
8
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.
12
13   It is distributed under dual licence
14
15   - BSD        See included LICENSE.txt file
16   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ===========================================================================**/
18
19 #ifndef clitkAnisotropicDiffusionGenericFilter_h
20 #define clitkAnisotropicDiffusionGenericFilter_h
21
22 #include "clitkIO.h"
23 #include "clitkImageToImageGenericFilter.h"
24 #include "clitkAnisotropicDiffusion_ggo.h"
25
26 //--------------------------------------------------------------------
27 namespace clitk
28 {
29
30   class ITK_EXPORT AnisotropicDiffusionGenericFilter:
31     public ImageToImageGenericFilter<AnisotropicDiffusionGenericFilter>
32   {
33
34   public:
35     //--------------------------------------------------------------------
36     typedef AnisotropicDiffusionGenericFilter   Self;
37     typedef itk::SmartPointer<Self>             Pointer;
38     typedef itk::SmartPointer<const Self>       ConstPointer;
39     typedef args_info_clitkAnisotropicDiffusion args_info_type;
40
41     //--------------------------------------------------------------------
42     // Method for creation through the object factory
43     // and Run-time type information (and related methods)
44     itkNewMacro(Self);
45     itkTypeMacro(AnisotropicDiffusionGenericFilter, LightObject);
46
47     //--------------------------------------------------------------------
48     void SetArgsInfo(const args_info_type & a);
49
50     //--------------------------------------------------------------------
51     // Main function called each time the filter is updated
52     template<class InputImageType>
53     void UpdateWithInputImageType();
54
55   protected:
56     AnisotropicDiffusionGenericFilter();
57     template<unsigned int Dim> void InitializeImageType();
58     args_info_type mArgsInfo;
59
60   }; // end class
61   //--------------------------------------------------------------------
62
63 } // end namespace clitk
64 //--------------------------------------------------------------------
65
66 #endif // #define clitkAnisotropicDiffusionGenericFilter_h