X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvImageWriter.txx;h=dc07874888f73b1c4ba64cec75eed8ef6a80eb65;hb=c361c11f0875b493f99ed8dca7796dd1bd4535f9;hp=c1585465621ae052dc48be82c16a2cd23d836110;hpb=0083c3fb2c66812489631c7551709d121de51625;p=clitk.git diff --git a/vv/vvImageWriter.txx b/vv/vvImageWriter.txx index c158546..dc07874 100644 --- a/vv/vvImageWriter.txx +++ b/vv/vvImageWriter.txx @@ -1,3 +1,20 @@ +/*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv + + Authors belong to: + - University of LYON http://www.universite-lyon.fr/ + - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the copyright notices for more information. + + It is distributed under dual licence + + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +======================================================================-====*/ #ifndef vvImageWriter_TXX #define vvImageWriter_TXX #include @@ -7,42 +24,25 @@ template void vvImageWriter::UpdateWithDim(std::string OutputPixelType) { - if (OutputPixelType == "short") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "unsigned short") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "unsigned_short") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "char") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "unsigned_char") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "int") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "double") - { - UpdateWithDimAndOutputPixelType(); - } - else if (OutputPixelType == "float") - { - UpdateWithDimAndOutputPixelType(); - } - else - { - std::cerr << "Error, output pixel type : \"" << OutputPixelType << "\" unknown !" << std::endl; - } + if (OutputPixelType == "short") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "unsigned short") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "unsigned_short") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "char") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "unsigned_char") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "int") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "double") { + UpdateWithDimAndOutputPixelType(); + } else if (OutputPixelType == "float") { + UpdateWithDimAndOutputPixelType(); + } else { + std::cerr << "Error, output pixel type : \"" << OutputPixelType << "\" unknown !" << std::endl; + } } //==================================================================== @@ -50,26 +50,25 @@ void vvImageWriter::UpdateWithDim(std::string OutputPixelType) template void vvImageWriter::UpdateWithDimAndOutputPixelType() { - //Create the writer - typedef itk::Image< OutputPixelType, VImageDimension > OutputImageType; - typedef itk::ImageFileWriter WriterType; - typename WriterType::Pointer writer = WriterType::New(); - writer->SetFileName(mOutputFilename); - writer->SetInput(vvImageToITK(mImage)); - if (mUseAnObserver) { - writer->AddObserver(itk::ProgressEvent(), mObserver); - } - try { - writer->Update(); - } - catch ( itk::ExceptionObject & err ) { - std::cerr << "Error while reading " << mOutputFilename.c_str() - << " " << err << std::endl; - std::stringstream error; - error << err; - mLastError = error.str(); - return; - } + //Create the writer + typedef itk::Image< OutputPixelType, VImageDimension > OutputImageType; + typedef itk::ImageFileWriter WriterType; + typename WriterType::Pointer writer = WriterType::New(); + writer->SetFileName(mOutputFilename); + writer->SetInput(vvImageToITK(mImage)); + if (mUseAnObserver) { + writer->AddObserver(itk::ProgressEvent(), mObserver); + } + try { + writer->Update(); + } catch ( itk::ExceptionObject & err ) { + std::cerr << "Error while reading " << mOutputFilename.c_str() + << " " << err << std::endl; + std::stringstream error; + error << err; + mLastError = error.str(); + return; + } } //====================================================================