GDCM  2.4.5
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 
22 namespace gdcm
23 {
29 {
30  friend std::ostream& operator<<(std::ostream &_os, const Dicts &d);
31 public:
32  Dicts();
33  ~Dicts();
34 
38  // DataSet::GetPrivateCreator
40  const DictEntry &GetDictEntry(const Tag& tag, const char *owner = NULL) const;
41 
42  const DictEntry &GetDictEntry(const PrivateTag& tag) const;
43 
44  //enum PublicTypes {
45  // DICOMV3_DICT,
46  // ACRNEMA_DICT,
47  // NIH_DICT
48  //};
49  const Dict &GetPublicDict() const;
50 
51  const PrivateDict &GetPrivateDict() const;
52  PrivateDict &GetPrivateDict();
53 
54  const CSAHeaderDict &GetCSAHeaderDict() const;
55 
56  bool IsEmpty() const { return GetPublicDict().IsEmpty(); }
57 
58 protected:
59  typedef enum {
62  SIEMENS
63  // ...
64  } ConstructorType;
65  static const char *GetConstructorString(ConstructorType type);
66 
67  friend class Global;
68  void LoadDefaults();
69 
70 private:
71  // Public dict:
72  Dict PublicDict;
73 
74  // Private Dicts:
75  PrivateDict ShadowDict;
76 
77  CSAHeaderDict CSADict;
78  Dicts &operator=(const Dicts &_val); // purposely not implemented
79  Dicts(const Dicts &_val); // purposely not implemented
80 };
81 //-----------------------------------------------------------------------------
82 inline 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 Private DICOM Data Element (Attribute) Tag (Group, Element, Owner) ...
Definition: gdcmPrivateTag.h:38
Global.
Definition: gdcmGlobal.h:49
#define GDCM_EXPORT
Definition: gdcmWin32.h:34
std::ostream & operator<<(std::ostream &os, const Directory &d)
Definition: gdcmDirectory.h:88
Class to represent an Entry in the Dict Does not really exist within the DICOM definition, just a way to minimize storage and have a mapping from gdcm::Tag to the needed information.
Definition: gdcmDictEntry.h:36
bool IsEmpty() const
Definition: gdcmDicts.h:56
Class to represent a map of DictEntry.
Definition: gdcmDict.h:44
Class to manipulate the sum of knowledge (all the dict user load)
Definition: gdcmDicts.h:28
Definition: gdcmDicts.h:61
Private Dict.
Definition: gdcmDict.h:216
Class to represent a DICOM Data Element (Attribute) Tag (Group, Element). Basically an uint32_t which...
Definition: gdcmTag.h:38
Definition: gdcmDicts.h:60
Class to represent a map of CSAHeaderDictEntry.
Definition: gdcmCSAHeaderDict.h:34
Definition: gdcmASN1.h:20
bool IsEmpty() const
Definition: gdcmDict.h:61

Generated on Fri Sep 25 2015 17:58:22 for GDCM by doxygen 1.8.9.1
SourceForge.net Logo