1 #include "../../ffs.h"
2 typedef struct _first_rec {
3     int         i;
4     long        j;
5     double      d;
6     char        c;
7 } first_rec, *first_rec_ptr;
8 
9 static FMField field_list[] = {
10     {"i", "integer", sizeof(int), FMOffset(first_rec_ptr, i)},
11     {"j", "integer", sizeof(long), FMOffset(first_rec_ptr, j)},
12     {"d", "float",   sizeof(double), FMOffset(first_rec_ptr, d)},
13     {"c", "integer", sizeof(char), FMOffset(first_rec_ptr, c)},
14     {NULL, NULL, 0, 0},
15 };
16 
17 int
main(int argc,char ** argv)18 main(int argc, char** argv)
19 {
20     FFSFile iofile = open_FFSfile("test_output", "r");
21     FFSTypeHandle first_rec_handle;
22     FFSContext context = FFSContext_of_file(iofile);
23     first_rec rec1;
24 
25     first_rec_handle = FFSset_simple_target(context, "first format", field_list, sizeof(first_rec));
26     FFSread(iofile, &rec1);
27     close_FFSfile(iofile);
28     printf("Read i=%d, j=%ld, d=%g, j=%c\n", rec1.i, rec1.j, rec1.d, rec1.j);
29 }
30