-class GDCM_EXPORT gdcmDictSet {
-private:
- DictSetHT dicts;
- int AppendDict(gdcmDict* NewDict);
- void LoadDictFromFile(string filename, DictKey);
+class GDCM_EXPORT DictSet
+{
+public:
+ DictSet();
+ ~DictSet();
+
+ void Print(std::ostream& os);
+
+ EntryNamesList * GetPubDictEntryNames();
+ EntryNamesByCatMap * GetPubDictEntryNamesByCategory();
+
+ Dict* LoadDictFromFile( std::string const & fileName,
+ DictKey const & name );
+
+ Dict* GetDict( DictKey const & DictName );
+
+ /// \brief Retrieve the default reference DICOM V3 public dictionary.
+ Dict* GetDefaultPubDict() { return GetDict(PUB_DICT_NAME); };
+
+ // \brief Retrieve the virtual reference DICOM dictionary.
+ // \warning : not end user intended
+ // Dict* GetVirtualDict() { return &VirtualEntry; };
+
+ DictEntry* NewVirtualDictEntry(uint16_t group, uint16_t element,
+ TagName vr = "Unknown",
+ TagName fourth = "Unknown",
+ TagName name = "Unknown");
+
+ static std::string BuildDictPath();
+
+protected:
+ bool AppendDict(Dict *NewDict, DictKey const & name);
+