Table of Contents

Class WDTFogs

Namespace
WoWLib.Formats.WDT.Fogs
Assembly
WoWLib.dll

A _fogs.wdt volumetric-fog satellite (Legion 7.2.5+), abstract over the client version. Construct a concrete version with WDTFogs.for_version(expansion). See https://wowdev.wiki/WDT.

public class WDTFogs : IDisposable
Inheritance
WDTFogs
Implements
Derived
Inherited Members

Constructors

WDTFogs()

public WDTFogs()

WDTFogs(WDTFogs)

Copy-construct: a deep copy of other (the C++ copy constructor).

public WDTFogs(WDTFogs other)

Parameters

other WDTFogs

Properties

Mver

The file format version: 1 since Legion 7.2.5, 2 since 11.0.0.54935 (adds VFEX).

public uint Mver { get; set; }

Property Value

uint

Methods

Dispose()

Release the native object now. Optional: the finalizer releases it on collection anyway - dispose (or using) when you want native memory back promptly.

public virtual void Dispose()

EnsureValid()

Validate and raise on the first error instead of returning a report — the assert-style face of validate().

public void EnsureValid()

ForVersion(ClientVersion)

A fresh WDTFogs for an exact client version — the only axis that can name a Classic client, whose files follow the engine its build was cut on rather than its 1.15 / 4.4 version number.

public static WDTFogs ForVersion(ClientVersion version)

Parameters

version ClientVersion

Returns

WDTFogs

ForVersion(Expansion)

A fresh WDTFogs for the given era, as the family base — the dynamic twin of the typed Era factories.

public static WDTFogs ForVersion(Expansion era)

Parameters

era Expansion

Returns

WDTFogs

Read(byte[])

Deserialize file bytes into this entity, replacing its contents. Unmodeled chunks are preserved so an unmodified entity rewrites byte-for-byte.

public void Read(byte[] data)

Parameters

data byte[]

Validate()

Check the logical integrity contracts this file must satisfy to LOAD in the client — companion-chunk counts, index ranges, flag/presence coherence — which write() deliberately never enforces. Call it before writing when you want to know the result will load. A file read from a client and left unmodified reports no errors; warnings mark states real client files ship.

public ValidationReport Validate()

Returns

ValidationReport

Write()

Serialize this entity.

public byte[] Write()

Returns

byte[]