]> Creatis software - gdcm.git/blobdiff - Example/AnonymizeDicomDir.cxx
BUG: Hopefully fix pb on 64bits machine. Temp hack is to check what sieof of long...
[gdcm.git] / Example / AnonymizeDicomDir.cxx
index 47915d81559acc939d47c63382d39c8d0873beb1..02190c34f61bd63ab2c715f2d5e1533b1a2a6291 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: AnonymizeDicomDir.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/07/12 14:56:48 $
-  Version:   $Revision: 1.6 $
+  Date:      $Date: 2005/10/18 08:35:43 $
+  Version:   $Revision: 1.8 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -22,7 +22,7 @@
 
 #include "gdcmSQItem.h"
 #include "gdcmSeqEntry.h"
-#include "gdcmValEntry.h"
+#include "gdcmDataEntry.h"
 
 #include "gdcmDocument.h"
 #include "gdcmFile.h"
@@ -55,7 +55,7 @@ void AnoNoLoad(gdcm::SQItem *s, std::fstream *fp,
    if ( d == NULL)
       return;
 
-   if ( ! dynamic_cast<gdcm::ValEntry *>(d) )
+   if ( ! dynamic_cast<gdcm::DataEntry *>(d) )
       return;
 
    offset = d->GetOffset();
@@ -86,7 +86,7 @@ int main(int argc, char *argv[])
    // ----- Initialize Arguments Manager ------   
    gdcm::ArgMgr *am = new gdcm::ArgMgr(argc, argv);
   
-   if (am->ArgMgrDefined("usage")) 
+   if (argc == 1 || am->ArgMgrDefined("usage")) 
    {
       am->ArgMgrUsage(usage); // Display 'usage'
       delete am;
@@ -95,6 +95,13 @@ int main(int argc, char *argv[])
  
    char *fileName  = am->ArgMgrWantString("filein",usage); 
 
+   // if unused Param we give up
+   if ( am->ArgMgrPrintUnusedLabels() )
+   { 
+      am->ArgMgrUsage(usage);
+      delete am;
+      return 0;
+   }
    delete am;  // --- we don't need Argument Manager any longer ---
 
 
@@ -141,13 +148,13 @@ int main(int argc, char *argv[])
    while(tmpSI)
    {
       d = tmpSI->GetDocEntry(0x0004, 0x1430); // Directory Record Type
-      if ( gdcm::ValEntry* valEntry = dynamic_cast<gdcm::ValEntry *>(d) )
+      if ( gdcm::DataEntry *dataEntry = dynamic_cast<gdcm::DataEntry *>(d) )
       {
-         v = valEntry->GetValue();
+         v = dataEntry->GetString();
       }
       else
       {
-         std::cout << "(0004,1430) not a ValEntry ?!?" << std::endl;
+         std::cout << "(0004,1430) not a DataEntry ?!?" << std::endl;
          continue;
       }