Program: gdcm
Module: $RCSfile: AnonymizeDicomDir.cxx,v $
Language: C++
- Date: $Date: 2005/07/21 04:55:50 $
- Version: $Revision: 1.7 $
+ Date: $Date: 2007/05/23 14:18:04 $
+ Version: $Revision: 1.11 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include "gdcmSQItem.h"
#include "gdcmSeqEntry.h"
-#include "gdcmValEntry.h"
+#include "gdcmDataEntry.h"
#include "gdcmDocument.h"
#include "gdcmFile.h"
* \brief AnonymizeDicomDir
*/
-void AnoNoLoad(gdcm::SQItem *s, std::fstream *fp,
+void AnoNoLoad(GDCM_NAME_SPACE::SQItem *s, std::fstream *fp,
uint16_t group, uint16_t elem,
std::string val);
-void AnoNoLoad(gdcm::SQItem *s, std::fstream *fp,
+void AnoNoLoad(GDCM_NAME_SPACE::SQItem *s, std::fstream *fp,
uint16_t group, uint16_t elem,
std::string val)
{
- gdcm::DocEntry *d;
+ GDCM_NAME_SPACE::DocEntry *d;
uint32_t offset;
uint32_t lgth;
uint32_t valLgth = 0;
if ( d == NULL)
return;
- if ( ! dynamic_cast<gdcm::ValEntry *>(d) )
+ if ( ! dynamic_cast<GDCM_NAME_SPACE::DataEntry *>(d) )
return;
offset = d->GetOffset();
{
START_USAGE(usage)
- " \n AnonymizeDicomDir :\n",
- " Anonymize a gdcm-readable DICOMDIR ",
- " even when some 'Objects' are not yet taken into account",
- " Warning : the DICOMDIR is overwritten",
- " usage: AnonymizeDicomDir filein=dicomDirName [debug] ",
- " debug : user wants to run the program in 'debug mode' ",
+ " \n AnonymizeDicomDir :\n ",
+ " Anonymize a gdcm-readable DICOMDIR ",
+ " even when some 'Objects' are not yet taken into account ",
+ " Warning : the DICOMDIR is overwritten ",
+ " usage: AnonymizeDicomDir filein=dicomDirName [debug] ",
+ " 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 (argc == 1 || am->ArgMgrDefined("usage"))
{
// Read the input DICOMDIR
- gdcm::File *f;
- f = new gdcm::File( );
+ GDCM_NAME_SPACE::File *f;
+ f = GDCM_NAME_SPACE::File::New( );
f->SetLoadMode(0);
f->SetFileName( fileName );
bool res = f->Load();
std::cout << " ... is readable " << std::endl;
// Look for Directory record sequence
- gdcm::DocEntry *e = f->GetDocEntry(0x0004, 0x1220);
+ GDCM_NAME_SPACE::DocEntry *e = f->GetDocEntry(0x0004, 0x1220);
if ( !e )
{
std::cout << "No Directory Record Sequence (0004,1220) found" <<std::endl;;
- delete f;
+ f->Delete();
return 0;
}
- gdcm::SeqEntry *s = dynamic_cast<gdcm::SeqEntry *>(e);
+ GDCM_NAME_SPACE::SeqEntry *s = dynamic_cast<GDCM_NAME_SPACE::SeqEntry *>(e);
if ( !s )
{
std::cout << "Element (0004,1220) is not a Sequence ?!?" <<std::endl;
- delete f;
+ f->Delete();
return 0;
}
// Open the file LTTG (aka ALAP)
std::fstream *fp = new std::fstream(fileName,
std::ios::in | std::ios::out | std::ios::binary);
- gdcm::DocEntry *d;
+ GDCM_NAME_SPACE::DocEntry *d;
std::string v;
int patientNumber = 0;
std::ostringstream oss;
- gdcm::SQItem *tmpSI=s->GetFirstSQItem(); // For all the SQItems
+ GDCM_NAME_SPACE::SQItem *tmpSI=s->GetFirstSQItem(); // For all the SQItems
while(tmpSI)
{
d = tmpSI->GetDocEntry(0x0004, 0x1430); // Directory Record Type
- if ( gdcm::ValEntry* valEntry = dynamic_cast<gdcm::ValEntry *>(d) )
+ if ( GDCM_NAME_SPACE::DataEntry *dataEntry =
+ dynamic_cast<GDCM_NAME_SPACE::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;
}
fp->close();
- delete f;
+ delete fp;
+ f->Delete();
return 0;
}