-void gdcmDictSet::Print(ostream& os) {
- for (DictSetHT::iterator dict = Dicts.begin(); dict != Dicts.end(); ++dict){
- os << "Printing dictionary " << dict->first << " \n";
- dict->second->Print(os);
+Dict *DictSet::GetNextEntry()
+{
+ gdcmAssertMacro (ItDictHt != Dicts.end());
+
+ ++ItDictHt;
+ if ( ItDictHt != Dicts.end() )
+ return ItDictHt->second;
+ return NULL;
+}
+
+/**
+ * \brief Obtain from the GDCM_DICT_PATH environnement variable the
+ * path to directory containing the dictionaries. When
+ * the environnement variable is absent the path is defaulted
+ * to "../Dicts/".
+ * @return path to directory containing the dictionaries
+ */
+std::string DictSet::BuildDictPath()
+{
+ std::string resultPath;
+ const char *envPath = 0;
+ envPath = getenv("GDCM_DICT_PATH");
+
+ if (envPath && (strlen(envPath) != 0))
+ {
+ resultPath = envPath;
+ if ( resultPath[resultPath.length()-1] != '/' )
+ {
+ resultPath += '/';
+ }
+ gdcmWarningMacro( "Dictionary path set from environnement");
+ }
+ else
+ {
+ resultPath = PUB_DICT_PATH;