int main() { Store *s, *d, *sprite_s, *pool_s, *elem_s; char *c; Scalar r; s = store_open(); { if (store_child_save(&sprite_s, "sprite", s)) { c = "hello, world"; string_save(&c, "prop1", sprite_s); c = "hello, world ... again"; string_save(&c, "prop2", sprite_s); r = SCALAR_INFINITY; scalar_save(&r, "prop6", sprite_s); if (store_child_save(&pool_s, "pool", sprite_s)) { store_child_save(&elem_s, "elem1", pool_s); store_child_save(&elem_s, "elem2", pool_s); } } } store_write_file(s, "test.sav"); store_close(s); /* ---- */ d = store_open_file("test.sav"); { if (store_child_load(&sprite_s, "sprite", d)) { printf("%s\n", sprite_s->name); string_load(&c, "prop1", "hai", sprite_s); printf(" prop1: %s\n", c); string_load(&c, "prop3", "hai", sprite_s); printf(" prop3: %s\n", c); string_load(&c, "prop2", "hai", sprite_s); printf(" prop2: %s\n", c); scalar_load(&r, "prop6", 4.2, sprite_s); printf(" prop6: %f\n", r); if (store_child_load(&pool_s, "pool", sprite_s)) while (store_child_load(&elem_s, NULL, pool_s)) printf(" %s\n", elem_s->name); } } store_close(d); return 0; }
void timing_load_all(Deserializer *s) { scalar_load(&scale, s); }