about summary refs log tree commit diff
path: root/src/engine/datafile.h
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2007-05-24 20:54:08 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2007-05-24 20:54:08 +0000
commit82023866ab4c7483652e9d4605290e39ced3bec3 (patch)
treecbff99cb472b4434d18e8e1fe3c556ca194096a6 /src/engine/datafile.h
parent34e3df396630e9bb271ea8965869d23260900a7d (diff)
downloadzcatch-82023866ab4c7483652e9d4605290e39ced3bec3.tar.gz
zcatch-82023866ab4c7483652e9d4605290e39ced3bec3.zip
large change. moved around all source. splitted server and client into separate files
Diffstat (limited to 'src/engine/datafile.h')
-rw-r--r--src/engine/datafile.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/engine/datafile.h b/src/engine/datafile.h
new file mode 100644
index 00000000..4e49fa03
--- /dev/null
+++ b/src/engine/datafile.h
@@ -0,0 +1,20 @@
+
+// raw datafile access
+struct datafile;
+
+// read access
+datafile *datafile_load(const char *filename);
+datafile *datafile_load_old(const char *filename);
+void *datafile_get_data(datafile *df, int index);
+void *datafile_get_item(datafile *df, int index, int *type, int *id);
+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);
+void datafile_unload(datafile *df);
+
+// write access
+struct 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);