X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIODicomImageReader.cpp;h=30c420914cc2a7ca00c96aa8ce979fd666be0ddd;hb=b0843014c5482f70050fab8036c6780172e3b6c9;hp=66c1b008b68410b895b757e515baae66fcf6b200;hpb=6af4831637e7dbc737fc8a42ae1395ee94658103;p=creaImageIO.git diff --git a/src2/creaImageIODicomImageReader.cpp b/src2/creaImageIODicomImageReader.cpp index 66c1b00..30c4209 100644 --- a/src2/creaImageIODicomImageReader.cpp +++ b/src2/creaImageIODicomImageReader.cpp @@ -1,14 +1,12 @@ #include -#include + #include #include #include "boost/filesystem/path.hpp" #include #include -#ifdef _DEBUG -#define new DEBUG_NEW -#endif + namespace creaImageIO { @@ -76,22 +74,26 @@ namespace creaImageIO //======================================================================== std::string irclean(const std::string& str) { - if (str == "GDCM::Unfound") - { - return ""; - } - if (str[str.size()-1]==' ') - { - return str.substr(0,str.size()-1); - } - if (str[str.size()-1]==0) - { - return str.substr(0,str.size()-1); - } + if(str.size() > 0) + { + if (str == "GDCM::Unfound") + { + return ""; + } + if (str[str.size()-1]==' ') + { + return str.substr(0,str.size()-1); + } + if (str[str.size()-1]==0) + { + return str.substr(0,str.size()-1); + } + } + return str; } //======================================================================== - + //===================================================================== void DicomImageReader::ReadAttributes(const std::string& filename, std::map& attr) @@ -99,7 +101,8 @@ namespace creaImageIO GimmickMessage(2,"Reading attributes from DICOM file '" < file(GDCM_NAME_SPACE::File::New(), DicomImageReader::deleter()); GDCM_NAME_SPACE::Document *doc= GDCM_NAME_SPACE::File::New(); doc->SetLoadMode( GDCM_NAME_SPACE::LD_ALL); @@ -108,7 +111,7 @@ namespace creaImageIO file->SetLoadMode( GDCM_NAME_SPACE::LD_ALL); file->SetFileName(filename.c_str()); file->Load(); - if (file->IsReadable() ||((GDCM_NAME_SPACE::Document*) file)->IsReadable()) + if (file->IsReadable())// ||((GDCM_NAME_SPACE::Document*) file)->IsReadable()) { std::map::iterator i; for (i=attr.begin();i!=attr.end();++i) @@ -142,7 +145,7 @@ namespace creaImageIO } } } - file->Delete(); + // file->Delete(); } //=====================================================================