wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
Loading...
Searching...
No Matches
Concepts
Here is a list of all concepts with brief descriptions:
 Nwowlib
 Ndb
 RTableRecordA type the table engine can carry as its record: a flat generated (or hand-written test) struct naming its client version and table
 Nformats
 Ndetail
 RHasConvertStep
 RHasValidateExtraA type carrying the imperative half of its contracts (see the validateExtra hook)
 RSlotSequenceA container of independent SLOTS rather than one logical array — a chunk that may appear several times, each occurrence complete in itself (Repeated<>, opting in with ValidationSlots)
 RValidatableSequenceA member the walker can iterate element-wise: std::vector, std::array, Repeated<> and std::string all qualify
 Nm2
 ROffsetStringMemberA member serialized as an M2Array<char>: its bytes (NUL included) live in a data block, referenced by an M2Array{count, offset} slot
 ROffsetArrayMemberA member serialized as an M2Array{count, offset} reference to a separate data block — a std::vector (the block holds its element images) or a std::string
 RInlineRecordMemberA member serialized inline as a nested record: a non-trivial class the walker recurses into member-by-member at the current cursor (M2Track and friends)
 RInlineScalarMemberA member serialized as inline raw bytes: anything trivially copyable that is not an array/string reference (scalars, C3Vector, M2Range, …)
 ROffsetEntityA type the offset engine can read and write: it is an M2 offset block and declares the client version it is laid out for
 RChunkedEntityA type the chunk serializer can read and write: carries the round-trip bookkeeping and knows which client version it is laid out for
 RSelfSerializingA member type that owns its chunk-payload encoding: the serializer hands it the raw payload on read and the output buffer on write (StringBlock, ChunkBlob)
 RVersionedEntityAn entity the walker can gate by client version: anything carrying the static constexpr ClientVersion version every format entity declares (chunked files, M2 offset blocks, ADT tiles and map chunks alike)
 Nfs
 RListfileProviderThe pluggable path<->FileDataID database contract (CSV today, SQL later)
 RStorageBackendThe storage backend contract: what MpqStorage and CascStorage implement and ClientFileSystem composes over