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);
24 void SetPrintLevel(int level) { printLevel = level; };
25 virtual void Print(std::ostream &os = std::cout);
27 std::string GetEntryByNumber(guint16 group, guint16 element);
28 std::string GetEntryByName(TagName name);
29 bool SetEntryByNumber(std::string val,guint16 group,guint16 element);
31 TagHeaderEntryHT GetEntry(void);
32 ListTag GetListEntry(void);
34 void ResetBoundaries(int flag);
37 * \brief returns an iterator on the first Header Entry (i.e Dicom Element),
38 * inside the DICOMDIR chained list,
39 * related to this 'Object'
42 ListTag::iterator debut(void)
46 * \brief returns an iterator on the last Header Entry (i.e Dicom Element),
47 * inside the DICOMDIR chained list,
48 * related to this 'Object'
51 ListTag::iterator fin (void)
56 * \brief Sets the iterator on the 'new' last Header Entry (i.e Dicom Element),
57 * inside the DICOMDIR chained list,
58 * related to this 'Object'
59 * \warning : NOT end user intended function
60 * \todo find a trick to make this function useless.
63 ListTag::iterator SetEndObj(ListTag::iterator newEnd)
68 void FillObject(std::list<gdcmElement> elemList);
71 * \brief iterator on the first Header Entry (i.e Dicom Element),
72 * inside the DICOMDIR chained list,
73 * related to this 'Object'
75 ListTag::iterator beginObj;
77 * \brief iterator on the last Header Entry (i.e Dicom Element),
78 * inside the DICOMDIR chained list,
79 * related to this 'Object'
81 ListTag::iterator endObj;
83 * \brief pointer to the HTable of the gdcmParser,
84 * (because we don't know it within any gdcmObject)
86 TagHeaderEntryHT *ptagHT;
88 * \brief pointer to the Chained List of the gdcmParser,
89 * (because we don't know it within any gdcmObject)
91 ListTag *plistEntries;
97 /// used to pass variables to FillObject function
98 /// Work as 'global' variables
99 std::list<gdcmHeaderEntry *>::iterator debInsertion, finInsertion, i,j;
105 //-----------------------------------------------------------------------------