]> Creatis software - clitk.git/blobdiff - itk/clitkInvertVFFilter.h
Change itkSimpleFastMutexLock to std::mutex
[clitk.git] / itk / clitkInvertVFFilter.h
index 8b16e307600f4e6cc08e042cf6e4237509654a33..b3167450dd810d2fe6b30b13dea74cdfc50cdec1 100644 (file)
@@ -1,3 +1,20 @@
+/*=========================================================================
+  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://www.centreleonberard.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 __clitkInvertVFFilter_h
 #define __clitkInvertVFFilter_h
 #include "clitkImageCommon.h"
@@ -34,7 +51,9 @@ namespace clitk
     //Some other typedefs
     typedef double CoordRepType;
     typedef itk::Image<double, ImageDimension> WeightsImageType;
+#if ITK_VERSION_MAJOR <= 4
     typedef itk::Image<itk::SimpleFastMutexLock, ImageDimension> MutexImageType;
+#endif
 
     /** Point type */
     typedef itk::Point<CoordRepType,itkGetStaticConstMacro(ImageDimension)> PointType;
@@ -48,22 +67,38 @@ namespace clitk
     //Set Methods(inline)
     itkSetMacro( Verbose, bool);
     itkSetMacro( EdgePaddingValue, PixelType );
-    void SetNumberOfThreads(unsigned int r )
+#if ITK_VERSION_MAJOR <= 4
+    void SetNumberOfThreads(unsigned int r ) ITK_OVERRIDE
+#else
+    void SetNumberOfWorkUnits(unsigned int r ) ITK_OVERRIDE
+#endif
     {
       m_NumberOfThreadsIsGiven=true;
+#if ITK_VERSION_MAJOR <= 4
       m_NumberOfThreads=r;
+#else
+      m_NumberOfWorkUnits=r;
+#endif
     }
     itkSetMacro(ThreadSafe, bool);
+    itkSetMacro(OutputSpacing, SpacingType);
+    itkSetMacro(OutputSize, SizeType);
 
   
   protected:
     InvertVFFilter();
     ~InvertVFFilter() {};
-    void GenerateData( );
-   
+    void GenerateData( ) ITK_OVERRIDE;
+    
     bool m_Verbose;
     bool m_NumberOfThreadsIsGiven;
+    SpacingType m_OutputSpacing;
+    SizeType m_OutputSize;
+#if ITK_VERSION_MAJOR <= 4
     unsigned int m_NumberOfThreads;
+#else
+    unsigned int m_NumberOfWorkUnits;
+#endif
     PixelType m_EdgePaddingValue;
     bool m_ThreadSafe;
   };