-// gdcmRLE.cxx
-//-----------------------------------------------------------------------------
+/*=========================================================================
+
+ Program: gdcm
+ Module: $RCSfile: gdcmRLE.cxx,v $
+ Language: C++
+ Date: $Date: 2004/06/20 18:08:48 $
+ Version: $Revision: 1.18 $
+
+ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
+ l'Image). All rights reserved. See Doc/License.txt or
+ http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the above copyright notices for more information.
+
+=========================================================================*/
+
#include <stdio.h>
#include "gdcmFile.h"
-#include <ctype.h> /* to declare isprint() */
+#include <ctype.h> // For isprint()
#define str2num(str, typeNum) *((typeNum *)(str))
ln=Header->SwapLong(ln); // Basic Offset Table Item Lentgh
if (ln != 0) {
// What is it used for ??
- char * BasicOffsetTableItemValue= (char *)malloc(ln+1);
+ char * BasicOffsetTableItemValue= new char[ln+1];
fread(BasicOffsetTableItemValue,ln,1,fp);
guint32 a;
for (int i=0;i<ln;i+=4){
}
if (nbRleSegments>1) {
- for(int k=1; k<=nbRleSegments-1; k++) { // reading RLE Segments
+ for(unsigned int k=1; k<=nbRleSegments-1; k++) { // reading RLE Segments
RleSegmentLength[k]=RleSegmentOffsetTable[k+1]-RleSegmentOffsetTable[k];
ftellRes=ftell(fp);
fragmentBegining=ftell(fp);
int l = Header->GetXSize()*Header->GetYSize();
int nbFrames = Header->GetZSize();
- char * newDest = (char*) malloc(l*nbFrames*2);
+ char * newDest = new char[l*nbFrames*2];
char *x = newDest;
char * a = (char *)image_buffer;
char * b = a + l;
}
}
memmove(image_buffer,newDest,lgrTotale);
- free(newDest);
+ delete[] newDest;
}
return(true);
// RLE LossLess Fragment
int gdcmFile::gdcm_read_RLE_fragment(char **areaToRead, long lengthToDecode,
long uncompressedSegmentSize, FILE *fp) {
+ (void)lengthToDecode; //FIXME
long ftellRes;
int count;
long numberOfOutputBytes=0;