Program: gdcm
Module: $RCSfile: TestMakeDicomDir.cxx,v $
Language: C++
- Date: $Date: 2005/06/02 09:37:50 $
- Version: $Revision: 1.3 $
+ Date: $Date: 2005/10/25 14:52:31 $
+ Version: $Revision: 1.10 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
}
gdcm::DicomDir *dcmdir;
-
- // Old style (still available)
- //
- // true : we ask for Directory parsing
- // dcmdir = new gdcm::DicomDir(dirName, true);
// new style (user is allowed no to load Sequences an/or Shadow Groups)
- dcmdir = new gdcm::DicomDir( );
- dcmdir->SetParseDir(true);
- // dcmdir->SetLoadMode(NO_SEQ | NO_SHADOW);
+ dcmdir = gdcm::DicomDir::New( );
+
+ // dcmdir->SetLoadMode(gdcm::LD_NOSEQ | gdcm::LD_NOSHADOW);
// some images have a wrong length for element 0x0000 of private groups
- dcmdir->SetLoadMode(NO_SEQ);
- dcmdir->Load(dirName);
+ dcmdir->SetLoadMode(gdcm::LD_NOSEQ);
+ dcmdir->SetDirectoryName(dirName);
+ dcmdir->Load( );
- dcmdir->SetStartMethod(StartMethod, (void *) NULL);
+ dcmdir->SetStartMethod(StartMethod);
dcmdir->SetEndMethod(EndMethod);
if ( !dcmdir->GetFirstPatient() )
std::cout << "makeDicomDir: no patient found. Exiting."
<< std::endl;
- delete dcmdir;
+ dcmdir->Delete();
return 1;
}
// Create the corresponding DicomDir
- dcmdir->WriteDicomDir("NewDICOMDIR");
- delete dcmdir;
+ dcmdir->Write("NewDICOMDIR");
+ dcmdir->Delete();
// Read from disc the just written DicomDir
- gdcm::DicomDir *newDicomDir = new gdcm::DicomDir("NewDICOMDIR");
+ gdcm::DicomDir *newDicomDir = gdcm::DicomDir::New();
+ newDicomDir->SetFileName("NewDICOMDIR");
+ newDicomDir->Load();
+
if( !newDicomDir->IsReadable() )
{
std::cout<<" Written DicomDir 'NewDICOMDIR'"
<<" is not readable"<<std::endl
<<" ...Failed"<<std::endl;
- delete newDicomDir;
+ newDicomDir->Delete();
return 1;
}
<<" has no patient"<<std::endl
<<" ...Failed"<<std::endl;
- delete newDicomDir;
+ newDicomDir->Delete();
return(1);
}
std::cout<<std::flush;
- delete newDicomDir;
+ newDicomDir->Delete();
return 0;
}