FoundLength =0;
}
+
+ // a SeQuence Element is beginning
+ // Let's forget it's length
+ // (we want to 'go inside')
+
+ // Pb : *normaly* fffe|e000 is just a marker, its length *should be* zero
+ // in gdcm-MR-PHILIPS-16-Multi-Seq.dcm we find lengthes as big as 28800
+ // if we set the length to zero IsAnInteger() breaks...
+ // if we don't, we lost 28800 characters from the Header :-(
+
+ else if(ElVal->GetGroup() == 0xfffe){
+ //printf("========================= %08x %d\n",FoundLength,FoundLength);
+ // sometimes, length seems to be wrong
+ //FoundLength =0; // some more clever checking to be done !
+ }
+
ElVal->SetUsableLength(FoundLength);
}
gdcmTS * ts = gdcmGlobal::GetTS();
std::ostringstream s;
-
- s << "------------- using tagHT ---------------------" << std::endl;
// Tag HT
s << "------------- using tagHT ---------------------" << std::endl;
d2 = _CreateCleanString(v); // replace non printable characters by '.'
s << greltag << ": lgth : ";
lgth = (*i)->GetReadLength();
- if ( lgth == 0xffffffff)
- s << std::hex << lgth << std::dec ;
- else
- s << lgth;
+
+ s << std::hex << "x(" << lgth << ") "<< std::dec << lgth;
s << ",\t Offset : " << o;
s << " x(" << std::hex << o << std::dec << ") ";
s << "\t[" << (*i)->GetVR() << "]";