2 //-----------------------------------------------------------------------------
6 #include "gdcmCommon.h"
7 #include "gdcmDictEntry.h"
10 //-----------------------------------------------------------------------------
11 typedef std::map<TagKey, gdcmDictEntry*> TagKeyHT;
12 typedef std::map<TagName, gdcmDictEntry*> TagNameHT;
14 //-----------------------------------------------------------------------------
17 * \brief gdcmDict acts a memory representation of a dicom dictionary i.e.
18 * it is a container for a collection of dictionary entries. The
19 * dictionary is loaded from in an ascii file.
20 * There should be a single public dictionary (THE dictionary of
21 * the actual DICOM v3) but as many shadow dictionaries as imagers
22 * combined with all software versions...
25 class GDCM_EXPORT gdcmDict {
27 gdcmDict(std::string & FileName);
30 void Print(std::ostream&);
31 void PrintByKey(std::ostream&);
32 void PrintByName(std::ostream&);
34 bool AddNewEntry (gdcmDictEntry* NewEntry);
35 bool ReplaceEntry(gdcmDictEntry* NewEntry);
36 bool RemoveEntry (TagKey key);
37 bool RemoveEntry (guint16 group, guint16 element);
39 gdcmDictEntry * GetTagByNumber(guint16 group, guint16 element);
40 gdcmDictEntry * GetTagByName(TagName name);
44 * \brief returns a ref to the Dicom Dictionary H table (map)
45 * return the Dicom Dictionary H table
47 inline TagKeyHT & gdcmDict::GetEntries(void) {
54 /// Access through TagKey (see alternate access with NameHt)
56 /// Access through TagName (see alternate access with KeyHt)
61 //-----------------------------------------------------------------------------