about summary refs log tree commit diff
path: root/src/datafile.h
blob: 4e49fa031ed1296f0b733f6def9855bbb5baad84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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);