wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
Loading...
Searching...
No Matches
wowlib::formats::blp::detail::StoredLayout Struct Reference

The on-disk placement a read recorded, replayed by write() while the payloads are unmodified so unusual files (inter-mip gaps, trailing bytes, non-contiguous or shared mip placement) still round-trip byte-perfectly. More...

#include <wowlib/formats/blp/blp.hpp>

Classes

struct  Run
 One run of file bytes covered by neither the header region nor any mip payload (an inter-mip gap or a trailing tail). More...

Public Member Functions

bool operator== (const StoredLayout &) const =default

Public Attributes

std::array< std::uint32_t, BlpMaxMips > offsets {}
 The header's offset table, verbatim.
std::array< std::uint32_t, BlpMaxMips > sizes {}
 The header's size table, verbatim.
std::uint32_t fileSize = 0
 The original total file size.
std::vector< Run > gaps
 Uncovered byte runs, verbatim.
bool engaged = false
 Whether a read recorded this layout.

Detailed Description

The on-disk placement a read recorded, replayed by write() while the payloads are unmodified so unusual files (inter-mip gaps, trailing bytes, non-contiguous or shared mip placement) still round-trip byte-perfectly.

Disengaged (fresh entity, or payload sizes changed): write() lays the file out canonically — header, then the levels back-to-back in level order.

Definition at line 107 of file blp.hpp.

Member Function Documentation

◆ operator==()

bool wowlib::formats::blp::detail::StoredLayout::operator== ( const StoredLayout & ) const
default

Member Data Documentation

◆ engaged

bool wowlib::formats::blp::detail::StoredLayout::engaged = false

Whether a read recorded this layout.

Definition at line 123 of file blp.hpp.

◆ fileSize

std::uint32_t wowlib::formats::blp::detail::StoredLayout::fileSize = 0

The original total file size.

Definition at line 121 of file blp.hpp.

◆ gaps

std::vector<Run> wowlib::formats::blp::detail::StoredLayout::gaps

Uncovered byte runs, verbatim.

Definition at line 122 of file blp.hpp.

◆ offsets

std::array<std::uint32_t, BlpMaxMips> wowlib::formats::blp::detail::StoredLayout::offsets {}

The header's offset table, verbatim.

Definition at line 117 of file blp.hpp.

◆ sizes

std::array<std::uint32_t, BlpMaxMips> wowlib::formats::blp::detail::StoredLayout::sizes {}

The header's size table, verbatim.

Definition at line 119 of file blp.hpp.


The documentation for this struct was generated from the following file: