2002-03-12 23:45:36 +00:00
|
|
|
#include <stdio.h>
|
|
|
|
|
|
|
|
#include <QF/hash.h>
|
|
|
|
#include <QF/pak.h>
|
|
|
|
|
|
|
|
typedef struct pack_s {
|
|
|
|
char *filename;
|
|
|
|
FILE *handle;
|
|
|
|
int numfiles;
|
|
|
|
int files_size;
|
|
|
|
dpackfile_t *files;
|
|
|
|
hashtab_t *file_hash;
|
2002-03-18 18:03:26 +00:00
|
|
|
|
|
|
|
dpackheader_t header;
|
|
|
|
|
|
|
|
int modified;
|
|
|
|
int old_numfiles;
|
2002-03-18 21:37:39 +00:00
|
|
|
int pad;
|
2002-03-12 23:45:36 +00:00
|
|
|
} pack_t;
|
|
|
|
|
|
|
|
pack_t *pack_new (const char *name);
|
|
|
|
void pack_del (pack_t *pack);
|
|
|
|
pack_t *pack_open (const char *name);
|
|
|
|
void pack_close (pack_t *pack);
|
2002-03-18 18:03:26 +00:00
|
|
|
pack_t *pack_create (const char *name);
|
|
|
|
int pack_add (pack_t *pack, const char *filename);
|
2002-03-18 21:37:39 +00:00
|
|
|
int pack_extract (pack_t *pack, dpackfile_t *pf);
|