-//--------------------------------------------------------------------
-clitk::ImageArithmGenericFilter::ImageArithmGenericFilter():mTypeOfOperation(0) {
- mIsOperationUseASecondImage = false;
-}
-//--------------------------------------------------------------------
-
-//--------------------------------------------------------------------
-void clitk::ImageArithmGenericFilter::Update () {
-
- // Load image header
- itk::ImageIOBase::Pointer header = clitk::readImageHeader(mInputFilenames[0]);
-
- // Determine dim, pixel type, number of components
- mDim = header->GetNumberOfDimensions();
- mPixelTypeName = header->GetComponentTypeAsString(header->GetComponentType());
- mNbOfComponents = header->GetNumberOfComponents();
-
- if (mInputFilenames.size() == 0) {
- std::cerr << "ERROR : please provide at least a input filename." << std::endl;
- }
- if (mInputFilenames.size() == 1) {
- mIsOperationUseASecondImage = false;
- }
- if (mInputFilenames.size() == 2) {
- mIsOperationUseASecondImage = true;
- }
- if (mInputFilenames.size() > 2) {
- std::cerr << "ERROR : please provide only 1 or 2 input filenames." << std::endl;
- }
-
- // Switch by dimension
- if (mDim == 2) { Update_WithDim<2>(); return; }
- if (mDim == 3) { Update_WithDim<3>(); return; }
- if (mDim == 4) { Update_WithDim<4>(); return; }
-
- std::cerr << "Error, dimension of input image is " << mDim << ", but I only work with 2,3." << std::endl;
- exit(0);
-}
-//--------------------------------------------------------------------