X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDicomDirElement.h;h=ffb8ba0dc1037f397b8ba3a33ea745ccd34dba11;hb=038511d7b58612fbd10dfac36683b23e17560e42;hp=551ca61e80aea10979c3bff4b36c010a18a3f02f;hpb=1d69b92978803204089d270599133917d944c651;p=gdcm.git diff --git a/src/gdcmDicomDirElement.h b/src/gdcmDicomDirElement.h index 551ca61e..ffb8ba0d 100644 --- a/src/gdcmDicomDirElement.h +++ b/src/gdcmDicomDirElement.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmDicomDirElement.h,v $ Language: C++ - Date: $Date: 2004/10/12 04:35:44 $ - Version: $Revision: 1.12 $ + Date: $Date: 2005/09/02 07:10:03 $ + Version: $Revision: 1.31 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -27,27 +27,43 @@ namespace gdcm { //----------------------------------------------------------------------------- -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; -} Element; +typedef std::list ListDicomDirElem; typedef std::list ListDicomDirMetaElem; typedef std::list ListDicomDirPatientElem; typedef std::list ListDicomDirStudyElem; +typedef std::list ListDicomDirVisitElem; typedef std::list ListDicomDirSerieElem; typedef std::list ListDicomDirImageElem; +// For future use (Full DICOMDIR) + +/* +typedef std::list ListDicomDirResultElem; +typedef std::list ListDicomDirStudyComponentElem; + +typedef std::list ListDicomDirOverlayElem; +typedef std::list ListDicomDirModalityLutElem; +typedef std::list ListDicomDirModalityLutElem; +typedef std::list ListDicomDirCurveElem; +typedef std::list ListDicomDirStoredPrintElem; +typedef std::list ListDicomDirRtDoseElem; +typedef std::list ListDicomDirRtStructureSetElem; +typedef std::list ListDicomDirRtPlanElem; +typedef std::list ListDicomDirRtTreatRecordElem; +typedef std::list ListDicomDirPresentationElem; +typedef std::list ListDicomDirSrDocumentElem; +typedef std::list ListDicomDirKeyObjectDocElem; +typedef std::list ListDicomDirSpectroscopyElem; +typedef std::list ListDicomDirRawDataElem; +typedef std::list ListDicomDirRegistrationElem; +typedef std::list ListDicomDirFiducialElem; +*/ + //----------------------------------------------------------------------------- /** - * \ingroup DicomDirElement - * \brief DicomDirElement represents elements contained in a dicom dir - * Class for the chained lists from the file 'Dicts/DicomDir.dic' + * \brief Represents elements contained in a DicomDir class + * for the chained lists from the file 'Dicts/DicomDir.dic' */ class GDCM_EXPORT DicomDirElement { @@ -57,49 +73,56 @@ public: /** * \brief canonical Printer - * \sa SetPrintLevel */ void Print(std::ostream &os); /** - * \ingroup DicomDirElement * \brief returns a reference to the chained List * related to the META Elements of a DICOMDIR. */ - ListDicomDirMetaElem &GetDicomDirMetaElements() - { return DicomDirMetaList; }; + 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 &GetDicomDirPatientElements() - { return DicomDirPatientList; }; + 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 &GetDicomDirStudyElements() - { return DicomDirStudyList; }; + ListDicomDirStudyElem const &GetDicomDirStudyElements() const + { return DicomDirStudyList; } /** - * \ingroup DicomDirElement + * \brief returns a reference to the chained List + * related to the VISIT Elements of a DICOMDIR. + */ + ListDicomDirVisitElem const &GetDicomDirVisitElements() const + { return DicomDirVisitList; } + /** * \brief returns a reference to the chained List * related to the SERIE Elements of a DICOMDIR. */ - ListDicomDirSerieElem &GetDicomDirSerieElements() - { return DicomDirSerieList; }; + 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 &GetDicomDirImageElements() - { return DicomDirImageList; }; + ListDicomDirImageElem const &GetDicomDirImageElements() const + { return DicomDirImageList; } + + // Public method to add an element + bool AddEntry(DicomDirType type, Element const &elem); + + // Only one instance of ddElem + void AddDicomDirElement(DicomDirType type, + uint16_t group, uint16_t elem); private: /// Elements chained list, related to the MetaElements of DICOMDIR @@ -108,10 +131,11 @@ private: ListDicomDirPatientElem DicomDirPatientList; /// Elements chained list, related to the StudyElements of DICOMDIR ListDicomDirStudyElem DicomDirStudyList; + /// Elements chained list, related to the VisitElements of DICOMDIR + ListDicomDirVisitElem DicomDirVisitList; /// 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