gdcmDicts.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __gdcmDicts_h
00016 #define __gdcmDicts_h
00017
00018 #include "gdcmDict.h"
00019 #include "gdcmCSAHeaderDict.h"
00020
00021 #include <string>
00022
00023 namespace gdcm
00024 {
00029 class GDCM_EXPORT Dicts
00030 {
00031 friend std::ostream& operator<<(std::ostream &_os, const Dicts &d);
00032 public:
00033 Dicts();
00034 ~Dicts();
00035
00039
00040 const DictEntry &GetDictEntry(const Tag& tag, const char *owner = NULL) const;
00041
00042
00043
00044
00045
00046
00047 const Dict &GetPublicDict() const;
00048
00049 const PrivateDict &GetPrivateDict() const;
00050
00051 const CSAHeaderDict &GetCSAHeaderDict() const;
00052
00053 bool IsEmpty() const { return GetPublicDict().IsEmpty(); }
00054
00055 protected:
00056 typedef enum {
00057 PHILIPS,
00058 GEMS,
00059 SIEMENS
00060
00061 } ConstructorType;
00062 static const char *GetConstructorString(ConstructorType type);
00063
00064 friend class Global;
00065 void LoadDefaults();
00066
00067 private:
00068
00069 Dict PublicDict;
00070
00071
00072 PrivateDict ShadowDict;
00073
00074 CSAHeaderDict CSADict;
00075 Dicts &operator=(const Dicts &_val);
00076 Dicts(const Dicts &_val);
00077 };
00078
00079 inline std::ostream& operator<<(std::ostream &os, const Dicts &d)
00080 {
00081 (void)d;
00082 return os;
00083 }
00084
00085
00086 }
00087
00088 #endif //__gdcmDicts_h