X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb2%2Ftest%2Flayout.h;h=2060db8618ae691c18735875302ffcc4fe51cf48;hb=f5087965ebdb24618ca59854b7a819e21c9fdf78;hp=25edd8b777a4cd18e8c50522d8fbe69719df17b0;hpb=6804501c350181dea8f531142b28c620b70edbd9;p=ccan diff --git a/ccan/tdb2/test/layout.h b/ccan/tdb2/test/layout.h index 25edd8b7..2060db86 100644 --- a/ccan/tdb2/test/layout.h +++ b/ccan/tdb2/test/layout.h @@ -2,11 +2,10 @@ #define TDB2_TEST_LAYOUT_H #include -struct tdb_layout *new_tdb_layout(void); -void tdb_layout_add_zone(struct tdb_layout *layout, - unsigned int zone_bits, - bool fill_prev); -void tdb_layout_add_free(struct tdb_layout *layout, tdb_len_t len); +struct tdb_layout *new_tdb_layout(const char *filename); +void tdb_layout_add_freelist(struct tdb_layout *layout); +void tdb_layout_add_free(struct tdb_layout *layout, tdb_len_t len, + unsigned flist); void tdb_layout_add_used(struct tdb_layout *layout, TDB_DATA key, TDB_DATA data, tdb_len_t extra); @@ -19,7 +18,7 @@ void tdb_layout_add_hashtable(struct tdb_layout *layout, struct tdb_context *tdb_layout_get(struct tdb_layout *layout); enum layout_type { - ZONE, FREE, DATA, HASHTABLE, + FREELIST, FREE, DATA, HASHTABLE, }; /* Shared by all union members. */ @@ -28,14 +27,14 @@ struct tle_base { tdb_off_t off; }; -struct tle_zone { +struct tle_freelist { struct tle_base base; - unsigned int zone_bits; }; struct tle_free { struct tle_base base; tdb_len_t len; + unsigned flist_num; }; struct tle_used { @@ -54,13 +53,14 @@ struct tle_hashtable { union tdb_layout_elem { struct tle_base base; - struct tle_zone zone; + struct tle_freelist flist; struct tle_free free; struct tle_used used; struct tle_hashtable hashtable; }; struct tdb_layout { + const char *filename; unsigned int num_elems; union tdb_layout_elem *elem; };