From a2566b3ebd93e0bbc55a920a7be08054a9377f11 Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Sat, 15 Dec 2007 10:24:49 +0000 Subject: cleaned up code structure a bit --- src/engine/e_datafile.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/engine/e_datafile.h (limited to 'src/engine/e_datafile.h') diff --git a/src/engine/e_datafile.h b/src/engine/e_datafile.h new file mode 100644 index 00000000..7cc7b209 --- /dev/null +++ b/src/engine/e_datafile.h @@ -0,0 +1,27 @@ +/* copyright (c) 2007 magnus auvinen, see licence.txt for more info */ + +/* raw datafile access */ +typedef struct DATAFILE_t DATAFILE; + +/* read access */ +DATAFILE *datafile_load(const char *filename); +DATAFILE *datafile_load_old(const char *filename); +void *datafile_get_data(DATAFILE *df, int index); +int datafile_get_datasize(DATAFILE *df, int index); +void datafile_unload_data(DATAFILE *df, int index); +void *datafile_get_item(DATAFILE *df, int index, int *type, int *id); +int datafile_get_itemsize(DATAFILE *df, int index); +void datafile_get_type(DATAFILE *df, int type, int *start, int *num); +void *datafile_find_item(DATAFILE *df, int type, int id); +int datafile_num_items(DATAFILE *df); +int datafile_num_data(DATAFILE *df); +void datafile_unload(DATAFILE *df); + +int datafile_crc(const char *filename); + +/* write access */ +typedef struct DATAFILE_OUT_t DATAFILE_OUT; +DATAFILE_OUT *datafile_create(const char *filename); +int datafile_add_data(DATAFILE_OUT *df, int size, void *data); +int datafile_add_item(DATAFILE_OUT *df, int type, int id, int size, void *data); +int datafile_finish(DATAFILE_OUT *df); -- cgit 1.4.1