X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmContentEntry.cxx;h=97c949e9bb62358f9f1a2a2be82c874cad54e7dc;hb=db42dcafe4dafd893c12b6d209870d66ec474a1b;hp=84794b41d6988a311452bcea9e3e04e496d161fb;hpb=c2d8dd88ea693b22e748546f70e78171835b9b7a;p=gdcm.git diff --git a/src/gdcmContentEntry.cxx b/src/gdcmContentEntry.cxx index 84794b41..97c949e9 100644 --- a/src/gdcmContentEntry.cxx +++ b/src/gdcmContentEntry.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmContentEntry.cxx,v $ Language: C++ - Date: $Date: 2005/01/26 10:29:16 $ - Version: $Revision: 1.4 $ + Date: $Date: 2005/06/24 10:55:58 $ + Version: $Revision: 1.10 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -34,7 +34,8 @@ namespace gdcm * \brief Constructor for a given DictEntry * @param e Pointer to existing dictionary entry */ -ContentEntry::ContentEntry(DictEntry *e) : DocEntry(e) +ContentEntry::ContentEntry(DictEntry *e) + : DocEntry(e) { Value = GDCM_UNFOUND; } @@ -44,7 +45,7 @@ ContentEntry::ContentEntry(DictEntry *e) : DocEntry(e) * @param e Pointer to existing Doc entry */ ContentEntry::ContentEntry(DocEntry *e) - : DocEntry(e->GetDictEntry()) + : DocEntry(e->GetDictEntry()) { Copy(e); } @@ -57,61 +58,18 @@ ContentEntry::~ContentEntry () } //----------------------------------------------------------------------------- -// Public +// Print -/** - * \brief Writes the 'std::string representable' value of a ContentEntry - * @param fp already open ofstream pointer - * @param filetype type of the file (ACR, ImplicitVR, ExplicitVR, ...) - */ -void ContentEntry::WriteContent(std::ofstream *fp, FileType filetype) +//----------------------------------------------------------------------------- +// Public +void ContentEntry::Copy(DocEntry *doc) { - DocEntry::WriteContent(fp, filetype); - - if ( GetGroup() == 0xfffe ) - { - return; //delimitors have NO value - } + DocEntry::Copy(doc); - const VRKey &vr = GetVR(); - unsigned int lgr = GetLength(); - if (vr == "US" || vr == "SS") - { - // some 'Short integer' fields may be multivaluated - // each single value is separated from the next one by '\' - // we split the string and write each value as a short int - std::vector tokens; - tokens.erase(tokens.begin(),tokens.end()); // clean any previous value - Util::Tokenize (GetValue(), tokens, "\\"); - for (unsigned int i=0; i tokens; - tokens.erase(tokens.begin(),tokens.end()); // clean any previous value - Util::Tokenize (GetValue(), tokens, "\\"); - for (unsigned int i=0; i(doc); + if ( entry ) + Value = entry->Value; +} //----------------------------------------------------------------------------- // Protected