/*------------------------------------------------------------------------- Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. -------------------------------------------------------------------------*/ #ifndef clitkSplitImageGenericFilter_H #define clitkSplitImageGenericFilter_H /** ------------------------------------------------------------------- * @file clitkSplitImageGenericFilter.h * @author David Sarrut * @date 23 Feb 2008 -------------------------------------------------------------------*/ // clitk include #include "clitkCommon.h" #include "clitkImageCommon.h" #include "clitkImageToImageGenericFilter.h" // itk include #include "itkImage.h" #include "itkImageIOBase.h" #include "itkImageRegionIterator.h" #include "itkImageRegionConstIterator.h" namespace clitk { //-------------------------------------------------------------------- class SplitImageGenericFilter : public clitk::ImageToImageGenericFilter { public: // Constructor SplitImageGenericFilter (); // Types typedef SplitImageGenericFilter Self; typedef ImageToImageGenericFilter Superclass; typedef itk::SmartPointer Pointer; typedef itk::SmartPointer ConstPointer; // New itkNewMacro(Self); // Set methods void SetSplitDimension (int dim) { mSplitDimension = dim; } void SetVerbose (const bool v) { m_Verbose = v; } // Update void Update (); protected: int mSplitDimension; bool m_Verbose; //-------------------------------------------------------------------- template void UpdateWithDim(std::string PixelType, int Components); template void UpdateWithDimAndPixelType(); //-------------------------------------------------------------------- }; // end class SplitImageGenericFilter //-------------------------------------------------------------------- } // end namespace //-------------------------------------------------------------------- #endif //#define clitkSplitImageGenericFilter_H