2 //-----------------------------------------------------------------------------
3 #ifndef GDCMDOCENTRYSET_H
4 #define GDCMDOCENTRYSET_H
6 #include "gdcmException.h"
7 #include "gdcmDocEntry.h"
9 //-----------------------------------------------------------------------------
11 class GDCM_EXPORT gdcmDocEntrySet
16 gdcmDocEntrySet(int depth = 0);
17 ~gdcmDocEntrySet(void);
19 /// \brief adds any type of entry to the entry set (pure vitual)
20 virtual bool AddEntry(gdcmDocEntry *Entry) = 0; // pure virtual
22 // bool CheckEntryVR(gdcmDocEntry *Entry, std::string vr);
24 /// \brief prints any type of entry to the entry set (pure vitual)
25 virtual void Print (std::ostream & os = std::cout) = 0;// pure virtual
27 /// \brief Gets the depth level of a Dicom Header Entry embedded in a SeQuence
28 inline int GetDepthLevel(void)
29 {return(SQDepthLevel);}
31 /// \brief Sets the depth level of a Dicom Header Entry embedded in a SeQuence
32 inline void SetDepthLevel(int depth)
33 {SQDepthLevel = depth;}
37 // void gdcmDocEntrySet::FindDocEntryLength (gdcmDocEntry *Entry);
39 // DocEntry related utilities
41 /// \brief Build a new Element Value from all the low level arguments.
42 /// Check for existence of dictionary entry, and build
43 /// a default one when absent (pure virtual)
44 virtual gdcmDocEntry *NewDocEntryByNumber(guint16 group,
45 guint16 element)=0; // pure virtual
47 /// \brief Build a new Element Value from all the low level arguments.
48 /// Check for existence of dictionary entry, and build
49 /// a default one when absent (pure virtual)
50 virtual gdcmDocEntry *NewDocEntryByName (std::string Name)=0;// pure virtual
52 /// Gives the depth level of the element set inside SeQuences
60 //-----------------------------------------------------------------------------