diff options
Diffstat (limited to 'src/tar_type.h')
-rw-r--r-- | src/tar_type.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/tar_type.h b/src/tar_type.h new file mode 100644 index 000000000..d032a0809 --- /dev/null +++ b/src/tar_type.h @@ -0,0 +1,31 @@ +/* $Id$ */ + +#ifndef TAR_TYPE_H + +/** @file tar_type.h Structs, typedefs and macros used for TAR file handling. */ + +#include <map> +#include <string> + +/** The define of a TarList. */ +struct TarListEntry { + const char *filename; +}; + +struct TarFileListEntry { + TarListEntry *tar; + size_t size; + size_t position; +}; + +typedef std::map<std::string, TarListEntry *> TarList; +typedef std::map<std::string, TarFileListEntry> TarFileList; +extern TarList _tar_list; +extern TarFileList _tar_filelist; + +#define FOR_ALL_TARS(tar) for (tar = _tar_filelist.begin(); tar != _tar_filelist.end(); tar++) + +typedef bool FioTarFileListCallback(const char *filename, int size, void *userdata); +FILE *FioTarFileList(const char *tar, const char *mode, size_t *filesize, FioTarFileListCallback *callback, void *userdata); + +#endif /* TAR_TYPE_H */ |