X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDicomDirElement.h;h=4540ce16d26abec5aae39ac882d0231345a16f78;hb=4362b8f0545aa491dcf5295ad96d910aac169462;hp=6ab62e9dff482cbb450c41baff798dfbe187bd4b;hpb=28d134e7a6dcc11f3703bb8ec85334636f57f56e;p=gdcm.git diff --git a/src/gdcmDicomDirElement.h b/src/gdcmDicomDirElement.h index 6ab62e9d..4540ce16 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/09 03:21:55 $ - Version: $Revision: 1.11 $ + Date: $Date: 2005/02/11 15:22:18 $ + Version: $Revision: 1.28 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -23,94 +23,112 @@ #include -//----------------------------------------------------------------------------- -typedef struct +namespace gdcm { - /// 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; + +//----------------------------------------------------------------------------- + +typedef std::list ListDicomDirElem; +typedef std::list ListDicomDirMetaElem; +typedef std::list ListDicomDirPatientElem; +typedef std::list ListDicomDirStudyElem; +typedef std::list ListDicomDirSerieElem; +typedef std::list ListDicomDirImageElem; + +// For future use (Full DICOMDIR) +/* +typedef std::list ListDicomDirVisit; +typedef std::list ListDicomDirResult; +typedef std::list ListDicomDirStudyComponent; + +typedef std::list ListDicomDirOverlay; +typedef std::list ListDicomDirModalityLut; +typedef std::list ListDicomDirModalityLut; +typedef std::list ListDicomDirCurve; +typedef std::list ListDicomDirStoredPrint; +typedef std::list ListDicomDirRtDose; +typedef std::list ListDicomDirRtStructureSet; +typedef std::list ListDicomDirRtPlan; +typedef std::list ListDicomDirRtTreatRecord; +typedef std::list ListDicomDirPresentation; +typedef std::list ListDicomDirSrDocument; +typedef std::list ListDicomDirKeyObjectDoc; +typedef std::list ListDicomDirSpectroscopy; +typedef std::list ListDicomDirRawData; +typedef std::list ListDicomDirRegistration; +typedef std::list ListDicomDirFiducial; +*/ //----------------------------------------------------------------------------- /** - * \ingroup gdcmDicomDirElement - * \brief gdcmDicomDirElement 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 gdcmDicomDirElement +class GDCM_EXPORT DicomDirElement { public: - gdcmDicomDirElement(); - ~gdcmDicomDirElement(); + DicomDirElement(); + ~DicomDirElement(); /** * \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() + ListDicomDirMetaElem const &GetDicomDirMetaElements() const { return DicomDirMetaList; }; /** - * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the PATIENT Elements of a DICOMDIR. */ - ListDicomDirPatientElem &GetDicomDirPatientElements() + ListDicomDirPatientElem const &GetDicomDirPatientElements() const { return DicomDirPatientList; }; /** - * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the STUDY Elements of a DICOMDIR. */ - ListDicomDirStudyElem &GetDicomDirStudyElements() + ListDicomDirStudyElem const &GetDicomDirStudyElements() const { return DicomDirStudyList; }; /** - * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the SERIE Elements of a DICOMDIR. */ - ListDicomDirSerieElem &GetDicomDirSerieElements() + ListDicomDirSerieElem const &GetDicomDirSerieElements() const { return DicomDirSerieList; }; /** - * \ingroup gdcmDicomDirElement * \brief returns a reference to the chained List * related to the IMAGE Elements of a DICOMDIR. */ - ListDicomDirImageElem &GetDicomDirImageElements() + 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: - /// gdcmElements chained list, related to the MetaElements of DICOMDIR + /// Elements chained list, related to the MetaElements of DICOMDIR ListDicomDirMetaElem DicomDirMetaList; - /// gdcmElements chained list, related to the PatientElements of DICOMDIR + /// Elements chained list, related to the PatientElements of DICOMDIR ListDicomDirPatientElem DicomDirPatientList; - /// gdcmElements chained list, related to the StudyElements of DICOMDIR + /// Elements chained list, related to the StudyElements of DICOMDIR ListDicomDirStudyElem DicomDirStudyList; - /// gdcmElements chained list, related to the SerieElements of DICOMDIR + /// Elements chained list, related to the SerieElements of DICOMDIR ListDicomDirSerieElem DicomDirSerieList; - /// gdcmElements chained list, related to the ImageElements of DICOMDIR - + /// Elements chained list, related to the ImageElements of DICOMDIR ListDicomDirImageElem DicomDirImageList; }; - +} // end namespace gdcm //----------------------------------------------------------------------------- #endif