X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=tools%2FclitkSetBackgroundGenericFilter.cxx;h=2cb3c00bf0b329a03970c9bb6cff283cdfbdce5b;hb=5578995d9a82792833333eeb3dd5c8ecac967293;hp=e0c37d6f560c636cb59b79e0d77d2af35dbe806b;hpb=0b7c9b1e1215634b02cbd38d4e4ba101d6111ba8;p=clitk.git diff --git a/tools/clitkSetBackgroundGenericFilter.cxx b/tools/clitkSetBackgroundGenericFilter.cxx index e0c37d6..2cb3c00 100644 --- a/tools/clitkSetBackgroundGenericFilter.cxx +++ b/tools/clitkSetBackgroundGenericFilter.cxx @@ -1,9 +1,9 @@ /*========================================================================= Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Authors belong to: + Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.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 @@ -14,17 +14,17 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ #ifndef clitkSetBackgroundGenericFilter_cxx #define clitkSetBackgroundGenericFilter_cxx /* ================================================= * @file clitkSetBackgroundGenericFilter.cxx - * @author - * @date - * - * @brief - * + * @author + * @date + * + * @brief + * ===================================================*/ #include "clitkSetBackgroundGenericFilter.h" @@ -34,37 +34,67 @@ namespace clitk { - //----------------------------------------------------------- - // Constructor - //----------------------------------------------------------- - SetBackgroundGenericFilter::SetBackgroundGenericFilter() - { - m_Verbose=false; - m_InputFileName=""; +//----------------------------------------------------------- +// Constructor +//----------------------------------------------------------- +SetBackgroundGenericFilter::SetBackgroundGenericFilter() +{ + m_Verbose=false; + m_InputFileName=""; +} + + +//----------------------------------------------------------- +// Update +//----------------------------------------------------------- +void SetBackgroundGenericFilter::Update() +{ + // Read the Dimension and PixelType + int Dimension, Components; + std::string PixelType; + //ReadImageDimensionAndPixelType(m_InputFileName, Dimension, PixelType); + ReadImageDimensionAndPixelType(m_InputFileName, Dimension, PixelType, Components); + + if (Dimension > 4) { + std::cout<<"Error, Only for 2 , 3 or 4 Dimensions!!!"< 3) { + std::cout<<"Error, Only 1, 2, or 3-component images are supported!!!"< 1 && PixelType != "float") { + std::cout<<"Error, Only float multi-component images are supported!!!"<(PixelType); - else if(Dimension==3) UpdateWithDim<3>(PixelType); - else if (Dimension==4)UpdateWithDim<4>(PixelType); - else - { - std::cout<<"Error, Only for 2 , 3 or 4 Dimensions!!!"<(PixelType); + else if(Dimension==3) UpdateWithDim<3>(PixelType); + else if (Dimension==4)UpdateWithDim<4>(PixelType); + break; + case 2: + { + typedef itk::Vector TPixelType; + if(Dimension==2) UpdateWithDimAndPixelType<2, TPixelType>(); + else if(Dimension==3) UpdateWithDimAndPixelType<3, TPixelType>(); + else if (Dimension==4)UpdateWithDimAndPixelType<4, TPixelType>(); + break; + } + case 3: + { + typedef itk::Vector TPixelType; + if(Dimension==2) UpdateWithDimAndPixelType<2, TPixelType>(); + else if(Dimension==3) UpdateWithDimAndPixelType<3, TPixelType>(); + else if (Dimension==4)UpdateWithDimAndPixelType<4, TPixelType>(); + break; + } } +} } //end clitk