X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDicomDirSerie.h;h=97b67cb96f91dce88eec14cee04f27f821565ba9;hb=c67ffef593e7635d8dfa7d3fe63d702e5afafc3e;hp=d6d7400123075119f00fd31800a925ddecd2b45c;hpb=ab0aa4fa11e3ac7ec236d1aceb6f0cf89fe83eae;p=gdcm.git diff --git a/src/gdcmDicomDirSerie.h b/src/gdcmDicomDirSerie.h index d6d74001..97b67cb9 100644 --- a/src/gdcmDicomDirSerie.h +++ b/src/gdcmDicomDirSerie.h @@ -3,12 +3,12 @@ Program: gdcm Module: $RCSfile: gdcmDicomDirSerie.h,v $ Language: C++ - Date: $Date: 2004/09/23 10:47:10 $ - Version: $Revision: 1.8 $ + Date: $Date: 2005/01/25 11:11:58 $ + Version: $Revision: 1.24 $ 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. + 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 @@ -20,45 +20,45 @@ #define GDCMDICOMDIRSERIE_H #include "gdcmDicomDirObject.h" -#include "gdcmDicomDirImage.h" +namespace gdcm +{ +class DicomDirImage; //----------------------------------------------------------------------------- -typedef std::list ListDicomDirImage; +typedef std::list ListDicomDirImage; //----------------------------------------------------------------------------- -class GDCM_EXPORT gdcmDicomDirSerie : public gdcmDicomDirObject +/** + * \brief describes a SERIE within a within a STUDY + * (DicomDirStudy) of a given DICOMDIR (DicomDir) + */ +class GDCM_EXPORT DicomDirSerie : public DicomDirObject { public: - gdcmDicomDirSerie(gdcmSQItem *s, TagDocEntryHT *ptagHT); - gdcmDicomDirSerie(TagDocEntryHT *ptagHT); + DicomDirSerie(bool empty=false); + ~DicomDirSerie(); - ~gdcmDicomDirSerie(); + void Print( std::ostream &os = std::cout, std::string const & indent = "" ); + void WriteContent( std::ofstream *fp, FileType t ); + + // should avoid exposing internal mechanism + DicomDirImage *GetFirstImage(); + DicomDirImage *GetNextImage(); + DicomDirImage *GetLastImage(); + + /// adds the passed IMAGE to the IMAGE chained List for this SERIE. + void AddImage(DicomDirImage *obj) { Images.push_back(obj); }; + DicomDirImage *NewImage(); - virtual void Print(std::ostream &os = std::cout); - virtual void Write(FILE *fp, FileType t); -/** - * \ingroup gdcmDicomDirSerie - * \brief returns the IMAGE chained List for this SERIE. - */ - ListDicomDirImage &GetDicomDirImages() { return images; }; -/** - * \ingroup gdcmDicomDirSerie - * \brief adds the passed IMAGE to the IMAGE chained List for this SERIE. - */ - void AddDicomDirImage(gdcmDicomDirImage *obj) { images.push_back(obj); }; + void ClearImage(); -/** - * \ingroup gdcmDicomDirSerie - * \brief TODO - */ - gdcmDicomDirImage* NewImage(); - private: -/** -* \brief chained list of DicomDirImages -*/ - ListDicomDirImage images; -}; + ///chained list of DicomDirImages (to be exploited recursively) + ListDicomDirImage Images; + /// iterator on the DicomDirImages of the current DicomDirSerie + ListDicomDirImage::iterator ItImage; +}; +} // end namespace gdcm //----------------------------------------------------------------------------- #endif