GDCM 3.0.24
gdcmDicts.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: GDCM (Grassroots DICOM). A DICOM library
4
5 Copyright (c) 2006-2011 Mathieu Malaterre
6 All rights reserved.
7 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
8
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the above copyright notice for more information.
12
13=========================================================================*/
14#ifndef GDCMDICTS_H
15#define GDCMDICTS_H
16
17#include "gdcmDict.h"
18#include "gdcmCSAHeaderDict.h"
19
20#include <string>
21
22namespace gdcm
23{
29{
30 friend std::ostream& operator<<(std::ostream &_os, const Dicts &d);
31public:
34 Dicts &operator=(const Dicts &_val) = delete;
35 Dicts(const Dicts &_val) = delete;
36
40 // DataSet::GetPrivateCreator
42 const DictEntry &GetDictEntry(const Tag& tag, const char *owner = nullptr) const;
43
44 const DictEntry &GetDictEntry(const PrivateTag& tag) const;
45
46 //enum PublicTypes {
47 // DICOMV3_DICT,
48 // ACRNEMA_DICT,
49 // NIH_DICT
50 //};
51 const Dict &GetPublicDict() const;
52
55
57
58 bool IsEmpty() const { return GetPublicDict().IsEmpty(); }
59
60protected:
61 typedef enum {
64 SIEMENS
65 // ...
66 } ConstructorType;
67 static const char *GetConstructorString(ConstructorType type);
68
69 friend class Global;
71
72private:
73 // Public dict:
74 Dict PublicDict;
75
76 // Private Dicts:
77 PrivateDict ShadowDict;
78
79 CSAHeaderDict CSADict;
80};
81//-----------------------------------------------------------------------------
82inline std::ostream& operator<<(std::ostream &os, const Dicts &d)
83{
84 (void)d;
85 return os;
86}
87
88
89} // end namespace gdcm
90
91#endif //GDCMDICTS_H
Class to represent a map of CSAHeaderDictEntry.
Definition gdcmCSAHeaderDict.h:35
Class to represent an Entry in the Dict.
Definition gdcmDictEntry.h:37
Class to represent a map of DictEntry.
Definition gdcmDict.h:45
Class to manipulate the sum of knowledge (all the dict user load)
Definition gdcmDicts.h:29
void LoadDefaults()
const CSAHeaderDict & GetCSAHeaderDict() const
PrivateDict & GetPrivateDict()
const DictEntry & GetDictEntry(const Tag &tag, const char *owner=nullptr) const
THREAD SAFE.
Dicts(const Dicts &_val)=delete
const Dict & GetPublicDict() const
const DictEntry & GetDictEntry(const PrivateTag &tag) const
ConstructorType
Definition gdcmDicts.h:61
@ PHILIPS
Definition gdcmDicts.h:62
@ GEMS
Definition gdcmDicts.h:63
bool IsEmpty() const
Definition gdcmDicts.h:58
Dicts & operator=(const Dicts &_val)=delete
const PrivateDict & GetPrivateDict() const
static const char * GetConstructorString(ConstructorType type)
Global.
Definition gdcmGlobal.h:50
Private Dict.
Definition gdcmDict.h:217
Class to represent a Private DICOM Data Element (Attribute) Tag (Group, Element, Owner)
Definition gdcmPrivateTag.h:39
Class to represent a DICOM Data Element (Attribute) Tag (Group, Element).
Definition gdcmTag.h:39
#define GDCM_EXPORT
Definition gdcmWin32.h:34
Definition gdcmASN1.h:21
std::ostream & operator<<(std::ostream &os, const Directory &d)
Definition gdcmDirectory.h:88