]> Creatis software - clitk.git/blobdiff - filters/clitkImageConvertGenericFilter.h
Corrected bug: the image to image filter type was always displayed as available in...
[clitk.git] / filters / clitkImageConvertGenericFilter.h
index 50f80ef51d042b5fa7a062b06a2d7112e026bf88..8bbca3c0890bbf5ea8093094b7fa52417d34e596 100644 (file)
@@ -1,6 +1,22 @@
+/*=========================================================================
+  Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
+
+  Authors belong to: 
+  - University of LYON              http://www.universite-lyon.fr/
+  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
+
+  This software is distributed WITHOUT ANY WARRANTY; without even
+  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+  PURPOSE.  See the copyright notices for more information.
+
+  It is distributed under dual licence
+
+  - BSD        See included LICENSE.txt file
+  - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+======================================================================-====*/
 #ifndef CLITKIMAGECONVERTGENERICFILTER_H
 #define CLITKIMAGECONVERTGENERICFILTER_H
-
 /**
  ===================================================================
  * @file   clitkImageConvertGenericFilter.h
@@ -19,7 +35,8 @@
 
 namespace clitk {
   
-  class ImageConvertGenericFilter: public clitk::ImageToImageGenericFilter {
+  class ImageConvertGenericFilter: 
+    public clitk::ImageToImageGenericFilter<ImageConvertGenericFilter> {
     
   public: 
     // constructor - destructor
@@ -27,7 +44,6 @@ namespace clitk {
 
     // Types
     typedef ImageConvertGenericFilter     Self;
-    typedef ImageToImageGenericFilter     Superclass;
     typedef itk::SmartPointer<Self>       Pointer;
     typedef itk::SmartPointer<const Self> ConstPointer;
 
@@ -36,18 +52,27 @@ namespace clitk {
     
     // Members functions
     void SetOutputPixelType(std::string p) { mOutputPixelTypeName = p; }
-    void Update();
+    bool IsWarningOccur() { return mWarningOccur; }
+    std::string & GetWarning() { return mWarning; }
+    void EnableDisplayWarning(bool b) { mDisplayWarning = b; }
+
+    //--------------------------------------------------------------------
+    // Main function called each time the filter is updated
+    template<class InputImageType>  
+    void UpdateWithInputImageType();
 
   protected:
+    template<unsigned int Dim> void InitializeImageType();
     std::string mOutputPixelTypeName;
+    std::string mWarning;
+    bool mWarningOccur;
+    bool mDisplayWarning;
 
-    template<unsigned int Dim> void Update_WithDim();
-    template<unsigned int Dim, class PixelType> void Update_WithDimAndPixelType();
-    template<unsigned int Dim, class PixelType, class OutputPixelType> void Update_WithDimAndPixelTypeAndOutputType();
+    template<class InputImageType, class OutputPixelType> void UpdateWithOutputType();
 
   }; // end class ImageConvertGenericFilter
 
-#include "clitkImageConvertGenericFilter.txx"
+  //#include "clitkImageConvertGenericFilter.txx"
 
 } // end namespace