]> Creatis software - gdcm.git/blob - src/gdcmDicomDirPatient.h
Allow to create ex nihilo DICOMDIR
[gdcm.git] / src / gdcmDicomDirPatient.h
1 // gdcmDicomDirPatient.h
2 //-----------------------------------------------------------------------------
3 #ifndef GDCMPATIENT_H
4 #define GDCMPATIENT_H
5
6 #include "gdcmObject.h"
7 #include "gdcmDicomDirStudy.h"
8
9 //-----------------------------------------------------------------------------
10 typedef std::list<gdcmDicomDirStudy *> ListDicomDirStudy;
11
12 //-----------------------------------------------------------------------------
13 class GDCM_EXPORT gdcmDicomDirPatient : public gdcmObject 
14 {
15 public:
16    gdcmDicomDirPatient(ListTag::iterator begin,ListTag::iterator end,
17               TagHeaderEntryHT *ptagHT, ListTag *plistEntries); 
18    ~gdcmDicomDirPatient(void);
19
20    virtual void Print(std::ostream &os = std::cout);
21 /**
22  * \ingroup gdcmDicomDirPatient
23  * \brief   returns the STUDY chained List for this PATIENT.
24  */
25    inline ListDicomDirStudy &GetDicomDirStudies() 
26       {return studies;};
27 /**
28  * \ingroup gdcmDicomDirPatient
29  * \brief   adds the passed STUDY to the STUDY chained List for this PATIENT.
30  */      
31    inline void AddDicomDirStudy(gdcmDicomDirStudy *obj) 
32       {studies.push_back(obj);};
33 /**
34  * \ingroup gdcmDicomDirPatient
35  * \brief   TODO
36  */ 
37    gdcmDicomDirStudy* NewStudy(void); 
38          
39 private:
40
41 /**
42 * \brief chained list of DicomDirStudy
43 */ 
44    ListDicomDirStudy studies;
45 };
46
47 //-----------------------------------------------------------------------------
48 #endif