X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Example%2FAnonymizeNoLoad.cxx;h=dc7eadc9aea8e294e038fab4fbffbecc6c170845;hb=7807e926c2319c5adfc037665992307222bc8f27;hp=cf6f22ee5d80c7035ac8ca9cf5dd0077de3d916b;hpb=c4fa2e74a4ce56a0a8db54e4a70d404bec9fc8dd;p=gdcm.git diff --git a/Example/AnonymizeNoLoad.cxx b/Example/AnonymizeNoLoad.cxx index cf6f22ee..dc7eadc9 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/30 14:40:28 $ - Version: $Revision: 1.11 $ + Date: $Date: 2007/06/06 13:03:57 $ + Version: $Revision: 1.21 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -29,8 +29,8 @@ 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 ", + "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] ", @@ -43,12 +43,12 @@ int main(int argc, char *argv[]) " noshadowseq: user doesn't want to load Private Sequences ", " noshadow : user doesn't want to load Private groups (odd number) ", " noseq : user doesn't want to load Sequences ", - " debug : user wants to run the program in 'debug mode' ", + " debug : developper wants to run the program in 'debug mode' ", FINISH_USAGE // ----- Initialize Arguments Manager ------ - gdcm::ArgMgr *am = new gdcm::ArgMgr(argc, argv); + GDCM_NAME_SPACE::ArgMgr *am = new GDCM_NAME_SPACE::ArgMgr(argc, argv); if (am->ArgMgrDefined("usage") || argc == 1) { @@ -58,10 +58,10 @@ int main(int argc, char *argv[]) } if (am->ArgMgrDefined("debug")) - gdcm::Debug::DebugOn(); + GDCM_NAME_SPACE::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 = GDCM_LD_ALL; + int loadMode = GDCM_NAME_SPACE::LD_ALL; if ( am->ArgMgrDefined("noshadowseq") ) - loadMode |= GDCM_LD_NOSHADOWSEQ; + loadMode |= GDCM_NAME_SPACE::LD_NOSHADOWSEQ; else { - if ( am->ArgMgrDefined("noshadow") ) - loadMode |= GDCM_LD_NOSHADOW; + if ( am->ArgMgrDefined("noshadow") ) + loadMode |= GDCM_NAME_SPACE::LD_NOSHADOW; if ( am->ArgMgrDefined("noseq") ) - loadMode |= GDCM_LD_NOSEQ; + loadMode |= GDCM_NAME_SPACE::LD_NOSEQ; } int rubOutNb; @@ -99,27 +99,27 @@ int main(int argc, char *argv[]) delete am; // ------ we don't need Arguments Manager any longer ------ - gdcm::File *f; + GDCM_NAME_SPACE::File *f; if ( fileName != 0 ) // ====== Deal with a single file ====== { // // Parse the input file. // - f = new gdcm::File( ); + f = GDCM_NAME_SPACE::File::New( ); f->SetLoadMode(loadMode); f->SetFileName( fileName ); - // 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) + // GDCM_NAME_SPACE::File::IsReadable() is no usable here, because we deal with + // any kind of GDCM_NAME_SPACE::Readable *document* + // not only GDCM_NAME_SPACE::File (as opposed to GDCM_NAME_SPACE::DicomDir) if ( !f->Load() ) { std::cout <Delete(); return 1; } std::cout << fileName << " is readable " << std::endl; @@ -129,23 +129,22 @@ int main(int argc, char *argv[]) // File will be overwritten // - // // Choose the fields to anonymize. // // Institution name - f->AddAnonymizeElement( 0x0008, 0x0080, "Xanadoo" ); + f->AddAnonymizeElement( 0x0008, 0x0080, "gdcm-Xanadoo Hospital" ); // Patient's name - f->AddAnonymizeElement( 0x0010, 0x0010, "g^Fantomas" ); + f->AddAnonymizeElement( 0x0010, 0x0010, "gdcm^Fantomas" ); // 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" ); + f->AddAnonymizeElement( 0x0010, 0x1040,"gdcm at Sing-sing.org" ); // Patient's Mother's Birth Name - f->AddAnonymizeElement( 0x0010, 0x1060,"g^Vampirella" ); + f->AddAnonymizeElement( 0x0010, 0x1060,"gdcm^Vampirella" ); // Study Instance UID f->AddAnonymizeElement( 0x0020, 0x000d, "9.99.999.9999" ); // Telephone @@ -166,7 +165,7 @@ int main(int argc, char *argv[]) std::cout <<"Let's AnonymizeNoLoad " << std::endl; - // The gdcm::File remains untouched in memory + // The GDCM_NAME_SPACE::File remains untouched in memory f->AnonymizeNoLoad(); @@ -179,26 +178,26 @@ int main(int argc, char *argv[]) // f->ClearAnonymizeList(); - delete f; + f->Delete(); return 0; } else // ====== Deal with a (single Patient) Directory ====== { std::cout << "dirName [" << dirName << "]" << std::endl; - gdcm::DirList dirList(dirName,1); // gets recursively the file list - gdcm::DirListType fileList = dirList.GetFilenames(); - for( gdcm::DirListType::iterator it = fileList.begin(); + GDCM_NAME_SPACE::DirList dirList(dirName,1); // gets recursively the file list + GDCM_NAME_SPACE::DirListType fileList = dirList.GetFilenames(); + for( GDCM_NAME_SPACE::DirListType::iterator it = fileList.begin(); it != fileList.end(); ++it ) { - f = new gdcm::File( ); + f = GDCM_NAME_SPACE::File::New( ); f->SetLoadMode(loadMode); f->SetFileName( it->c_str() ); if ( !f->Load() ) { - delete f; + f->Delete(); continue; } // @@ -206,17 +205,17 @@ int main(int argc, char *argv[]) // // Institution name - f->AddAnonymizeElement( 0x0008, 0x0080, "Xanadoo" ); + f->AddAnonymizeElement( 0x0008, 0x0080, "gdcm-Xanadoo Hospital" ); // Patient's name - f->AddAnonymizeElement( 0x0010, 0x0010, "g^Fantomas" ); + f->AddAnonymizeElement( 0x0010, 0x0010, "gdcm^Fantomas" ); // 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" ); + f->AddAnonymizeElement( 0x0010, 0x1040,"gdcm at Sing-sing.org" ); // Patient's Mother's Birth Name - f->AddAnonymizeElement( 0x0010, 0x1060,"g^Vampirella" ); + f->AddAnonymizeElement( 0x0010, 0x1060,"gdcm^Vampirella" ); // Study Instance UID // we may not brutaly overwrite it //f->AddAnonymizeElement( 0x0020, 0x000d, "9.99.999.9999" ); @@ -232,7 +231,7 @@ int main(int argc, char *argv[]) } std::cout <<"Let's AnonymizeNoLoad " << it->c_str() << std::endl; - // The gdcm::File remains untouched in memory + // The GDCM_NAME_SPACE::File remains untouched in memory // The Dicom file is overwritten on disc f->AnonymizeNoLoad(); @@ -243,10 +242,9 @@ int main(int argc, char *argv[]) f->ClearAnonymizeList(); - delete f; - } - - } + f->Delete(); + } + } return 0; }