]> Creatis software - gdcm.git/blobdiff - src/gdcmElementSet.h
* CLEANUP_ROUND (8) for gdcmPixelConvert (end of RLE nigthmare)
[gdcm.git] / src / gdcmElementSet.h
index a7b8b672b4976e3f09d816c05f80b2d8092b3f32..375576e70c17ea4e93415841ea4aa7cfad6bd33e 100644 (file)
@@ -3,12 +3,12 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmElementSet.h,v $
   Language:  C++
-  Date:      $Date: 2004/06/22 13:47:33 $
-  Version:   $Revision: 1.9 $
+  Date:      $Date: 2004/10/07 18:09:11 $
+  Version:   $Revision: 1.18 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
-  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
                                                                                 
      This software is distributed WITHOUT ANY WARRANTY; without even
      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 #ifndef GDCMELEMENTSET_H
 #define GDCMELEMENTSET_H
 
-#include <map>
-#include <iostream>
 #include "gdcmCommon.h"
 #include "gdcmDocEntrySet.h"
+#include <map>
+#include <iostream>
 
 class gdcmValEntry;
 class gdcmBinEntry;
 class gdcmSeqEntry;
 
 
-typedef std::map<TagKey, gdcmDocEntry *> TagDocEntryHT;
+typedef std::map<gdcmTagKey, gdcmDocEntry *> TagDocEntryHT;
 
 //-----------------------------------------------------------------------------
 
@@ -37,21 +37,31 @@ class GDCM_EXPORT gdcmElementSet : public gdcmDocEntrySet
 {
 public:
    gdcmElementSet(int);
-   ~gdcmElementSet(void);
+   ~gdcmElementSet();
    virtual bool AddEntry(gdcmDocEntry *Entry);
-   virtual bool RemoveEntry(gdcmDocEntry *EntryToRemove);
-
+   bool RemoveEntry(gdcmDocEntry *EntryToRemove);
+   bool RemoveEntryNoDestroy(gdcmDocEntry *EntryToRemove);
+   
    virtual void Print(std::ostream &os = std::cout); 
    virtual void Write(FILE *fp, FileType filetype); 
 
-    
+   /// Accessor to \ref TagHT
+   // Do not expose this to user (public API) !
+   // I re-add it temporaryly JPRx
+   TagDocEntryHT &GetEntry() { return TagHT; };
+
+
 protected:
 // Variables
    /// Hash Table (map), to provide fast access
-   TagDocEntryHT tagHT; 
+   TagDocEntryHT TagHT; 
      
 private:
-   
+   /// Just for following ::GetTagHT()
+   friend class gdcmDocument;
+
+   /// Accessor to \ref TagHT
+   TagDocEntryHT* GetTagHT() { return &TagHT; };
 };
 
 //-----------------------------------------------------------------------------