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 /* License information for this code is in license.txt */
3 #ifndef STORM_H_INCLUDED
4 #define STORM_H_INCLUDED
6 #include <windows.h>
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
12 // This no longer needs to be called
13 extern HINSTANCE LoadStorm(char * DllFileName);
15 #define SFILE_OPEN_HARD_DISK_FILE 0x0000 //Open archive without regard to the drive type it resides on
16 #define SFILE_OPEN_CD_ROM_FILE 0x0001 //Open the archive only if it is on a CD-ROM
18 #define SFILE_SEARCH_CURRENT_ONLY 0x00 //Used with SFileOpenFileEx; only the archive with the handle specified will be searched for the file
19 #define SFILE_SEARCH_ALL_OPEN 0x01 //SFileOpenFileEx will look through all open archives for the file
21 #define MPQHANDLE HANDLE
23 // Storm Function Prototypes
24 extern BOOL (WINAPI* SFileOpenArchive)(LPCSTR lpFilename, DWORD dwPriority, DWORD dwFlags, MPQHANDLE *hMPQ);
25 extern BOOL (WINAPI* SFileCloseArchive)(MPQHANDLE hMPQ);
26 extern BOOL (WINAPI* SFileOpenFile)(LPCSTR lpFileName, MPQHANDLE *hFile);
27 extern BOOL (WINAPI* SFileOpenFileEx)(MPQHANDLE hMPQ, LPCSTR lpFileName, DWORD dwSearchScope, MPQHANDLE *hFile);
28 extern BOOL (WINAPI* SFileCloseFile)(MPQHANDLE hFile);
29 extern DWORD (WINAPI* SFileGetFileSize)(MPQHANDLE hFile, LPDWORD lpFileSizeHigh);
30 extern DWORD (WINAPI* SFileSetFilePointer)(MPQHANDLE hFile, long lDistanceToMove, PLONG lplDistanceToMoveHigh, DWORD dwMoveMethod);
31 extern BOOL (WINAPI* SFileReadFile)(MPQHANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped);
32 extern LCID (WINAPI* SFileSetLocale)(LCID nNewLocale);
33 extern BOOL (WINAPI* SFileDestroy)();
34 extern BOOL (WINAPI* SFileGetArchiveName)(MPQHANDLE hMPQ, LPCSTR lpBuffer, DWORD dwBufferLength);
35 extern BOOL (WINAPI* SFileGetFileName)(MPQHANDLE hFile, LPCSTR lpBuffer, DWORD dwBufferLength);
36 extern BOOL (WINAPI* SFileGetFileArchive)(MPQHANDLE hFile, MPQHANDLE *hMPQ);
37 extern BOOL (WINAPI* SFileGetBasePath)(LPCSTR lpBuffer, DWORD dwBufferLength);
38 extern BOOL (WINAPI* SFileSetBasePath)(LPCSTR lpNewBasePath);
40 #ifdef __cplusplus
41 }; // extern "C"
42 #endif
44 #endif
|