X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmElementSet.cxx;h=6f1d984071ee71bcb01c84b97a2a04c75ad88073;hb=4f189b7cd8d7aff962887245b7b30ede39b7856c;hp=215589b811bd10ac6c4c3e2b29101ae0e8bd2916;hpb=4117dec671b980b51a16117a5692d822b63bbe04;p=gdcm.git diff --git a/src/gdcmElementSet.cxx b/src/gdcmElementSet.cxx index 215589b8..6f1d9840 100644 --- a/src/gdcmElementSet.cxx +++ b/src/gdcmElementSet.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmElementSet.cxx,v $ Language: C++ - Date: $Date: 2005/10/18 09:17:08 $ - Version: $Revision: 1.66 $ + Date: $Date: 2005/10/24 16:00:47 $ + Version: $Revision: 1.67 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -75,6 +75,7 @@ bool ElementSet::AddEntry(DocEntry *newEntry) else { TagHT.insert(TagDocEntryHT::value_type(newEntry->GetKey(), newEntry)); + newEntry->Register(); return true; } } @@ -89,8 +90,7 @@ bool ElementSet::RemoveEntry( DocEntry *entryToRemove) if ( TagHT.count(key) == 1 ) { TagHT.erase(key); - //gdcmWarningMacro( "One element erased."); - delete entryToRemove; + entryToRemove->Unregister(); return true; } @@ -98,24 +98,6 @@ bool ElementSet::RemoveEntry( DocEntry *entryToRemove) return false ; } -/** - * \brief Clear the hash table from given entry BUT keep the entry. - * @param entryToRemove Entry to remove. - */ -bool ElementSet::RemoveEntryNoDestroy(DocEntry *entryToRemove) -{ - const TagKey &key = entryToRemove->GetKey(); - if ( TagHT.count(key) == 1 ) - { - TagHT.erase(key); - //gdcmWarningMacro( "One element erased."); - return true; - } - - gdcmWarningMacro( "Key not present " << key); - return false ; -} - /** * \brief delete all entries in the ElementSet */ @@ -125,7 +107,7 @@ void ElementSet::ClearEntry() { if ( cc->second ) { - delete cc->second; + cc->second->Unregister(); } } TagHT.clear();