Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
// Directory Record Type Directory Record Types which may be included
// in the next lower-level directory Entity
//
// Directory Record Type Directory Record Types which may be included
// in the next lower-level directory Entity
//
-// STUDY SERIES, VISIT, RESULTS, STUDY COMPONENT
+// STUDY SERIES, VISIT, RESULTS, STUDY COMPONENT, PRIVATE
//
// SERIES IMAGE, OVERLAYS, MODALITY LUT, VOI LUT,
// CURVE, STORED PRINT, RT DOSE, RT STRUCTURE SET
// RT PLAN, RT TREAT RECORD, PRESENTATION, WAVEFORM,
// SR DOCUMENT, KEY OBJECT DOC, SPECTROSCOPY,
//
// SERIES IMAGE, OVERLAYS, MODALITY LUT, VOI LUT,
// CURVE, STORED PRINT, RT DOSE, RT STRUCTURE SET
// RT PLAN, RT TREAT RECORD, PRESENTATION, WAVEFORM,
// SR DOCUMENT, KEY OBJECT DOC, SPECTROSCOPY,
-// RAW DATA, REGISTRATION, FIDUCIAL
+// RAW DATA, REGISTRATION, FIDUCIAL, PRIVATE,
+// ENCAP DOC
// and whatever the value of parseDir was.
// (nothing is cheked in Document constructor, to avoid overhead)
// and whatever the value of parseDir was.
// (nothing is cheked in Document constructor, to avoid overhead)
}
Document::Load(fileName);
if ( GetFirstEntry() == 0 ) // when user passed a Directory to parse
{
gdcmWarningMacro( "Entry HT empty for file: "<< fileName);
}
Document::Load(fileName);
if ( GetFirstEntry() == 0 ) // when user passed a Directory to parse
{
gdcmWarningMacro( "Entry HT empty for file: "<< fileName);
}
// Directory record sequence
DocEntry *e = GetDocEntry(0x0004, 0x1220);
}
// Directory record sequence
DocEntry *e = GetDocEntry(0x0004, 0x1220);
{
gdcmWarningMacro( "NO 'Directory record sequence' (0x0004,0x1220)"
<< " in file " << fileName);
{
gdcmWarningMacro( "NO 'Directory record sequence' (0x0004,0x1220)"
<< " in file " << fileName);
void DicomDir::SetStartMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
void DicomDir::SetStartMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
void DicomDir::SetProgressMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
void DicomDir::SetProgressMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
void DicomDir::SetEndMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
void DicomDir::SetEndMethod( DicomDir::Method *method, void *arg,
DicomDir::Method *argDelete )
{
std::ofstream *fp = new std::ofstream(fileName.c_str(),
std::ios::out | std::ios::binary);
std::ofstream *fp = new std::ofstream(fileName.c_str(),
std::ios::out | std::ios::binary);
- // It was not a 'PATIENT', nor a 'STUDY', nor a 'SERIE',
- // neither an 'IMAGE' SQItem. Skip to next item.
- continue;
+ // It was neither a 'PATIENT', nor a 'STUDY', nor a 'SERIE',
+ // nor an 'IMAGE' SQItem. Skip to next item.
+ gdcmWarningMacro( " -------------------------------------------"
+ << "a non PATIENT/STUDY/SERIE/IMAGE SQItem was found : "
+ << v);
+
+ // FIXME : deal with other item types !
+ tmpSI=s->GetNextSQItem(); // To avoid infinite loop
+ continue;
serCurInstanceUID = (*it)->GetEntryValue(0x0020,0x000e);
serCurID = (*it)->GetEntryValue(0x0020,0x0011);
serCurInstanceUID = (*it)->GetEntryValue(0x0020,0x000e);
serCurID = (*it)->GetEntryValue(0x0020,0x0011);
- // if new Study Deal with 'STUDY' Elements
- if( studCurInstanceUID != studPrevInstanceUID || studCurID != studPrevID
+ // if new Study, deal with 'STUDY' Elements
+ if ( studCurInstanceUID != studPrevInstanceUID || studCurID != studPrevID
- // if new Serie Deal with 'SERIE' Elements
- if( serCurInstanceUID != serPrevInstanceUID || serCurID != serPrevID
+ // if new Serie, deal with 'SERIE' Elements
+ if ( serCurInstanceUID != serPrevInstanceUID || serCurID != serPrevID
case GDCM_DICOMDIR_IMAGE:
elemList = Global::GetDicomDirElements()->GetDicomDirImageElements();
si = new DicomDirImage(true);
case GDCM_DICOMDIR_IMAGE:
elemList = Global::GetDicomDirElements()->GetDicomDirImageElements();
si = new DicomDirImage(true);
case GDCM_DICOMDIR_SERIE:
elemList = Global::GetDicomDirElements()->GetDicomDirSerieElements();
si = new DicomDirSerie(true);
case GDCM_DICOMDIR_SERIE:
elemList = Global::GetDicomDirElements()->GetDicomDirSerieElements();
si = new DicomDirSerie(true);
case GDCM_DICOMDIR_STUDY:
elemList = Global::GetDicomDirElements()->GetDicomDirStudyElements();
si = new DicomDirStudy(true);
case GDCM_DICOMDIR_STUDY:
elemList = Global::GetDicomDirElements()->GetDicomDirStudyElements();
si = new DicomDirStudy(true);
case GDCM_DICOMDIR_PATIENT:
elemList = Global::GetDicomDirElements()->GetDicomDirPatientElements();
si = new DicomDirPatient(true);
case GDCM_DICOMDIR_PATIENT:
elemList = Global::GetDicomDirElements()->GetDicomDirPatientElements();
si = new DicomDirPatient(true);