|
wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
|
The WMO group-file entities (namespace wowlib::formats::wmo::group): the MOGP container body (geometry, batches, collision, liquid and the later-expansion light/volume references) and the group file wrapping it. More...
#include <array>#include <cstdint>#include <format>#include <utility>#include <vector>#include <wowlib/core/client_builds.hpp>#include <wowlib/core/client_version.hpp>#include <wowlib/core/lang.hpp>#include <wowlib/formats/common/chunked_file.hpp>#include <wowlib/formats/common/fourcc.hpp>#include <wowlib/formats/common/types.hpp>#include <wowlib/formats/common/version_slot.hpp>#include <wowlib/formats/wmo/boundaries.hpp>#include <wowlib/formats/wmo/group/chunks/geometry.hpp>#include <wowlib/formats/wmo/group/chunks/header.hpp>#include <wowlib/formats/wmo/group/chunks/light.hpp>#include <wowlib/formats/wmo/group/chunks/liquid.hpp>Go to the source code of this file.
Classes | |
| struct | wowlib::formats::wmo::group::WMOGroupBodyBase |
| The version-agnostic base of every WMOGroupBody<V> (welded as "WMOGroupBody"). More... | |
| struct | wowlib::formats::wmo::group::WMOGroupBase |
| The version-agnostic base of every WMOGroup<V> (welded as "WMOGroup"). More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBodyCata |
| cata+ (4.0) group-body chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBodyMop |
| MoP+ (5.0) group-body chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBodyWod |
| WoD+ (6.0) group-body chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBodyLegion |
| legion+ (7.0.1) group-body chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBody81 |
| 8.1+ group-body light-set chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBody83 |
| 8.3+ group-body chunks. More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBody90 |
| 9.0+ group-body chunks (large-mesh indices and the volume/light refs). More... | |
| struct | wowlib::formats::wmo::group::detail::GroupBody100 |
| 10.0+ (Dragonflight) group-body chunks: the query surface and the second vertex-color weights. More... | |
| struct | wowlib::formats::wmo::group::detail::WMOGroupBody< V > |
| The MOGP container payload for one client version. More... | |
| struct | wowlib::formats::wmo::group::detail::WMOGroup< V > |
| One WMO group file for one client version: the format version (MVER) and the MOGP container holding the group's geometry. More... | |
Namespaces | |
| namespace | wowlib |
| namespace | wowlib::formats |
| namespace | wowlib::formats::wmo |
| namespace | wowlib::formats::wmo::group |
| The WMO group-file entities: WMOGroup, WMOGroupBody and their per-version classes. | |
| namespace | wowlib::formats::wmo::group::detail |
Typedefs | |
| template<ClientVersion V> | |
| using | wowlib::formats::wmo::group::WMOGroupBody |
| The MOGP payload — the canonicalizing face of detail::WMOGroupBody: every client version maps to its range's first grid version (WmoGroupPivots). | |
| template<ClientVersion V> | |
| using | wowlib::formats::wmo::group::WMOGroup |
| One WMO group file — the canonicalizing face of detail::WMOGroup (same pivots as the body it contains). | |
The WMO group-file entities (namespace wowlib::formats::wmo::group): the MOGP container body (geometry, batches, collision, liquid and the later-expansion light/volume references) and the group file wrapping it.
The body's version-gated chunks live in conditionally-inherited trait bases — one unwelded struct per availability range, in wmo::group::detail — while the always-present chunks are the body's own members. A version's WMOGroupBody therefore carries ONLY the fields that version has (setting an absent one is a compile error), and welder flattens the active traits' members onto its binding. The group binary structs are in wmo::group::chunks.
Definition in file group.hpp.