ReadMyBinary: C Version (using Mbuilder)
#include
#include
void readMyBinary (
char *filename,
cxLattice * * outlat )
{
FILE * infile;
long nDataVar = 1;
long nCoordVar = 3;
long nDim = 3;
long dims[3];
float * data;
float * bbox;
if (filename==NULL || filename[0]==0) return;
infile = fopen(filename,"rb");
if (infile==NULL) {
fprintf(stderr,"cound not read %s\n.",filename);
return;
}
fread(dims,3,sizeof(long),infile);
*outlat =
(cxLattice *)cxLatNew(nDim,dims,nDataVar,cx_prim_float,
nCoordVar,cx_coord_uniform);
cxLatPtrGet(*outlat,NULL,(void **)&data,NULL,(void **)&bbox);
fread(data,dims[0]*dims[1]*dims[2],sizeof(float),infile);
bbox[0]=bbox[2]=bbox[4]=0.0;
bbox[1]=dims[0]-1.0;
bbox[3]=dims[1]-1.0;
bbox[5]=dims[2]-1.0;
fclose(infile);
}
|
ReadMyBinary: dScribe Version
Data:
<long i><long j><long k><float data[i*j*k]>
|