diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-15 10:24:49 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2007-12-15 10:24:49 +0000 |
| commit | a2566b3ebd93e0bbc55a920a7be08054a9377f11 (patch) | |
| tree | 44a4612805d894168fe4b3b4c065fccc1a1686e9 /src/engine/e_datafile.h | |
| parent | ac9873056aa1fe529b098f19ff31e9ffa0e016a2 (diff) | |
| download | zcatch-a2566b3ebd93e0bbc55a920a7be08054a9377f11.tar.gz zcatch-a2566b3ebd93e0bbc55a920a7be08054a9377f11.zip | |
cleaned up code structure a bit
Diffstat (limited to 'src/engine/e_datafile.h')
| -rw-r--r-- | src/engine/e_datafile.h | 27 |
1 files changed, 27 insertions, 0 deletions
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); |