Blame |
Last modification |
View Log
| RSS feed
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
#include "dataio.h"
#define PEDESTAL 255
int main(int argc, char **argv) {
char fname[200]= {"tmp.out"};
int type;
time_t t;
if(argc<2) {
printf("Not enough arguments!\n");
return -1;
} else {
}
FILE
*fp
= fopen(fname
,"ab");
switch(type) {
case RUNREC_ID:
if(argc<9) {
printf("Not enough arguments!\n");
} else {
RUNREC runrec; // start header: appears once at the start of the file
runrec.id = RUNREC_ID;
runrec.len = sizeof(runrec);
runrec.fver = 0x10000;
runrec.
nev = atoi(argv
[3]);
runrec.ped = PEDESTAL;
runrec.
nx = atoi(argv
[4]);
runrec.
x0 = atoi(argv
[5]);
runrec.
dx = atoi(argv
[6]);
runrec.
ny = atoi(argv
[7]);
runrec.
y0 = atoi(argv
[8]);
runrec.
dy = atoi(argv
[9]);
printf("Writing header to file %s\n",fname
);
printf("RECID = %u\n",runrec.
id);
printf("Length = %u\n",runrec.
len);
printf("File version = %u\n",runrec.
fver);
printf("Number of events per step = %u\n",runrec.
nev);
printf("Pedestal = %u\n",runrec.
ped);
printf("Number of steps in X = %d\n",runrec.
nx);
printf("Start position X = %d\n",runrec.
x0);
printf("Step size direction X = %d\n",runrec.
dx);
printf("Number of steps in Y = %d\n",runrec.
ny);
printf("Start position Y = %d\n",runrec.
y0);
printf("Step size direction Y = %d\n",runrec.
dy);
if (fp
) fwrite(&runrec
, runrec.
len,1,fp
);
}
break;
case ENDREC_ID:
ENDREC endrec; // end header: appears once at the end of the file
endrec.id = ENDREC_ID;
endrec.len = sizeof(endrec);
printf("Writing header to file %s\n",fname
);
printf("RECID = %u\n",endrec.
id);
printf("Length = %u\n",endrec.
len);
if (fp
) fwrite(&endrec
, endrec.
len,1,fp
);
break;
case POSREC_ID:
if(argc<8) {
printf("Not enough arguments!\n");
} else {
POSREC posrec; // position header: appears at every change of position
posrec.id = POSREC_ID;
posrec.len = sizeof(posrec);
posrec.
ix = atoi(argv
[3]);
posrec.
x = atoi(argv
[4]);
posrec.
xset = atoi(argv
[5]);
posrec.
iy = atoi(argv
[6]);
posrec.
y = atoi(argv
[7]);
posrec.
yset = atoi(argv
[8]);
printf("Writing header to file %s\n",fname
);
printf("RECID = %u\n",posrec.
id);
printf("Length = %u\n",posrec.
len);
printf("Iteration X = %d\n",posrec.
ix);
printf("MIKRO Position X = %d\n",posrec.
x);
printf("Set position X = %d\n",posrec.
xset);
printf("Iteration Y = %d\n",posrec.
iy);
printf("MIKRO Position Y = %d\n",posrec.
y);
printf("Set position Y = %d\n",posrec.
yset);
if (fp
) fwrite(&posrec
, posrec.
len,1,fp
);
}
break;
}
return 0;
}