Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

gdcmDicomDirSerie.h

Go to the documentation of this file.
00001 /*=========================================================================
00002                                                                                 
00003   Program:   gdcm
00004   Module:    $RCSfile: gdcmDicomDirSerie.h,v $
00005   Language:  C++
00006   Date:      $Date: 2005/11/29 12:48:46 $
00007   Version:   $Revision: 1.32 $
00008                                                                                 
00009   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
00010   l'Image). All rights reserved. See Doc/License.txt or
00011   http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
00012                                                                                 
00013      This software is distributed WITHOUT ANY WARRANTY; without even
00014      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00015      PURPOSE.  See the above copyright notices for more information.
00016                                                                                 
00017 =========================================================================*/
00018 
00019 #ifndef GDCMDICOMDIRSERIE_H
00020 #define GDCMDICOMDIRSERIE_H
00021 
00022 #include "gdcmDicomDirObject.h"
00023 
00024 namespace gdcm 
00025 {
00026 class DicomDirImage;
00027 //-----------------------------------------------------------------------------
00028 typedef std::list<DicomDirImage *> ListDicomDirImage;
00029 
00030 //-----------------------------------------------------------------------------
00035 class GDCM_EXPORT DicomDirSerie : public DicomDirObject 
00036 {
00037    gdcmTypeMacro(DicomDirSerie);
00038 
00039 public:
00041    static DicomDirSerie *New(bool empty=false) {return new DicomDirSerie(empty);}
00042 
00043    void Print( std::ostream &os = std::cout, std::string const &indent = "" );
00044    void WriteContent( std::ofstream *fp, FileType t );
00045 
00046    // Image methods
00047    DicomDirImage *NewImage();
00049    void AddImage(DicomDirImage *obj) { Images.push_back(obj); }
00050    void ClearImage();
00051 
00052    DicomDirImage *GetFirstImage();
00053    DicomDirImage *GetNextImage();
00054 
00055    virtual void Copy(DocEntrySet *set);
00056 
00057 protected:
00058    DicomDirSerie(bool empty=false); 
00059    ~DicomDirSerie();
00060 
00061 private:
00063    ListDicomDirImage Images;
00065    ListDicomDirImage::iterator ItImage;
00066 
00067 /*
00068 // for future use :
00069 
00071    ListDicomDirOverlay Overlays;
00073    ListDicomDirOverlay::iterator ItOverlay;
00074 
00076    ListDicomDirModalityLut ModalityLuts;
00078    ListDicomDirModalityLut::iterator ItModalityLut;
00079 
00081    ListDicomDirModalityLut ModalityLuts;
00083    ListDicomDirModalityLut::iterator ItModalityLuts;
00084 
00086    ListDicomDirCurve Curves;
00088    ListDicomDirCurve::iterator ItCurves;
00089 
00091    ListDicomDirStoredPrint StoredPrints;
00093    ListDicomDirStoredPrint::iterator ItStoredPrints;
00094 
00096    ListDicomDirRtDose RtDoses;
00098    ListDicomDirRtDose::iterator ItRtDoses;
00099 
00101    ListDicomDirRtStructureSet RtStructureSets;
00103    ListDicomDirRtStructureSet::iterator ItRtStructureSets;
00104 
00106    ListDicomDirRtPlan RtPlans;
00108    ListDicomDirPlan::iterator ItRtPlans;
00109 
00111    ListDicomDirRtTreatRecord RtTreatRecords;
00113    ListDicomDirRtTreatRecord::iterator ItRtTreatRecords;
00114 
00116    ListDicomDirPresentation Presentations;
00118    ListDicomDirPresentation::iterator ItPresentations;
00119 
00121    ListDicomDirWaveForm WaveForms;
00123    ListDicomDirWaveForm::iterator ItWaveForms;
00124 
00126    ListDicomDirSrDocument SrDocuments;
00128    ListDicomDirSrDocument::iterator ItSrDocuments;
00129 
00131    ListDicomDirKeyObjectDoc KeyObjectDocs;
00133    ListDicomDirKeyObjectDoc::iterator ItKeyObjectDocs;
00134 
00136    ListDicomDirSpectroscopy Spectroscopys;
00138    ListDicomDirSpectroscopy::iterator ItSpectroscopys;
00139 
00141    ListDicomDirRawData RawDatas;
00143    ListDicomDirRawData::iterator ItRawDatas;
00144 
00146    ListDicomDirRegistration Registrations;
00148    ListDicomDirRegistration::iterator ItRegistrations;
00149 
00151    ListDicomDirFiducial Fiducials;
00153    ListDicomDirFiducial::iterator ItFiducials;
00154 */
00155 
00156 };
00157 } // end namespace gdcm
00158 //-----------------------------------------------------------------------------
00159 #endif

Generated on Fri Jan 20 10:14:24 2006 for gdcm by  doxygen 1.4.4