Current News Archived News Search News Discussion Forum Old Forum Install Programs More Downloads... Troubleshooting Source Code Format Specs. Misc. Information Non-SF Stuff Links Small banner for links to this site: |
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
|