]> Creatis software - gdcm.git/blobdiff - src/gdcmDocEntrySet.cxx
Some normalizations :
[gdcm.git] / src / gdcmDocEntrySet.cxx
index 0c751dd2db03b14362b958ba392a663cd77799b3..141813d368c9ea3ceb37289f684408dd0fc13c20 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmDocEntrySet.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/01/07 12:29:17 $
-  Version:   $Revision: 1.34 $
+  Date:      $Date: 2005/01/23 10:12:33 $
+  Version:   $Revision: 1.43 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -27,8 +27,6 @@
 #include "gdcmValEntry.h"
 #include "gdcmBinEntry.h"
 
-#include <assert.h>
-
 namespace gdcm 
 {
 
@@ -41,7 +39,7 @@ namespace gdcm
  * @param   group group  number of the underlying DictEntry
  * @param   elem  element number of the underlying DictEntry
  * @param   vr    VR (Value Representation) of the underlying DictEntry
- * @param   vm    VM (Value Multiplicity) of the underlying DictEntry
+ * @param   vm    VM (Value Multiplicity)   of the underlying DictEntry
  * @param   name   english name
  */
 DictEntry* DocEntrySet::NewVirtualDictEntry( uint16_t group,uint16_t elem,
@@ -62,17 +60,16 @@ DictEntry* DocEntrySet::NewVirtualDictEntry( uint16_t group,uint16_t elem,
  * @param   elem  element number of the new Entry
  * @param   vr     VR of the new Entry 
  */
-ValEntry *DocEntrySet::NewValEntryByNumber(uint16_t group,uint16_t elem,
-                                           TagName const & vr) 
+ValEntry *DocEntrySet::NewValEntry(uint16_t group,uint16_t elem,
+                                   TagName const & vr) 
 {
-   DictEntry *dictEntry = GetDictEntryByNumber(group, elem, vr);
-   assert(dictEntry);
+   DictEntry *dictEntry = GetDictEntry(group, elem, vr);
+   gdcmAssertMacro(dictEntry);
 
    ValEntry *newEntry = new ValEntry(dictEntry);
    if (!newEntry) 
    {
-      dbg.Verbose(1, "Document::NewValEntryByNumber",
-                  "failed to allocate ValEntry");
+      gdcmVerboseMacro( "Failed to allocate ValEntry");
       return 0;
    }
    return newEntry;
@@ -87,17 +84,16 @@ ValEntry *DocEntrySet::NewValEntryByNumber(uint16_t group,uint16_t elem,
  * @param   elem  element number of the new Entry
  * @param   vr     VR of the new Entry 
  */
-BinEntry *DocEntrySet::NewBinEntryByNumber(uint16_t group,uint16_t elem,
-                                           TagName const & vr) 
+BinEntry *DocEntrySet::NewBinEntry(uint16_t group,uint16_t elem,
+                                   TagName const & vr) 
 {
-   DictEntry *dictEntry = GetDictEntryByNumber(group, elem, vr);
-   assert(dictEntry);
+   DictEntry *dictEntry = GetDictEntry(group, elem, vr);
+   gdcmAssertMacro(dictEntry);
 
    BinEntry *newEntry = new BinEntry(dictEntry);
    if (!newEntry) 
    {
-      dbg.Verbose(1, "Document::NewBinEntryByNumber",
-                  "failed to allocate BinEntry");
+      gdcmVerboseMacro( "Failed to allocate BinEntry");
       return 0;
    }
    return newEntry;
@@ -110,72 +106,90 @@ BinEntry *DocEntrySet::NewBinEntryByNumber(uint16_t group,uint16_t elem,
  * @param   group group   number of the new Entry
  * @param   elem  element number of the new Entry
  */
-SeqEntry* DocEntrySet::NewSeqEntryByNumber(uint16_t group,uint16_t elem) 
+SeqEntry* DocEntrySet::NewSeqEntry(uint16_t group,uint16_t elem) 
 {
-   DictEntry *dictEntry = GetDictEntryByNumber(group, elem, "SQ");
-   assert(dictEntry);
+   DictEntry *dictEntry = GetDictEntry(group, elem, "SQ");
+   gdcmAssertMacro(dictEntry);
 
    SeqEntry *newEntry = new SeqEntry( dictEntry );
    if (!newEntry)
    {
-      dbg.Verbose(1, "Document::NewSeqEntryByNumber",
-                  "failed to allocate SeqEntry");
+      gdcmVerboseMacro( "Failed to allocate SeqEntry");
       return 0;
    }
    return newEntry;
 }
 
 /**
- * \brief   Searches both the public and the shadow dictionary (when they
- *          exist) for the presence of the DictEntry with given
+ * \brief   Searches [both] the public [and the shadow dictionary (when they
+ *          exist)] for the presence of the DictEntry with given
  *          group and element. The public dictionary has precedence on the
  *          shadow one.
- * @param   group   group number of the searched DictEntry
+ * @param   group  group number of the searched DictEntry
  * @param   elem element number of the searched DictEntry
  * @return  Corresponding DictEntry when it exists, NULL otherwise.
  */
-DictEntry *DocEntrySet::GetDictEntryByNumber(uint16_t group,uint16_t elem) 
+DictEntry *DocEntrySet::GetDictEntry(uint16_t group,uint16_t elem) 
 {
    DictEntry *found = 0;
    Dict *pubDict = Global::GetDicts()->GetDefaultPubDict();
    if (!pubDict) 
    {
-      dbg.Verbose(0, "Document::GetDictEntry",
-                     "we SHOULD have a default dictionary");
+      gdcmVerboseMacro( "We SHOULD have a default dictionary");
    }
    else
    {
-      found = pubDict->GetDictEntryByNumber(group, elem);  
+      found = pubDict->GetDictEntry(group, elem);  
    }
    return found;
 }
 
-DictEntry *DocEntrySet::GetDictEntryByNumber(uint16_t group, uint16_t elem,
+
+/**
+ * \brief   Searches both the public and the shadow dictionary (when they
+ *          exist) for the presence of the DictEntry with given
+ *          group and element, and create a new virtual DictEntry if necessary
+ * @param   group  group number of the searched DictEntry
+ * @param   elem element number of the searched DictEntry
+ * @param   vr Value Representation to use, if necessary 
+ * @return  Corresponding DictEntry when it exists, NULL otherwise.
+ */
+DictEntry *DocEntrySet::GetDictEntry(uint16_t group, uint16_t elem,
                                              TagName const & vr)
 {
-   DictEntry *dictEntry = GetDictEntryByNumber(group,elem);
+   DictEntry *dictEntry = GetDictEntry(group,elem);
    DictEntry *goodEntry = dictEntry;
-   std::string goodVR=vr;
+   std::string goodVR = vr;
 
-   if (elem==0x0000)
-      goodVR="UL";
+   if (elem == 0x0000) goodVR="UL";
 
-   if (goodEntry)
-      if (goodEntry->GetVR() != goodVR && goodVR!=GDCM_UNKNOWN)
-         goodEntry=NULL;
+   if ( goodEntry )
+   {
+      if ( goodVR != goodEntry->GetVR()
+        && goodVR != GDCM_UNKNOWN )
+      {
+         goodEntry = NULL;
+      }
+   }
 
    // Create a new virtual DictEntry if necessary
    if (!goodEntry)
    {
       if (dictEntry)
-         goodEntry = NewVirtualDictEntry(group, elem, goodVR,"FIXME",dictEntry->GetName());
+      {
+         goodEntry = NewVirtualDictEntry(group, elem, goodVR, "FIXME", 
+                                         dictEntry->GetName() );
+      }
       else
+      {
          goodEntry = NewVirtualDictEntry(group, elem, goodVR);
+      }
    }
-
    return goodEntry;
 }
 
+
+
 //-----------------------------------------------------------------------------
 // Private