X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Example%2FAnonymizeNoLoad.cxx;h=12a24e481c875fd3f245271c4e2c700374db485d;hb=210b97f6a6aaec31089e4cec768605f580948d49;hp=042ee86b10e001e802a158b52e81c9749fd1ca14;hpb=8769466e8f6bf45d3f1693515118eeaad9a652bc;p=gdcm.git diff --git a/Example/AnonymizeNoLoad.cxx b/Example/AnonymizeNoLoad.cxx index 042ee86b..12a24e48 100644 --- a/Example/AnonymizeNoLoad.cxx +++ b/Example/AnonymizeNoLoad.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: AnonymizeNoLoad.cxx,v $ Language: C++ - Date: $Date: 2005/08/22 11:14:27 $ - Version: $Revision: 1.9 $ + Date: $Date: 2006/03/27 19:02:43 $ + Version: $Revision: 1.17 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -28,12 +28,12 @@ int main(int argc, char *argv[]) { START_USAGE(usage) - "\n AnonymizeNoLoad :\n", - "Anonymize a gdcm-readable Dicom image even if pixels aren't gdcm readable ", - " Warning : Warning : the image is overwritten ", + "\n AnonymizeNoLoad :\n ", + "Anonymize a gdcm-parsable Dicom image even if pixels aren't gdcm readable ", + " Warning : the image is OVERWRITTEN ", " to preserve image integrity, use a copy. ", "usage: AnonymizeNoLoad {filein=inputFileName|dirin=inputDirectoryName} ", - " [rubout=listOfElementsToRubOut] ", + " [rubout=listOfElementsToRubOut] ", " [ { [noshadowseq] | [noshadow][noseq] } ] [debug] ", " inputFileName : Name of the (single) file user wants to anonymize ", " inputDirectoryName : user wants to anonymize *all* the files ", @@ -60,8 +60,8 @@ int main(int argc, char *argv[]) if (am->ArgMgrDefined("debug")) gdcm::Debug::DebugOn(); - char *fileName = am->ArgMgrGetString("filein",(char *)0); - char *dirName = am->ArgMgrGetString("dirin",(char *)0); + const char *fileName = am->ArgMgrGetString("filein"); + const char *dirName = am->ArgMgrGetString("dirin"); if ( (fileName == 0 && dirName == 0) || @@ -75,15 +75,15 @@ int main(int argc, char *argv[]) return 0; } - int loadMode = 0x00000000; + int loadMode = gdcm::LD_ALL; if ( am->ArgMgrDefined("noshadowseq") ) - loadMode |= NO_SHADOWSEQ; + loadMode |= gdcm::LD_NOSHADOWSEQ; else { - if ( am->ArgMgrDefined("noshadow") ) - loadMode |= NO_SHADOW; + if ( am->ArgMgrDefined("noshadow") ) + loadMode |= gdcm::LD_NOSHADOW; if ( am->ArgMgrDefined("noseq") ) - loadMode |= NO_SEQ; + loadMode |= gdcm::LD_NOSEQ; } int rubOutNb; @@ -99,28 +99,27 @@ int main(int argc, char *argv[]) delete am; // ------ we don't need Arguments Manager any longer ------ + gdcm::File *f; if ( fileName != 0 ) // ====== Deal with a single file ====== { // // Parse the input file. // - gdcm::File *f; - f = new gdcm::File( ); + f = gdcm::File::New( ); f->SetLoadMode(loadMode); f->SetFileName( fileName ); - bool res = f->Load(); // gdcm::File::IsReadable() is no usable here, because we deal with // any kind of gdcm::Readable *document* // not only gdcm::File (as opposed to gdcm::DicomDir) - if ( !res ) + if ( !f->Load() ) { std::cout <Delete(); return 1; } std::cout << fileName << " is readable " << std::endl; @@ -142,7 +141,7 @@ int main(int argc, char *argv[]) // Patient's ID f->AddAnonymizeElement( 0x0010, 0x0020,"1515" ); // Patient's Birthdate - f->AddAnonymizeElement( 0x0010, 0x0030,"11.11.1111" ); + f->AddAnonymizeElement( 0x0010, 0x0030,"11111111" ); // Patient's Adress f->AddAnonymizeElement( 0x0010, 0x1040,"Sing-sing" ); // Patient's Mother's Birth Name @@ -180,7 +179,7 @@ int main(int argc, char *argv[]) // f->ClearAnonymizeList(); - delete f; + f->Delete(); return 0; } @@ -193,16 +192,13 @@ int main(int argc, char *argv[]) it != fileList.end(); ++it ) { - - gdcm::File *f; - f = new gdcm::File( ); + f = gdcm::File::New( ); f->SetLoadMode(loadMode); f->SetFileName( it->c_str() ); - bool res = f->Load(); - if ( !res ) + if ( !f->Load() ) { - delete f; + f->Delete(); continue; } // @@ -216,7 +212,7 @@ int main(int argc, char *argv[]) // Patient's ID f->AddAnonymizeElement( 0x0010, 0x0020,"1515" ); // Patient's Birthdate - f->AddAnonymizeElement( 0x0010, 0x0030,"11.11.1111" ); + f->AddAnonymizeElement( 0x0010, 0x0030,"11111111" ); // Patient's Adress f->AddAnonymizeElement( 0x0010, 0x1040,"Sing-sing" ); // Patient's Mother's Birth Name @@ -247,10 +243,9 @@ int main(int argc, char *argv[]) f->ClearAnonymizeList(); - delete f; - } - - } + f->Delete(); + } + } return 0; }