|
wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
|
One opened member of the chain, for introspection and tests. More...
#include <wowlib/fs/mpq/mpq_storage.hpp>
Public Attributes | |
| std::filesystem::path | path |
| The archive file or loose-dir root on disk. | |
| bool | isDirectory = false |
| true => served from loose files below. | |
| void * | handle = nullptr |
| StormLib HANDLE (archive members). | |
| std::unique_ptr< std::mutex > | mtx |
| Serializes StormLib calls (archive members). | |
| bool | patched = false |
| Whether wow-update patch archives are attached (Cata+). | |
| std::unordered_map< std::string, std::filesystem::path > | loose |
| Loose members: canonical in-game path -> the file on disk. | |
One opened member of the chain, for introspection and tests.
Exactly one source is active — a StormLib archive, or a loose directory whose files are indexed by canonical in-game path — as selected by isDirectory.
Definition at line 98 of file mpq_storage.hpp.
| void* wowlib::fs::MpqStorage::OpenedArchive::handle = nullptr |
StormLib HANDLE (archive members).
Definition at line 102 of file mpq_storage.hpp.
| bool wowlib::fs::MpqStorage::OpenedArchive::isDirectory = false |
true => served from loose files below.
Definition at line 100 of file mpq_storage.hpp.
| std::unordered_map<std::string, std::filesystem::path> wowlib::fs::MpqStorage::OpenedArchive::loose |
Loose members: canonical in-game path -> the file on disk.
Built once at open, read-only after, so reads need no lock. Case-insensitive lookup falls out of both sides being in canonical (lowercased) form.
Definition at line 114 of file mpq_storage.hpp.
| std::unique_ptr<std::mutex> wowlib::fs::MpqStorage::OpenedArchive::mtx |
Serializes StormLib calls (archive members).
Definition at line 103 of file mpq_storage.hpp.
| bool wowlib::fs::MpqStorage::OpenedArchive::patched = false |
Whether wow-update patch archives are attached (Cata+).
A patched archive serves files ADDED by its updates too, which StormLib's plain has-file probe cannot see — lookups go through the open call instead.
Definition at line 109 of file mpq_storage.hpp.
| std::filesystem::path wowlib::fs::MpqStorage::OpenedArchive::path |
The archive file or loose-dir root on disk.
Definition at line 99 of file mpq_storage.hpp.