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 <joel.schaerer@creatis.insa-lyon.fr>
David Sarrut <david.sarrut@creatis.insa-lyon.fr>
// 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<class ImageType>
std::vector<vvImage::Pointer> mInputVVImages;
std::vector<vvImage::Pointer> mOutputVVImages;
- std::set<std::string> mListOfAllowedPixelTypes;
- std::set<unsigned int> mListOfAllowedDimensions;
- bool CheckImageType();
- bool CheckDimension();
- bool CheckPixelType();
void ImageTypeError();
void SetImageTypeError();
bool mFailOnImageTypeError;
// 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<FilterType> * mImageTypesManager;
+ ImageTypesManager<FilterType> mImageTypesManager;
}; // end class clitk::ImageToImageGenericFilter
// #define ADD_IMAGE_DIMENSION(DIM) Initialize<DIM>();
-#define ADD_VEC_IMAGE_TYPE(DIM, COMP, PT) this->mImageTypesManager->template AddNewDimensionAndPixelType<DIM,COMP, PT>();
-#define ADD_IMAGE_TYPE(DIM, PT) this->mImageTypesManager->template AddNewDimensionAndPixelType<DIM, PT>();
+#define ADD_VEC_IMAGE_TYPE(DIM, COMP, PT) this->mImageTypesManager.template AddNewDimensionAndPixelType<DIM,COMP, PT>();
+#define ADD_IMAGE_TYPE(DIM, PT) this->mImageTypesManager.template AddNewDimensionAndPixelType<DIM, PT>();
#include "clitkImageToImageGenericFilter.txx"