/*========================================================================= Program: gdcm Module: $RCSfile: gdcmDicomDirElement.h,v $ Language: C++ Date: $Date: 2004/06/20 18:08:47 $ Version: $Revision: 1.8 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef GDCMDICOMDIRELEMENT_H #define GDCMDICOMDIRELEMENT_H #include "gdcmCommon.h" #include //----------------------------------------------------------------------------- typedef struct { /// DicomGroup number unsigned short int group; /// DicomElement number unsigned short int elem; /// value (coded as a std::string) of the Element std::string value; } gdcmElement; typedef std::list ListDicomDirMetaElem; typedef std::list ListDicomDirPatientElem; typedef std::list ListDicomDirStudyElem; typedef std::list ListDicomDirSerieElem; typedef std::list ListDicomDirImageElem; //----------------------------------------------------------------------------- /** * \ingroup gdcmDicomDirElement * \brief gdcmDicomDirElement represents elements contained in a dicom dir * Class for the chained lists from the file 'Dicts/DicomDir.dic' */ class GDCM_EXPORT gdcmDicomDirElement { public: gdcmDicomDirElement(void); ~gdcmDicomDirElement(void); /** * \brief canonical Printer * \sa SetPrintLevel */ void Print(std::ostream &os); /** * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the META Elements of a DICOMDIR. */ ListDicomDirMetaElem &GetDicomDirMetaElements(void) {return(DicomDirMetaList);}; /** * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the PATIENT Elements of a DICOMDIR. */ ListDicomDirPatientElem &GetDicomDirPatientElements(void) {return(DicomDirPatientList);}; /** * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the STUDY Elements of a DICOMDIR. */ ListDicomDirStudyElem &GetDicomDirStudyElements(void) {return(DicomDirStudyList);}; /** * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the SERIE Elements of a DICOMDIR. */ ListDicomDirSerieElem &GetDicomDirSerieElements(void) {return(DicomDirSerieList);}; /** * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the IMAGE Elements of a DICOMDIR. */ ListDicomDirImageElem &GetDicomDirImageElements(void) {return(DicomDirImageList);}; private: /// gdcmElements chained list, related to the MetaElements of DICOMDIR ListDicomDirMetaElem DicomDirMetaList; /// gdcmElements chained list, related to the PatientElements of DICOMDIR ListDicomDirPatientElem DicomDirPatientList; /// gdcmElements chained list, related to the StudyElements of DICOMDIR ListDicomDirStudyElem DicomDirStudyList; /// gdcmElements chained list, related to the SerieElements of DICOMDIR ListDicomDirSerieElem DicomDirSerieList; /// gdcmElements chained list, related to the ImageElements of DICOMDIR ListDicomDirImageElem DicomDirImageList; }; //----------------------------------------------------------------------------- #endif