3 #ifndef GDCMDICTENTRY_H
4 #define GDCMDICTENTRY_H
6 #include "gdcmCommon.h"
9 * the gdcmDictEntry in an element contained by the gdcmDict.
11 * - the key referenced by the DICOM norm or the constructor (for private keys)
12 * - the corresponding name in english (it's equivalent to a label)
16 class GDCM_EXPORT gdcmDictEntry {
18 // FIXME : were are the group and element used except from building up
19 // a TagKey. If the answer is nowhere then there is no need
20 // to store the group and element independently.
21 guint16 group; // e.g. 0x0010
22 guint16 element; // e.g. 0x0103
23 std::string vr; // Value Representation i.e. some clue about the nature
24 // of the data represented e.g. "FD" short for
25 // "Floating Point Double"
26 // CLEANME: find the official dicom name for this field !
27 std::string fourth; // Fourth field containing some semantics.
29 std::string name; // e.g. "Patient_Name"
30 TagKey key; // Redundant with (group, element) but we add it
31 // on efficiency purposes.
33 // DCMTK has many fields for handling a DictEntry (see below). What are the
34 // relevant ones for gdcmlib ?
35 // struct DBI_SimpleEntry {
37 // Uint16 upperElement;
39 // const char* tagName;
42 // const char* standardVersion;
43 // DcmDictRangeRestriction groupRestriction;
44 // DcmDictRangeRestriction elementRestriction;
47 gdcmDictEntry(guint16 group,
49 std::string vr = "Unknown",
50 std::string fourth = "Unknown",
51 std::string name = "Unknown");
53 // fabrique une 'clé' par concaténation du numGroupe et du numElement
55 // Pourquoi fait-elle partie de DictEntry?
56 // elle pourrait etre utilisée egalement ailleurs, hors tout Dictionnaire
60 static TagKey TranslateToKey(guint16 group, guint16 element);
62 guint16 GetGroup(void) {return group; };
63 guint16 GetElement(void){return element;};
64 std::string GetVR(void) {return vr; };
65 void SetVR(std::string);
66 void SetKey(std::string k){ key = k; };
67 bool IsVrUnknown(void);
68 std::string GetFourth(void) {return fourth;};
69 std::string GetName(void) {return name; };
70 std::string GetKey(void) {return key; };