X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkImageToImageGenericFilter.h;h=eb244b8e5bdf724060a3ef2ba64c25f2a6ede9e9;hb=33b0605f7f0b0b8bb2a6d90c3fec771487b29744;hp=64ac2396869e1ed462b1bbe5c63fe2d9651ddafa;hpb=9a84e9fdff8cd9daf405009ad716aadf2073ca8f;p=clitk.git diff --git a/common/clitkImageToImageGenericFilter.h b/common/clitkImageToImageGenericFilter.h index 64ac239..eb244b8 100644 --- a/common/clitkImageToImageGenericFilter.h +++ b/common/clitkImageToImageGenericFilter.h @@ -3,8 +3,8 @@ Program: clitk Module: $RCSfile: clitkImageToImageGenericFilter.h,v $ Language: C++ - Date: $Date: 2010/02/08 15:45:17 $ - Version: $Revision: 1.5 $ + Date: $Date: 2010/02/09 14:40:55 $ + Version: $Revision: 1.7 $ Author : Joel Schaerer David Sarrut @@ -85,16 +85,14 @@ namespace clitk { // Information on available image types void PrintAvailableImageTypes(); - std::string GetAvailableImageTypes(); - bool CheckDimension(unsigned int d); - bool CheckPixelType(std::string pt); + virtual std::string GetAvailableImageTypes() = 0; + + virtual bool CheckImageType(unsigned int dim,unsigned int ncomp, std::string pixeltype) = 0; + virtual bool CheckImageType() = 0; // Main function to call for using the filter. virtual bool Update() = 0; - // Use internally only (TO PUT PROTECTED !!!) - void AddImageType(unsigned int d, std::string p); - protected: /// Call this function to dispatch an output towards the correct sink template @@ -116,11 +114,6 @@ namespace clitk { std::vector mInputVVImages; std::vector mOutputVVImages; - std::set mListOfAllowedPixelTypes; - std::set mListOfAllowedDimensions; - bool CheckImageType(); - bool CheckDimension(); - bool CheckPixelType(); void ImageTypeError(); void SetImageTypeError(); bool mFailOnImageTypeError; @@ -138,22 +131,24 @@ namespace clitk { // constructor - destructor ImageToImageGenericFilter(std::string filterName); - virtual ~ImageToImageGenericFilter() { delete mImageTypesManager; } // Main function to call for using the filter. virtual bool Update(); + virtual bool CheckImageType(unsigned int dim,unsigned int ncomp, std::string pixeltype); + virtual bool CheckImageType(); + virtual std::string GetAvailableImageTypes(); protected: // Object that will manage the list of templatized function for // each image type. - ImageTypesManager * mImageTypesManager; + ImageTypesManager mImageTypesManager; }; // end class clitk::ImageToImageGenericFilter // #define ADD_IMAGE_DIMENSION(DIM) Initialize(); -#define ADD_VEC_IMAGE_TYPE(DIM, COMP, PT) this->mImageTypesManager->template AddNewDimensionAndPixelType(); -#define ADD_IMAGE_TYPE(DIM, PT) this->mImageTypesManager->template AddNewDimensionAndPixelType(); +#define ADD_VEC_IMAGE_TYPE(DIM, COMP, PT) this->mImageTypesManager.template AddNewDimensionAndPixelType(); +#define ADD_IMAGE_TYPE(DIM, PT) this->mImageTypesManager.template AddNewDimensionAndPixelType(); #include "clitkImageToImageGenericFilter.txx"