]> Creatis software - gdcm.git/blobdiff - Example/Anonymize.cxx
Fix English typo
[gdcm.git] / Example / Anonymize.cxx
index 5af051c0e47ac55af3b8628dcd0dc08163e0bc2e..69a7d8a14f9af2943a7c2179f0306b185847f458 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: Anonymize.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/06/07 11:12:10 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2005/07/21 04:55:50 $
+  Version:   $Revision: 1.3 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
 int main(int argc, char *argv[])
 {
    START_USAGE(usage)
-   " \n Anonymize :\n",
-   " Anonymize a full gdcm-readable Dicom image",
-   "          Warning : probably segfaults if pixels are not gdcm readable.",
-   "                    Use exAnonymizeNoLoad instead.",
-   " usage: Anonymize filein=inputFileName fileout=anonymizedFileName[debug] ",
-   "        debug    : user wants to run the program in 'debug mode' ",
+   " \n Anonymize :\n                                                         ",
+   " Anonymize a full gdcm-readable Dicom image                               ",
+   "          Warning : probably segfaults if pixels are not gdcm readable.   ",
+   "                    Use exAnonymizeNoLoad instead.                        ",
+   " usage: Anonymize filein=inputFileName fileout=anonymizedFileName[debug]  ",
+   "        debug    : user wants to run the program in 'debug mode'          ",
    FINISH_USAGE
 
    // ----- 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;
@@ -74,14 +74,18 @@ int main(int argc, char *argv[])
    //   Read the input file.
    // ============================================================
 
-   gdcm::File *f1;
+   gdcm::File *f;
 
-   f1 = new gdcm::File( fileName );
-   if (!f1->IsReadable()) 
+   f = new gdcm::File(  );
+   f->SetLoadMode( 0x00000000 );
+   f->SetFileName( fileName );
+   int res = f->Load();
+
+   if ( !res ) 
    {
        std::cerr << "Sorry, " << fileName <<"  not a gdcm-readable "
                  << "DICOM / ACR File" <<std::endl;
-       delete f1;  
+       delete f;  
        return 0;
    }
    std::cout << " ... is readable " << std::endl;
@@ -91,19 +95,19 @@ int main(int argc, char *argv[])
    // ============================================================
 
    // We need a gdcm::FileHelper, since we want to load the pixels        
-   gdcm::FileHelper *fh1 = new gdcm::FileHelper(f1);
+   gdcm::FileHelper *fh = new gdcm::FileHelper(f);
 
    // (unit8_t DOESN'T mean it's mandatory for the image to be a 8 bits one) 
 
-   uint8_t *imageData = fh1->GetImageData();
+   uint8_t *imageData = fh->GetImageData();
 
    if ( imageData == 0 )
    {
        std::cerr << "Sorry, Pixels of" << fileName <<"  are not "
            << " gdcm-readable."       << std::endl
                  << "Use exAnonymizeNoLoad" << std::endl;
-       delete f1;  
-       delete fh1;    
+       delete f;  
+       delete fh;    
        return 0;
    } 
 
@@ -111,36 +115,36 @@ int main(int argc, char *argv[])
    //  Choose the fields to anonymize.
    // ============================================================
    // Institution name 
-   f1->AddAnonymizeElement(0x0008, 0x0080, "Xanadoo"); 
+   f->AddAnonymizeElement(0x0008, 0x0080, "Xanadoo"); 
    // Patient's name 
-   f1->AddAnonymizeElement(0x0010, 0x0010, "Fantomas");   
+   f->AddAnonymizeElement(0x0010, 0x0010, "Fantomas");   
    // Patient's ID
-   f1->AddAnonymizeElement( 0x0010, 0x0020,"1515" );   
+   f->AddAnonymizeElement( 0x0010, 0x0020,"1515" );   
    // Study Instance UID
-   f1->AddAnonymizeElement(0x0020, 0x000d, "9.99.999.9999" );
+   f->AddAnonymizeElement(0x0020, 0x000d, "9.99.999.9999" );
    // Telephone
-   f1->AddAnonymizeElement(0x0010, 0x2154, "3615" );
+   f->AddAnonymizeElement(0x0010, 0x2154, "3615" );
 
    // Aware user will add more fields to anonymize here
 
    // The gdcm::File is modified in memory
 
-   f1->AnonymizeFile();
+   f->AnonymizeFile();
 
    // ============================================================
    //   Write a new file
    // ============================================================
 
-   fh1->WriteDcmExplVR(outputFileName);
+   fh->WriteDcmExplVR(outputFileName);
    std::cout <<"End Anonymize" << std::cout;
 
    // ============================================================
    //   Remove the Anonymize list
    // ============================================================  
-   f1->ClearAnonymizeList();
+   f->ClearAnonymizeList();
     
-   delete f1;
-   delete fh1
+   delete f;
+   delete fh; 
    return 0;
 }