Table of Contents

Class Exp2Data

Namespace
WoWLib.Formats.M2.Chunked.Record
Assembly
WoWLib.dll

The EXP2 chunk payload: extended particle records, one per particle emitter.

public class Exp2Data : IDisposable
Inheritance
Exp2Data
Implements
Inherited Members

Constructors

Exp2Data()

public Exp2Data()

Exp2Data(Exp2Data)

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

public Exp2Data(Exp2Data other)

Parameters

other Exp2Data

Properties

Content

Extended particle parameters, one per particle emitter.

public Vector<M2ExtendedParticle> Content { get; }

Property Value

Vector<M2ExtendedParticle>

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()

Equals(object?)

Determines whether the specified object is equal to the current object.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current object.

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Reference-identity hash (the C++ type has no hash to mirror).

public override int GetHashCode()

Returns

int

Read(byte[])

Deserialize file bytes into this entity, replacing its contents. Offsets resolve against the given buffer; sequence-gated data is read inline.

public void Read(byte[] data)

Parameters

data byte[]

the file (or containing-chunk payload) bytes

Validate()

Check the logical integrity contracts this file must satisfy to LOAD in the client — companion-array counts, lookup ranges — 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

every violated contract, in member order

Write()

Serialize this entity in wowlib's canonical layout (an offset format has no byte-perfect round-trip guarantee; a written entity re-reads equal instead).

public byte[] Write()

Returns

byte[]

the file bytes

Operators

operator ==(Exp2Data?, Exp2Data?)

public static bool operator ==(Exp2Data? l, Exp2Data? r)

Parameters

l Exp2Data
r Exp2Data

Returns

bool

operator !=(Exp2Data?, Exp2Data?)

public static bool operator !=(Exp2Data? l, Exp2Data? r)

Parameters

l Exp2Data
r Exp2Data

Returns

bool