X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmDicomDirElement.cxx;h=f0f82ed195fe3a2e061f6142ee1c146d7db4b331;hb=801fe2221ca70b34c5c644b6f522aa1b7233945b;hp=7fecc3eb4deb9df415ccd440aa63d9ac9bcca7e1;hpb=efbd6deaa3414a1eec4410bfae5ae55bc872a59f;p=gdcm.git diff --git a/src/gdcmDicomDirElement.cxx b/src/gdcmDicomDirElement.cxx index 7fecc3eb..f0f82ed1 100644 --- a/src/gdcmDicomDirElement.cxx +++ b/src/gdcmDicomDirElement.cxx @@ -2,27 +2,28 @@ //----------------------------------------------------------------------------- #include #include // For sprintf +#include #include "gdcmDicomDirElement.h" #include "gdcmUtil.h" +#include "gdcmDebug.h" +#include "gdcmDictSet.h" -#ifndef PUB_DICT_PATH -# define PUB_DICT_PATH "../Dicts/" -#endif -#define DICT_ELEM "DicomDir.dic" - -#include -#ifdef GDCM_NO_ANSI_STRING_STREAM -# include -# define ostringstream ostrstream -# else -# include -#endif +/** + * \ingroup gdcmDicomDirElement + * \brief Class for the chained lists from the file 'Dicts/DicomDir.dic' + */ + //----------------------------------------------------------------------------- // Constructor / Destructor -gdcmDicomDirElement::gdcmDicomDirElement(void) -{ + +/** + * \ingroup gdcmDicomDirElement + * \brief constructor : populates the chained lists + * from the file 'Dicts/DicomDir.dic' + */ + gdcmDicomDirElement::gdcmDicomDirElement(void) { std::string filename=gdcmDictSet::BuildDictPath() + std::string(DICT_ELEM); std::ifstream from(filename.c_str()); dbg.Error(!from, "gdcmDicomDirElement::gdcmDicomDirElement: can't open dictionary",filename.c_str()); @@ -36,8 +37,8 @@ gdcmDicomDirElement::gdcmDicomDirElement(void) from.getline(buff, 1024, ' '); type = buff; - if( (type=="metaElem") || (type=="patientElem") || - (type=="studyElem") || (type=="serieElem") || + if( (type=="metaElem") || (type=="patientElem") || + (type=="studyElem") || (type=="serieElem") || (type=="imageElem") ) { from >> std::hex >> elem.group >> elem.elem; @@ -49,74 +50,76 @@ gdcmDicomDirElement::gdcmDicomDirElement(void) elem.value = buff; if(type=="metaElem") - MetaList.push_back(elem); + DicomDirMetaList.push_back(elem); else if(type=="patientElem") - PatientList.push_back(elem); + DicomDirPatientList.push_back(elem); else if(type=="studyElem") - StudyList.push_back(elem); + DicomDirStudyList.push_back(elem); else if(type=="serieElem") - SerieList.push_back(elem); + DicomDirSerieList.push_back(elem); else if(type=="imageElem") - ImageList.push_back(elem); + DicomDirImageList.push_back(elem); } - from.getline(buff, 1024, '\n'); } from.close(); } -gdcmDicomDirElement::~gdcmDicomDirElement() -{ - MetaList.clear(); - PatientList.clear(); - StudyList.clear(); - SerieList.clear(); - ImageList.clear(); +/** + * \ingroup gdcmDicomDirElement + * \brief canonical destructor + */ + gdcmDicomDirElement::~gdcmDicomDirElement() { + DicomDirMetaList.clear(); + DicomDirPatientList.clear(); + DicomDirStudyList.clear(); + DicomDirSerieList.clear(); + DicomDirImageList.clear(); } //----------------------------------------------------------------------------- // Print /** - * \ingroup gdcmVR - * \brief Print all + * \ingroup gdcmDicomDirElement + * \brief Print all + * \todo add a 'Print Level' check * @param os The output stream to be written to. */ -void gdcmDicomDirElement::Print(std::ostream &os) -{ +void gdcmDicomDirElement::Print(std::ostream &os) { std::ostringstream s; std::list::iterator it; char greltag[10]; //group element tag s << "Meta Elements :"<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<group,it->elem); s << " ("<value<