8 #include "gdcmCommon.h"
11 ////////////////////////////////////////////////////////////////////////////
12 // Container for managing a set of loaded dictionaries. Sharing dictionaries
14 // * reloading an allready loaded dictionary,
15 // * having many in memory representations of the same dictionary.
17 typedef string DictKey;
18 typedef map<DictKey, gdcmDict*> DictSetHT;
20 class GDCM_EXPORT gdcmDictSet {
23 int AppendDict(gdcmDict* NewDict);
24 void LoadDictFromFile(string filename, DictKey);
26 static string DictPath; // Directory path to dictionaries
27 static string BuildDictPath(void);
28 static gdcmDict* DefaultPubDict;
30 static list<string> * GetPubDictTagNames(void);
31 static map<string, list<string> >* GetPubDictTagNamesByCategory(void);
32 static gdcmDict* LoadDefaultPubDict(void);
35 // TODO Swig int LoadDictFromFile(string filename);
36 // QUESTION: the following function might not be thread safe !? Maybe
37 // we need some mutex here, to avoid concurent creation of
38 // the same dictionary !?!?!
39 // TODO Swig int LoadDictFromName(string filename);
40 // TODO Swig int LoadAllDictFromDirectory(string DirectoryName);
41 // TODO Swig string* GetAllDictNames();
44 gdcmDict* GetDict(DictKey DictName);
45 gdcmDict* GetDefaultPubDict(void);