#include <sstream>
#include "gdcmUtil.h"
-#define HEADER_LENGTH_TO_READ 256 // on ne lit plus que le debut
-
-#define DEBUG 1
+#define HEADER_LENGTH_TO_READ 256 // on ne lit plus que le debut
+#define _MaxSizeLoadElementValue_ 1024 // longueur au dela de laquelle on ne charge plus les valeurs
namespace Error {
struct FileReadError {
}
gdcmHeader::gdcmHeader (const char* InFilename) {
- SetMaxSizeLoadElementValue(1024);
+ SetMaxSizeLoadElementValue(_MaxSizeLoadElementValue_);
filename = InFilename;
Initialise();
fp=fopen(InFilename,"rw");
net2host = false;
// The easiest case is the one of a DICOM header, since it possesses a
- // file preamble where it suffice to look for the sting "DICM".
+ // file preamble where it suffice to look for the string "DICM".
lgrLue = fread(deb, 1, HEADER_LENGTH_TO_READ, fp);
entCur = deb + 128;
void gdcmHeader::GetPixels(size_t lgrTotale, void* _Pixels) {
size_t pixelsOffset;
pixelsOffset = GetPixelOffset();
- printf("pixelsOffset %d\n",pixelsOffset);
fseek(fp, pixelsOffset, SEEK_SET);
fread(_Pixels, 1, lgrTotale, fp);
}
// Il y en a encore DIX-SEPT, comme ça.
// Il faudrait trouver qq chose + rusé ...
//
+// --> probablement TOUS les supprimer (Eric dixit)
+//
void gdcmHeader::FixFoundLength(ElValue * ElVal, guint32 FoundLength) {
// The group length doesn't represent data to be loaded in memory, since
// each element of the group shall be loaded individualy.
if( elem == 0 )
- SkipLoad = true;
+ //SkipLoad = true; // modif sauvage JPR
+ // On charge la longueur du groupe
+ // quand l'element 0x0000 est présent !
if ( SkipLoad ) {
// FIXME the following skip is not necessary
*/
void gdcmHeader::LoadElements(void) {
- if (DEBUG) printf("LoadElements : Entree\n");
-
rewind(fp);
- if (DEBUG) printf("LoadElements : rewind\n");
TagElValueHT ht = PubElVals.GetTagHt();
- if (DEBUG) printf("LoadElements : GetTagHt\n");
-
for (TagElValueHT::iterator tag = ht.begin(); tag != ht.end(); ++tag) {
LoadElementValue(tag->second);
}