]> Creatis software - gdcm.git/blob - src/gdcmObject.h
b84575468b045d296d987121a13dde3157d071cd
[gdcm.git] / src / gdcmObject.h
1 // gdcmObject.h
2 //-----------------------------------------------------------------------------
3 #ifndef GDCMOBJECT_H
4 #define GDCMOBJECT_H
5
6 #include <string>
7 #include <list>
8 #include "gdcmCommon.h"
9 #include "gdcmHeaderEntry.h"
10 #include "gdcmParser.h"
11
12 //-----------------------------------------------------------------------------
13 class gdcmObject;
14 typedef std::list<gdcmObject *> ListContent;
15
16 //-----------------------------------------------------------------------------
17 class GDCM_EXPORT gdcmObject 
18 {
19 public:
20    gdcmObject(ListTag::iterator begin,ListTag::iterator end);
21    ~gdcmObject(void);
22
23    void SetPrintLevel(int level) { printLevel = level; };
24    virtual void Print(std::ostream &os = std::cout);
25
26    std::string GetEntryByNumber(guint16 group, guint16 element);
27    std::string GetEntryByName(TagName name);
28
29    TagHeaderEntryHT GetEntry(void);
30    ListTag GetListEntry(void);
31
32 protected:
33    ListTag::iterator beginObj;
34    ListTag::iterator endObj;
35
36    int printLevel;
37
38 private:
39 };
40
41 //-----------------------------------------------------------------------------
42 #endif