-int gdcmDictSet::LoadDicomV3Dict(void) {
- if (dicts.count(PUB_DICT_NAME))
- return 1;
- return LoadDictFromFile(DictPath + PUB_DICT_FILENAME, PUB_DICT_NAME);
+/**
+ * \ingroup gdcmDictSet
+ * \brief Obtain from the GDCM_DICT_PATH environnement variable the
+ * path to directory containing the dictionnaries. When
+ * the environnement variable is absent the path is defaulted
+ * to "../Dicts/".
+ */
+string gdcmDictSet::BuildDictPath(void) {
+ string ResultPath;
+ const char* EnvPath = (char*)0;
+ EnvPath = getenv("GDCM_DICT_PATH");
+ if (EnvPath && (strlen(EnvPath) != 0)) {
+ ResultPath = EnvPath;
+ if (ResultPath[ResultPath.length() -1] != '/' )
+ ResultPath += '/';
+ dbg.Verbose(1, "gdcmDictSet::BuildDictPath:",
+ "Dictionary path set from environnement");
+ } else
+ ResultPath = PUB_DICT_PATH;
+ return ResultPath;
+}
+
+/**
+ * \ingroup gdcmDictSet
+ * \brief Loads the default public DICOM V3 dictionary as a gdcmDict.
+ * \return The newly build reference public dictionary.
+ */
+gdcmDict* gdcmDictSet::LoadDefaultPubDict(void) {
+ string PubDictFile = gdcmDictSet::DictPath + PUB_DICT_FILENAME;
+ return new gdcmDict(PubDictFile.c_str());
+}
+
+/**
+ * \ingroup gdcmDictSet
+ * \brief The Dictionnary Set obtained with this constructor simply
+ * contains the Default Public dictionnary.
+ */
+gdcmDictSet::gdcmDictSet(void) {
+ dicts[PUB_DICT_NAME] = DefaultPubDict;