]> Creatis software - gdcm.git/blobdiff - src/gdcmDictEntry.h
* CMake-ification of gdcm, we have now two build system
[gdcm.git] / src / gdcmDictEntry.h
index ecbc0290a47a555fca5af5a7714edf8047c9c2e7..fc3817a61eb617dc30fd7f690b5bdbeecdb03d84 100644 (file)
@@ -7,16 +7,20 @@
 
 class GDCM_EXPORT gdcmDictEntry {
 private:
-       guint16 group;    // e.g. 0x0010
-       guint16 element;  // e.g. 0x0103
-       string  vr;       // Value Representation i.e. some clue about the nature
-                         // of the data represented e.g. "FD" short for
-                         // "Floating Point Double"
+   // FIXME : were are the group and element used except from building up
+   //         a TagKey. If the answer is nowhere then there is no need
+   //         to store the group and element independently.
+   guint16 group;       // e.g. 0x0010
+   guint16 element;     // e.g. 0x0103
+   std::string  vr;     // Value Representation i.e. some clue about the nature
+                       // of the data represented e.g. "FD" short for
+                       // "Floating Point Double"
        // CLEANME: find the official dicom name for this field !
-       string  fourth;   // Fourth field containing some semantics.
-       string  name;     // e.g. "Patient_Name"
-       TagKey  key;      // Redundant with (group, element) but we add it
-                         // on efficiency purposes.
+   std::string  fourth; // Fourth field containing some semantics.
+                        //(Group Name abbr.)
+   std::string  name;   // e.g. "Patient_Name"
+   TagKey  key;         // Redundant with (group, element) but we add it
+                        // on efficiency purposes.
        // DCMTK has many fields for handling a DictEntry (see below). What are the
        // relevant ones for gdcmlib ?
        //      struct DBI_SimpleEntry {
@@ -31,23 +35,30 @@ private:
        //         DcmDictRangeRestriction elementRestriction;
        //       };
 public:
-       gdcmDictEntry(guint16 group, 
-                     guint16 element,
-                     string vr     = "Unknown",
-                     string fourth = "Unknown",
-                     string name   = "Unknown");
+   gdcmDictEntry(guint16 group, 
+                 guint16 element,
+                 std::string vr     = "Unknown",
+                 std::string fourth = "Unknown",
+                 std::string name   = "Unknown");
+                        
        // fabrique une 'clé' par concaténation du numGroupe et du numElement
-       static TagKey TranslateToKey(guint16 group, guint16 element);
        
-       guint16 GetGroup(void)  { return group; };
-       guint16 GetElement(void){return element;};
-       string  GetVR(void)     {return vr;     };
-       void    SetVR(string);
-       void    SetKey(string k){ key = k;     }
-       bool    IsVrUnknown(void);
-       string  GetFourth(void) {return fourth;};
-       string  GetName(void)   {return name;  };
-       string  GetKey(void)    {return key;   };
+       // Pourquoi fait-elle partie de DictEntry?
+       // elle pourrait etre utilisée egalement ailleurs, hors tout Dictionnaire
+       
+       // Pourquoi 'static'?
+       
+   static TagKey TranslateToKey(guint16 group, guint16 element);
+       
+   guint16      GetGroup(void)  {return group;  };
+   guint16      GetElement(void){return element;};
+   std::string  GetVR(void)     {return vr;     };
+   void         SetVR(std::string);
+   void         SetKey(std::string k){ key = k; };
+   bool         IsVrUnknown(void);
+   std::string  GetFourth(void) {return fourth;};
+   std::string  GetName(void)   {return name;  };
+   std::string  GetKey(void)    {return key;   };
 };
 
 #endif