[Insight-developers] dicom private dictionaries etc (gdcm problem?)

Kris Thielemans kris.thielemans at csc.mrc.ac.uk
Wed Oct 11 14:01:25 EDT 2006


Hi

I need to load some DICOM private tags from GE DICOM files.

I've been doing a bit of digging and found the following problems with gdcm


* doxygen for std::string DictSet::BuildDictPath() is incorrect. it says

/**
 * \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
 */

however, the path defaults to PUB_DICT_PATH


* DictEntry *DocEntrySet::GetDictEntry(uint16_t group,uint16_t elem) 
and 
DictEntry *DocEntrySet::GetDictEntry(uint16_t group, uint16_t elem,
                                     TagName const &vr)


doxygen says

/**
 * \brief   Searches [both] the public [and the shadow dictionary (when they
 *          exist)] for the presence of the DictEntry with given
 *          group and element. The public dictionary has precedence on the
 *          shadow one(s), if any.
 * @param   group  Group number of the searched DictEntry
 * @param   elem Element number of the searched DictEntry
 * @return  Corresponding DictEntry when it exists, NULL otherwise.  */ 

however, as far as I can see, the shadow dictionary is never used:

{
   DictEntry *found = 0;
   Dict *pubDict = Global::GetDicts()->GetDefaultPubDict();
   if (!pubDict) 
   {
      gdcmWarningMacro( "We SHOULD have a default dictionary");
   }
   else
   {
      found = pubDict->GetEntry(group, elem);
   }
   return found;
}



In fact, a grep on RefShaDict shows no relevant places where it is used.

As far as I can see, adding a private dictionary to Global::DicSets() will
thus never have any effect. I woul dhave to add the private fields to the
default dictionary.

Am I wrong?

Thanks

Kris Thielemans
Hammersmith Imanet, part of GE Healthcare
London W12 ONN, United Kingdom




More information about the Insight-developers mailing list