Commit | Line | Data |
14362b19 |
1 | #ifndef STORM_H_INCLUDED\r |
2 | #define STORM_H_INCLUDED\r |
3 | \r |
4 | #include <windows.h>\r |
5 | \r |
6 | #ifdef __cplusplus\r |
7 | extern "C" {\r |
8 | #endif\r |
9 | \r |
10 | // This no longer needs to be called\r |
11 | extern HINSTANCE LoadStorm(char * DllFileName);\r |
12 | \r |
13 | #define SFILE_OPEN_HARD_DISK_FILE 0x0000 //Open archive without regard to the drive type it resides on\r |
14 | #define SFILE_OPEN_CD_ROM_FILE 0x0001 //Open the archive only if it is on a CD-ROM\r |
15 | \r |
16 | #define SFILE_SEARCH_CURRENT_ONLY 0x00 //Used with SFileOpenFileEx; only the archive with the handle specified will be searched for the file\r |
17 | #define SFILE_SEARCH_ALL_OPEN 0x01 //SFileOpenFileEx will look through all open archives for the file\r |
18 | \r |
19 | #define MPQHANDLE HANDLE\r |
20 | \r |
21 | // Storm Function Prototypes\r |
22 | typedef BOOL (WINAPI* funcSFileOpenArchive)(LPCSTR lpFilename, DWORD dwPriority, DWORD dwFlags, MPQHANDLE *hMPQ);\r |
23 | typedef BOOL (WINAPI* funcSFileCloseArchive)(MPQHANDLE hMPQ);\r |
24 | typedef BOOL (WINAPI* funcSFileOpenFile)(LPCSTR lpFileName, MPQHANDLE *hFile);\r |
25 | typedef BOOL (WINAPI* funcSFileOpenFileEx)(MPQHANDLE hMPQ, LPCSTR lpFileName, DWORD dwSearchScope, MPQHANDLE *hFile);\r |
26 | typedef BOOL (WINAPI* funcSFileCloseFile)(MPQHANDLE hFile);\r |
27 | typedef DWORD (WINAPI* funcSFileGetFileSize)(MPQHANDLE hFile, LPDWORD lpFileSizeHigh);\r |
28 | typedef DWORD (WINAPI* funcSFileSetFilePointer)(MPQHANDLE hFile, long lDistanceToMove, PLONG lplDistanceToMoveHigh, DWORD dwMoveMethod);\r |
29 | typedef BOOL (WINAPI* funcSFileReadFile)(MPQHANDLE hFile,LPVOID lpBuffer,DWORD nNumberOfBytesToRead,LPDWORD lpNumberOfBytesRead,LPOVERLAPPED lpOverlapped);\r |
30 | typedef LCID (WINAPI* funcSFileSetLocale)(LCID nNewLocale);\r |
31 | typedef BOOL (WINAPI* funcSFileDestroy)();\r |
32 | typedef BOOL (WINAPI* funcSFileGetArchiveName)(MPQHANDLE hMPQ, LPCSTR lpBuffer, DWORD dwBufferLength);\r |
33 | typedef BOOL (WINAPI* funcSFileGetFileName)(MPQHANDLE hFile, LPCSTR lpBuffer, DWORD dwBufferLength);\r |
34 | typedef BOOL (WINAPI* funcSFileGetFileArchive)(MPQHANDLE hFile, MPQHANDLE *hMPQ);\r |
35 | typedef BOOL (WINAPI* funcSFileGetBasePath)(LPCSTR lpBuffer, DWORD dwBufferLength);\r |
36 | typedef BOOL (WINAPI* funcSFileSetBasePath)(LPCSTR lpNewBasePath);\r |
37 | \r |
38 | // Storm Function Names\r |
39 | extern funcSFileCloseArchive SFileCloseArchive;\r |
40 | extern funcSFileCloseFile SFileCloseFile;\r |
41 | extern funcSFileDestroy SFileDestroy;\r |
42 | extern funcSFileGetFileArchive SFileGetFileArchive;\r |
43 | extern funcSFileGetFileSize SFileGetFileSize;\r |
44 | extern funcSFileOpenArchive SFileOpenArchive;\r |
45 | extern funcSFileOpenFile SFileOpenFile;\r |
46 | extern funcSFileOpenFileEx SFileOpenFileEx;\r |
47 | extern funcSFileReadFile SFileReadFile;\r |
48 | extern funcSFileSetBasePath SFileSetBasePath;\r |
49 | extern funcSFileSetFilePointer SFileSetFilePointer;\r |
50 | extern funcSFileSetLocale SFileSetLocale;\r |
51 | extern funcSFileGetBasePath SFileGetBasePath;\r |
52 | extern funcSFileGetArchiveName SFileGetArchiveName;\r |
53 | extern funcSFileGetFileName SFileGetFileName;\r |
54 | \r |
55 | #ifdef __cplusplus\r |
56 | }; // extern "C" \r |
57 | #endif\r |
58 | \r |
59 | #endif\r |