tpl/tests/test74.c
2013-03-12 16:38:58 -04:00

40 lines
837 B
C

#include <stdio.h>
#include <string.h>
#include "tpl.h"
#define F1_LEN 200
#define F2_LEN 100
struct ms_t {
int i;
double f1[F1_LEN];
double f2[F2_LEN];
};
int main() {
tpl_node *tn;
struct ms_t ms, ms2;
int i;
ms.i = 1234;
for(i=0; i < F1_LEN; i++) ms.f1[i] = i * 1.5;
for(i=0; i < F2_LEN; i++) ms.f2[i] = i * 0.5;
tn = tpl_map("S(if#f#)", &ms, F1_LEN, F2_LEN);
tpl_pack(tn,0);
tpl_dump(tn,TPL_FILE,"/tmp/test74.tpl");
tpl_free(tn);
memset(&ms2,0,sizeof(struct ms_t));
tn = tpl_map("S(if#f#)", &ms2, F1_LEN, F2_LEN);
tpl_load(tn,TPL_FILE,"/tmp/test74.tpl");
tpl_unpack(tn,0);
tpl_free(tn);
printf("%d\n", ms2.i);
for(i=0; i < F1_LEN; i++) printf("%.2f\n", ms2.f1[i]);
for(i=0; i < F2_LEN; i++) printf("%.2f\n", ms2.f2[i]);
return(0);
}