2 //-----------------------------------------------------------------------------
8 #include "gdcmCommon.h"
9 #include "gdcmHeaderEntry.h"
10 #include "gdcmParser.h"
11 #include "gdcmDicomDirElement.h"
12 //-----------------------------------------------------------------------------
14 typedef std::list<gdcmObject *> ListContent;
16 //-----------------------------------------------------------------------------
17 class GDCM_EXPORT gdcmObject
22 * \brief Sets the print level for the Dicom Header
23 * \note 0 for Light Print; 1 for 'medium' Print, 2 for Heavy
25 void SetPrintLevel(int level)
26 { printLevel = level; };
27 virtual void Print(std::ostream &os = std::cout);
29 std::string GetEntryByNumber(guint16 group, guint16 element);
30 std::string GetEntryByName(TagName name);
31 bool SetEntryByNumber(std::string val,guint16 group,guint16 element);
33 TagHeaderEntryHT GetEntry(void);
34 ListTag GetListEntry(void);
36 void ResetBoundaries(int flag);
39 * \brief returns an iterator on the first Header Entry (i.e Dicom Element),
40 * inside the DICOMDIR chained list,
41 * related to this 'Object'
44 ListTag::iterator debut(void)
48 * \brief returns an iterator on the last Header Entry (i.e Dicom Element),
49 * inside the DICOMDIR chained list,
50 * related to this 'Object'
53 ListTag::iterator fin (void)
57 // constructor and destructor are protected to avoid end user to instanciate this class.
58 gdcmObject(ListTag::iterator begin,ListTag::iterator end,
59 TagHeaderEntryHT *ptagHT, ListTag *plistEntries);
63 void FillObject(std::list<gdcmElement> elemList);
66 * \brief iterator on the first Header Entry (i.e Dicom Element),
67 * inside the DICOMDIR chained list,
68 * related to this 'Object'
70 ListTag::iterator beginObj;
72 * \brief iterator on the last Header Entry (i.e Dicom Element),
73 * inside the DICOMDIR chained list,
74 * related to this 'Object'
76 ListTag::iterator endObj;
78 * \brief pointer to the HTable of the gdcmParser,
79 * (because we don't know it within any gdcmObject)
81 TagHeaderEntryHT *ptagHT;
83 * \brief pointer to the Chained List of the gdcmParser,
84 * (because we don't know it within any gdcmObject)
86 ListTag *plistEntries;
92 /// used to pass variables to FillObject function
93 /// Work as 'global' variables
94 std::list<gdcmHeaderEntry *>::iterator debInsertion, finInsertion, i,j;
100 //-----------------------------------------------------------------------------