clitk::ImageToImageGenericFilterBase::ImageToImageGenericFilterBase(std::string n)
:mIOVerbose(false) {
mFilterName = n;
- mListOfAllowedDimension.clear();
- mListOfAllowedPixelType.clear();
mFailOnImageTypeError = true;
}
//--------------------------------------------------------------------
-//--------------------------------------------------------------------
-void clitk::ImageToImageGenericFilterBase::AddImageType(unsigned int d, std::string p) {
- // Search for dimension (to not duplicate)
- std::vector<unsigned int>::const_iterator it =
- std::find (mListOfAllowedDimension.begin(),
- mListOfAllowedDimension.end(), d);
- if (it == mListOfAllowedDimension.end()) mListOfAllowedDimension.push_back(d);
- // Search for PixelType (to not duplicate)
- std::vector<std::string>::const_iterator itt =
- std::find (mListOfAllowedPixelType.begin(),
- mListOfAllowedPixelType.end(), p);
- if (itt == mListOfAllowedPixelType.end()) mListOfAllowedPixelType.push_back(p);
-}
-//--------------------------------------------------------------------
-
-
//--------------------------------------------------------------------
void clitk::ImageToImageGenericFilterBase::SetInputFilenames(const std::vector<std::string> & filenames) {
- mInputFilenames.resize(filenames.size());
- std::copy(filenames.begin(), filenames.end(), mInputFilenames.begin());
+ mInputFilenames=filenames;
}
//--------------------------------------------------------------------
//--------------------------------------------------------------------
void clitk::ImageToImageGenericFilterBase::SetOutputFilenames(const std::vector<std::string> & filenames)
{
- std::copy(filenames.begin(), filenames.end(), mOutputFilenames.begin());
+ mOutputFilenames.clear();
+ std::copy(filenames.begin(),filenames.end(),mOutputFilenames.begin());
}
//--------------------------------------------------------------------
//--------------------------------------------------------------------
-
-//--------------------------------------------------------------------
-bool clitk::ImageToImageGenericFilterBase::CheckImageType() {
- return (CheckDimension() && CheckPixelType());
-}
-//--------------------------------------------------------------------
-
-
-//--------------------------------------------------------------------
-bool clitk::ImageToImageGenericFilterBase::CheckDimension(unsigned int d) {
- bool b = false;
- unsigned int i=0;
- while ((!b) && (i<mListOfAllowedDimension.size())) {
- b = (mListOfAllowedDimension[i] == d);
- i++;
- }
- return b;
-}
-//--------------------------------------------------------------------
-
-
-//--------------------------------------------------------------------
-bool clitk::ImageToImageGenericFilterBase::CheckPixelType(std::string pt) {
- bool b = false;
- unsigned int i=0;
- while ((!b) && (i<mListOfAllowedPixelType.size())) {
- b = (mListOfAllowedPixelType[i] == pt);
- i++;
- }
- return b;
-}
-//--------------------------------------------------------------------
-
-
-//--------------------------------------------------------------------
-bool clitk::ImageToImageGenericFilterBase::CheckDimension() {
- return CheckDimension(mDim);
-}
-//--------------------------------------------------------------------
-
-
-//--------------------------------------------------------------------
-bool clitk::ImageToImageGenericFilterBase::CheckPixelType() {
- return CheckPixelType(mPixelTypeName);
-}
-//--------------------------------------------------------------------
-
-
//--------------------------------------------------------------------
void clitk::ImageToImageGenericFilterBase::PrintAvailableImageTypes() {
- std::cout << "The filter <" << mFilterName << "> manages ";
- for(unsigned int i=0; i<mListOfAllowedDimension.size(); i++) {
- std::cout << mListOfAllowedDimension[i] << "D ";
- }
- std::cout << "images, with pixel types: ";
- for(unsigned int i=0; i<mListOfAllowedPixelType.size(); i++) {
- std::cout << mListOfAllowedPixelType[i] << " ";
- }
- std::cout << std::endl;
+ std::cout << GetAvailableImageTypes();
}
//--------------------------------------------------------------------
+
//--------------------------------------------------------------------
void clitk::ImageToImageGenericFilterBase::ImageTypeError() {
std::cerr << "**Error** The filter <" << mFilterName << "> is not available for "
<< mDim << "D images with pixel="
- << mPixelTypeName << "." << std::endl;
- std::cerr << "**Error** Allowed image dim: \t";
- for(unsigned int i=0; i<mListOfAllowedDimension.size(); i++) {
- std::cerr << mListOfAllowedDimension[i] << " ";
- }
- std::cerr << std::endl << "**Error** Allowed pixel types: \t";
- for(unsigned int i=0; i<mListOfAllowedPixelType.size(); i++) {
- std::cerr << mListOfAllowedPixelType[i] << " ";
- }
- std::cerr << std::endl;
+ << mPixelTypeName << " and "
+ << mNbOfComponents << " component." << std::endl;
+ std::cerr << GetAvailableImageTypes();
exit(0);
}
//--------------------------------------------------------------------