feat(build): add StormLib (#4)

* feat(app): add StormLib

* feat(app): add OpenArchives

* feat(util): update SFile to work with StormLib

* feat(app): update SFile

* feat(util): update SFile with logging (Windows only)

* feat(ui): implemented termination w/o notice

* chore(build): update StormLib

* chore(util): replace std::string with SStr* functions

* fix(stormlib): dwFlags argument for SFileOpenPatchArchive

* chore(ui): add Script_* stubs

* chore(util): clean up SFile::OpenEx

* chore(build): update StormLib

---------

Co-authored-by: Phaneron <superp00t@tutanota.com>
This commit is contained in:
VDm 2024-02-12 02:19:18 +04:00 committed by GitHub
parent c5e0034604
commit f86f6d6d09
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
323 changed files with 73232 additions and 75 deletions

View file

@ -3,8 +3,6 @@
#include <cstdint>
#include <cstdlib>
#include <fstream>
#include <iostream>
class SArchive;
struct SOVERLAPPED;
@ -20,7 +18,7 @@ class SFile {
public:
// Static functions
static int32_t Close(SFile*);
static size_t GetFileSize(SFile*, size_t*);
static uint32_t GetFileSize(SFile*, uint32_t*);
static int32_t IsStreamingMode(void);
static int32_t Load(SArchive*, const char*, void**, size_t*, size_t, uint32_t, SOVERLAPPED*);
static int32_t Open(const char*, SFile**);
@ -33,9 +31,7 @@ class SFile {
static int32_t GetDataPath(char* path, size_t capacity);
// Member variables
const char* m_filename;
Blizzard::File::StreamRecord* m_stream; // TODO Proper implementation
uint64_t m_size; // TODO Proper implementation
void* m_handle;
};
#endif