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
20 gdcmObject(ListTag::iterator begin,ListTag::iterator end,
21 TagHeaderEntryHT *ptagHT, ListTag *plistEntries);
26 * \brief Sets the print level for the Dicom Header
27 * \note 0 for Light Print; 1 for 'medium' Print, 2 for Heavy
29 void SetPrintLevel(int level)
30 { printLevel = level; };
31 virtual void Print(std::ostream &os = std::cout);
33 std::string GetEntryByNumber(guint16 group, guint16 element);
34 std::string GetEntryByName(TagName name);
35 bool SetEntryByNumber(std::string val,guint16 group,guint16 element);
37 TagHeaderEntryHT GetEntry(void);
38 ListTag GetListEntry(void);
40 void ResetBoundaries(int flag);
43 * \brief returns an iterator on the first Header Entry (i.e Dicom Element),
44 * inside the DICOMDIR chained list,
45 * related to this 'Object'
48 ListTag::iterator debut(void)
52 * \brief returns an iterator on the last Header Entry (i.e Dicom Element),
53 * inside the DICOMDIR chained list,
54 * related to this 'Object'
57 ListTag::iterator fin (void)
62 void FillObject(std::list<gdcmElement> elemList);
65 * \brief iterator on the first Header Entry (i.e Dicom Element),
66 * inside the DICOMDIR chained list,
67 * related to this 'Object'
69 ListTag::iterator beginObj;
71 * \brief iterator on the last Header Entry (i.e Dicom Element),
72 * inside the DICOMDIR chained list,
73 * related to this 'Object'
75 ListTag::iterator endObj;
77 * \brief pointer to the HTable of the gdcmParser,
78 * (because we don't know it within any gdcmObject)
80 TagHeaderEntryHT *ptagHT;
82 * \brief pointer to the Chained List of the gdcmParser,
83 * (because we don't know it within any gdcmObject)
85 ListTag *plistEntries;
91 /// used to pass variables to FillObject function
92 /// Work as 'global' variables
93 std::list<gdcmHeaderEntry *>::iterator debInsertion, finInsertion, i,j;
99 //-----------------------------------------------------------------------------