X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDicomDirElement.h;h=9a879015b5c769bad19b903fe6c89bd01dcc65ba;hb=a462ce9f1af0894cd930ab04f2e65cd80dfa7084;hp=f813bca489b0fc44793e9e282fd7b0c6626117a1;hpb=22f785a2627d1e7823701193bd7624739a3e033b;p=gdcm.git diff --git a/src/gdcmDicomDirElement.h b/src/gdcmDicomDirElement.h index f813bca4..9a879015 100644 --- a/src/gdcmDicomDirElement.h +++ b/src/gdcmDicomDirElement.h @@ -1,5 +1,21 @@ -// gdcmDicomDirElement.h -//----------------------------------------------------------------------------- +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmDicomDirElement.h,v $ + Language: C++ + Date: $Date: 2005/01/06 20:03:27 $ + Version: $Revision: 1.18 $ + + 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.html 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 @@ -7,52 +23,101 @@ #include +namespace gdcm +{ + //----------------------------------------------------------------------------- typedef struct { - unsigned short int group; - unsigned short int elem; - std::string value; -} gdcmElement; + /// DicomGroup number + unsigned short int Group; + /// DicomElement number + unsigned short int Elem; + /// value (coded as a std::string) of the Element + std::string Value; +} Element; -typedef std::list ListDicomDirMetaElem; -typedef std::list ListDicomDirPatientElem; -typedef std::list ListDicomDirStudyElem; -typedef std::list ListDicomDirSerieElem; -typedef std::list ListDicomDirImageElem; +typedef std::list ListDicomDirElem; +typedef std::list ListDicomDirMetaElem; +typedef std::list ListDicomDirPatientElem; +typedef std::list ListDicomDirStudyElem; +typedef std::list ListDicomDirSerieElem; +typedef std::list ListDicomDirImageElem; //----------------------------------------------------------------------------- -/* - * \defgroup gdcmDicomDirElement - * \brief gdcmDicomDirElement represents elements contained in a dicom dir - * +/** + * \ingroup DicomDirElement + * \brief DicomDirElement represents elements contained in a dicom dir + * Class for the chained lists from the file 'Dicts/DicomDir.dic' */ -class GDCM_EXPORT gdcmDicomDirElement +class GDCM_EXPORT DicomDirElement { public: - gdcmDicomDirElement(void); - ~gdcmDicomDirElement(void); + DicomDirElement(); + ~DicomDirElement(); + /** + * \brief canonical Printer + */ void Print(std::ostream &os); - ListDicomDirMetaElem &GetDicomDirMetaElements(void) - {return(DicomDirMetaList);}; - ListDicomDirPatientElem &GetDicomDirPatientElements(void) - {return(DicomDirPatientList);}; - ListDicomDirStudyElem &GetDicomDirStudyElements(void) - {return(DicomDirStudyList);}; - ListDicomDirSerieElem &GetDicomDirSerieElements(void) - {return(DicomDirSerieList);}; - ListDicomDirImageElem &GetDicomDirImageElements(void) - {return(DicomDirImageList);}; + /** + * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the META Elements of a DICOMDIR. + */ + ListDicomDirMetaElem const &GetDicomDirMetaElements() const + { return DicomDirMetaList; }; + + /** + * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the PATIENT Elements of a DICOMDIR. + */ + ListDicomDirPatientElem const &GetDicomDirPatientElements() const + { return DicomDirPatientList; }; + + /** + * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the STUDY Elements of a DICOMDIR. + */ + ListDicomDirStudyElem const &GetDicomDirStudyElements() const + { return DicomDirStudyList; }; + + /** + * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the SERIE Elements of a DICOMDIR. + */ + ListDicomDirSerieElem const &GetDicomDirSerieElements() const + { return DicomDirSerieList; }; + + /** + * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the IMAGE Elements of a DICOMDIR. + */ + ListDicomDirImageElem const &GetDicomDirImageElements() const + { return DicomDirImageList; }; + + /** + * Public method to add an element + */ + bool AddNewEntry(std::string const &type, Element const &elem); private: + /// Elements chained list, related to the MetaElements of DICOMDIR ListDicomDirMetaElem DicomDirMetaList; + /// Elements chained list, related to the PatientElements of DICOMDIR ListDicomDirPatientElem DicomDirPatientList; + /// Elements chained list, related to the StudyElements of DICOMDIR ListDicomDirStudyElem DicomDirStudyList; + /// Elements chained list, related to the SerieElements of DICOMDIR ListDicomDirSerieElem DicomDirSerieList; + /// Elements chained list, related to the ImageElements of DICOMDIR ListDicomDirImageElem DicomDirImageList; }; - +} // end namespace gdcm //----------------------------------------------------------------------------- #endif