X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDocument.cxx;h=088c4097a16a14f5f98acd1fcd297b78624b7f11;hb=0068e5861800986e33ee5eeac99863c4e01e3512;hp=38595140ebb1661ab1a1bb723a89780681910ce5;hpb=95e43356511d138225d8f718f632b3e7a8fcc106;p=gdcm.git diff --git a/src/gdcmDocument.cxx b/src/gdcmDocument.cxx index 38595140..088c4097 100644 --- a/src/gdcmDocument.cxx +++ b/src/gdcmDocument.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDocument.cxx,v $ Language: C++ - Date: $Date: 2005/02/05 01:37:08 $ - Version: $Revision: 1.223 $ + Date: $Date: 2005/02/11 16:36:52 $ + Version: $Revision: 1.227 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -30,6 +30,7 @@ #include #include +#include // For nthos: #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__MINGW32__) @@ -73,8 +74,7 @@ Document::Document( std::string const &filename ) Group0002Parsed = false; gdcmWarningMacro( "Starting parsing of file: " << Filename.c_str()); - // Fp->seekg( 0, std::ios::beg); - + Fp->seekg(0, std::ios::end); long lgt = Fp->tellg(); @@ -415,7 +415,7 @@ std::ifstream *Document::OpenFile() return 0; } - uint16_t zero; + uint16_t zero = 0; Fp->read((char*)&zero, (size_t)2); if( Fp->eof() ) { @@ -438,7 +438,7 @@ std::ifstream *Document::OpenFile() //DICOM Fp->seekg(126L, std::ios::cur); - char dicm[4]; + char dicm[4] = {' ',' ',' ',' '}; Fp->read(dicm, (size_t)4); if( Fp->eof() ) { @@ -469,7 +469,7 @@ bool Document::CloseFile() delete Fp; Fp = 0; } - return true; //FIXME how do we detect a non-closed ifstream ? + return true; } /** @@ -558,7 +558,6 @@ void Document::LoadEntryBinArea(BinEntry *elem) return; } - /// \todo check the result Fp->read((char*)a, l); if( Fp->fail() || Fp->eof()) { @@ -997,12 +996,6 @@ void Document::ParseSQ( SeqEntry *seqEntry, { dlm_mod = false; } - // FIXME, TODO - // when we're here, element fffe,e000 is already passed. - // it's lost for the SQItem we're going to process !! - - //ParseDES(itemSQ, newDocEntry->GetOffset(), l, dlm_mod); - //delete newDocEntry; // FIXME well ... it's too late to use it ! // Let's try :------------ // remove fff0,e000, created out of the SQItem @@ -1100,7 +1093,6 @@ void Document::LoadDocEntry(DocEntry *entry) return; } - /// \todo Any compacter code suggested (?) if ( IsDocEntryAnInteger(entry) ) { uint32_t NewInt; @@ -1633,7 +1625,7 @@ void Document::FixDocEntryFoundLength(DocEntry *entry, if ( gr != 0x0008 || ( elem != 0x0070 && elem != 0x0080 ) ) { foundLength = 10; - entry->SetReadLength(10); /// \todo a bug is to be fixed !? + entry->SetReadLength(10); // a bug is to be fixed !? } } @@ -1644,7 +1636,7 @@ void Document::FixDocEntryFoundLength(DocEntry *entry, else if ( gr == 0x0009 && ( elem == 0x1113 || elem == 0x1114 ) ) { foundLength = 4; - entry->SetReadLength(4); /// \todo a bug is to be fixed !? + entry->SetReadLength(4); // a bug is to be fixed !? } else if ( entry->GetVR() == "SQ" ) @@ -1924,7 +1916,7 @@ void Document::SwitchByteSwapCode() /** * \brief during parsing, Header Elements too long are not loaded in memory - * @param newSize + * @param newSize new size */ void Document::SetMaxSizeLoadEntry(long newSize) { @@ -1942,8 +1934,8 @@ void Document::SetMaxSizeLoadEntry(long newSize) /** * \brief Header Elements too long will not be printed - * \todo See comments of \ref Document::MAX_SIZE_PRINT_ELEMENT_VALUE - * @param newSize + * See comments of \ref Document::MAX_SIZE_PRINT_ELEMENT_VALUE + * @param newSize new size */ void Document::SetMaxSizePrintEntry(long newSize) {