mirror of
https://github.com/galaxyhaxz/devilution
synced 2024-11-14 16:29:02 +00:00
46 lines
1.9 KiB
C
46 lines
1.9 KiB
C
|
//HEADER_GOES_HERE
|
||
|
#ifndef __MPQAPI_H__
|
||
|
#define __MPQAPI_H__
|
||
|
|
||
|
extern int sgdwMpqOffset; // idb
|
||
|
extern char mpq_buf[4096];
|
||
|
extern _HASHENTRY *sgpHashTbl;
|
||
|
extern _bool save_archive_modified; // weak
|
||
|
extern _BLOCKENTRY *sgpBlockTbl;
|
||
|
extern _bool save_archive_open; // weak
|
||
|
|
||
|
_bool mpqapi_set_hidden(char *pszArchive, _bool hidden);
|
||
|
void mpqapi_store_creation_time(char *pszArchive, int dwChar);
|
||
|
_bool mpqapi_reg_load_modification_time(char *dst, int size);
|
||
|
void mpqapi_xor_buf(char *pbData);
|
||
|
void mpqapi_store_default_time(DWORD dwChar);
|
||
|
_bool mpqapi_reg_store_modification_time(char *pbData, int dwLen);
|
||
|
_BLOCKENTRY *j_mpqapi_remove_hash_entry(char *pszName);
|
||
|
void mpqapi_remove_hash_entry(char *pszName);
|
||
|
void mpqapi_free_block(int block_offset, int block_size);
|
||
|
_BLOCKENTRY *mpqapi_new_block(int *block_index);
|
||
|
int mpqapi_get_hash_index_of_path(char *pszName);
|
||
|
int mpqapi_get_hash_index(short index, int hash_a, int hash_b, int locale);
|
||
|
void mpqapi_remove_hash_entries(_bool (__stdcall *fnGetName)(int, char *));
|
||
|
_bool mpqapi_write_file(char *pszName, char *pbData, int dwLen);
|
||
|
_BLOCKENTRY *mpqapi_add_file(char *pszName, _BLOCKENTRY *pBlk, int block_index);
|
||
|
_bool mpqapi_write_file_contents(char *pszName, char *pbData, int dwLen, _BLOCKENTRY *pBlk);
|
||
|
int mpqapi_find_free_block(int size, int *block_size);
|
||
|
void mpqapi_rename(char *pszOld, char *pszNew);
|
||
|
_bool mpqapi_has_file(char *pszName);
|
||
|
_bool mpqapi_open_archive(char *pszArchive, _bool hidden, int dwChar);
|
||
|
_bool mpqapi_parse_archive_header(_FILEHEADER *pHdr, int *pdwNextFileStart);
|
||
|
void mpqapi_close_archive(char *pszArchive, _bool bFree, int dwChar);
|
||
|
void mpqapi_store_modified_time(char *pszArchive, int dwChar);
|
||
|
void mpqapi_flush_and_close(char *pszArchive, _bool bFree, int dwChar);
|
||
|
_bool mpqapi_write_header();
|
||
|
_bool mpqapi_write_block_table();
|
||
|
_bool mpqapi_write_hash_table();
|
||
|
_bool mpqapi_can_seek();
|
||
|
|
||
|
/* data */
|
||
|
|
||
|
extern HANDLE sghArchive; // idb
|
||
|
|
||
|
#endif /* __MPQAPI_H__ */
|