]> Creatis software - gdcm.git/blob - src/gdcmElementSet.h
- guint16 and guint32 removed. Use ISO C uint16_t, uint32_t instead.
[gdcm.git] / src / gdcmElementSet.h
1 /*=========================================================================
2                                                                                 
3   Program:   gdcm
4   Module:    $RCSfile: gdcmElementSet.h,v $
5   Language:  C++
6   Date:      $Date: 2004/07/02 13:55:28 $
7   Version:   $Revision: 1.10 $
8                                                                                 
9   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10   l'Image). All rights reserved. See Doc/License.txt or
11   http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
12                                                                                 
13      This software is distributed WITHOUT ANY WARRANTY; without even
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15      PURPOSE.  See the above copyright notices for more information.
16                                                                                 
17 =========================================================================*/
18
19 #ifndef GDCMELEMENTSET_H
20 #define GDCMELEMENTSET_H
21
22 #include <map>
23 #include <iostream>
24 #include "gdcmCommon.h"
25 #include "gdcmDocEntrySet.h"
26
27 class gdcmValEntry;
28 class gdcmBinEntry;
29 class gdcmSeqEntry;
30
31
32 typedef std::map<gdcmTagKey, gdcmDocEntry *> TagDocEntryHT;
33
34 //-----------------------------------------------------------------------------
35
36 class GDCM_EXPORT gdcmElementSet : public gdcmDocEntrySet
37 {
38 public:
39    gdcmElementSet(int);
40    ~gdcmElementSet(void);
41    virtual bool AddEntry(gdcmDocEntry *Entry);
42    virtual bool RemoveEntry(gdcmDocEntry *EntryToRemove);
43
44    virtual void Print(std::ostream &os = std::cout); 
45    virtual void Write(FILE *fp, FileType filetype); 
46
47     
48 protected:
49 // Variables
50    /// Hash Table (map), to provide fast access
51    TagDocEntryHT tagHT; 
52      
53 private:
54    
55 };
56
57 //-----------------------------------------------------------------------------
58 #endif
59