X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmDicomDir.cxx;h=f002e6f7ca0f174888cb41ba9c165f2ec073916d;hb=3f237ae109aef22eb58b91efe64af240e0c0d63b;hp=fd8158c7dff8a4d34f9a959541536e842316752f;hpb=2ce6422178e709073fc24aa2e3d4f5069711cd18;p=gdcm.git diff --git a/src/gdcmDicomDir.cxx b/src/gdcmDicomDir.cxx index fd8158c7..f002e6f7 100644 --- a/src/gdcmDicomDir.cxx +++ b/src/gdcmDicomDir.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDicomDir.cxx,v $ Language: C++ - Date: $Date: 2005/10/19 13:15:38 $ - Version: $Revision: 1.161 $ + Date: $Date: 2005/10/24 16:00:47 $ + Version: $Revision: 1.165 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -125,18 +125,18 @@ DicomDir::DicomDir() } #ifndef GDCM_LEGACY_REMOVE -/** - * \brief Constructor Parses recursively the directory and creates the DicomDir +/* * + * \ brief Constructor Parses recursively the directory and creates the DicomDir * or uses an already built DICOMDIR, depending on 'parseDir' value. - * @param fileName name + * @ param fileName name * - of the root directory (parseDir = true) * - of the DICOMDIR (parseDir = false) - * @param parseDir boolean + * @ param parseDir boolean * - true if user passed an entry point * and wants to explore recursively the directories * - false if user passed an already built DICOMDIR file * and wants to use it - * @deprecated use : new DicomDir() + [ SetLoadMode(lm) + ] SetDirectoryName(name) + * @ deprecated use : new DicomDir() + [ SetLoadMode(lm) + ] SetDirectoryName(name) * or : new DicomDir() + SetFileName(name) */ DicomDir::DicomDir(std::string const &fileName, bool parseDir ): @@ -190,22 +190,21 @@ bool DicomDir::Load( ) } #ifndef GDCM_LEGACY_REMOVE -/** - * \brief Loader. (DEPRECATED : kept not to break the API) - * @param fileName file to be open for parsing - * @return false if file cannot be open or no swap info was found, +/* * + * \ brief Loader. (DEPRECATED : kept not to break the API) + * @ param fileName file to be open for parsing + * @ return false if file cannot be open or no swap info was found, * or no tag was found. - * @deprecated use SetFileName(n) + Load() instead + * @ deprecated use SetFileName(n) + Load() instead */ bool DicomDir::Load(std::string const &fileName ) { - // We should clean out anything that already exists. - Initialize(); // sets all private fields to NULL + SetFileName(fileName); return Load(); } /// DEPRECATED : use SetDirectoryName(dname) instead -/** +/* * * \brief Loader. (DEPRECATED : kept not to break the API) * @param paseDir Parse Dir * @deprecated use SetDirectoryName(dname) instead @@ -320,7 +319,7 @@ DicomDirMeta *DicomDir::NewMeta() if ( dynamic_cast(entry) ) break; - RemoveEntryNoDestroy(entry); + RemoveEntry(entry); MetaElems->AddEntry(entry); entry = GetFirstEntry(); @@ -738,6 +737,7 @@ void DicomDir::CreateDicomDir() // 3 - we find an other tag // + we create the object for the precedent tag // + loop to 1 - + gdcmDebugMacro("Create DicomDir"); // Directory record sequence DocEntry *e = GetDocEntry(0x0004, 0x1220); @@ -1093,7 +1093,7 @@ void DicomDir::SetElement(std::string const &path, DicomDirType type, tmpEl = it->Elem; dictEntry = GetPubDict()->GetEntry(tmpGr, tmpEl); - entry = new DataEntry( dictEntry ); // Be sure it's never a DataEntry ! + entry = DataEntry::New( dictEntry ); // Be sure it's never a DataEntry ! entry->SetOffset(0); // just to avoid further missprinting @@ -1145,6 +1145,7 @@ void DicomDir::SetElement(std::string const &path, DicomDirType type, gdcmWarningMacro("GDCM_DICOMDIR_META ?!? should never print that"); } si->AddEntry(entry); + entry->Delete(); } } @@ -1161,7 +1162,7 @@ void DicomDir::MoveSQItem(DocEntrySet *dst,DocEntrySet *src) entry = src->GetFirstEntry(); while(entry) { - src->RemoveEntryNoDestroy(entry); + src->RemoveEntry(entry); dst->AddEntry(entry); // we destroyed -> the current iterator is not longer valid entry = src->GetFirstEntry();