mirror of
https://github.com/goatcorp/Dalamud.git
synced 2026-02-21 15:27:43 +01:00
Clear args
This commit is contained in:
parent
33166804c1
commit
4cc3d4b3e0
8 changed files with 59 additions and 2 deletions
|
|
@ -54,6 +54,15 @@ public abstract unsafe class AddonArgs
|
||||||
return name == addonName;
|
return name == addonName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clears this AddonArgs values.
|
||||||
|
/// </summary>
|
||||||
|
internal virtual void Clear()
|
||||||
|
{
|
||||||
|
this.addonName = null;
|
||||||
|
this.Addon = 0;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Helper method for ensuring the name of the addon is valid.
|
/// Helper method for ensuring the name of the addon is valid.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -41,4 +41,14 @@ public class AddonReceiveEventArgs : AddonArgs, ICloneable
|
||||||
|
|
||||||
/// <inheritdoc cref="Clone"/>
|
/// <inheritdoc cref="Clone"/>
|
||||||
object ICloneable.Clone() => this.Clone();
|
object ICloneable.Clone() => this.Clone();
|
||||||
|
|
||||||
|
/// <inheritdoc cref="AddonArgs.Clear"/>
|
||||||
|
internal override void Clear()
|
||||||
|
{
|
||||||
|
base.Clear();
|
||||||
|
this.AtkEventType = default;
|
||||||
|
this.EventParam = default;
|
||||||
|
this.AtkEvent = default;
|
||||||
|
this.Data = default;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,4 +38,12 @@ public class AddonRefreshArgs : AddonArgs, ICloneable
|
||||||
|
|
||||||
/// <inheritdoc cref="Clone"/>
|
/// <inheritdoc cref="Clone"/>
|
||||||
object ICloneable.Clone() => this.Clone();
|
object ICloneable.Clone() => this.Clone();
|
||||||
|
|
||||||
|
/// <inheritdoc cref="AddonArgs.Clear"/>
|
||||||
|
internal override void Clear()
|
||||||
|
{
|
||||||
|
base.Clear();
|
||||||
|
this.AtkValueCount = default;
|
||||||
|
this.AtkValues = default;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
|
namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Addon argument data for OnRequestedUpdate events.
|
/// Addon argument data for OnRequestedUpdate events.
|
||||||
|
|
@ -31,4 +31,12 @@ public class AddonRequestedUpdateArgs : AddonArgs, ICloneable
|
||||||
|
|
||||||
/// <inheritdoc cref="Clone"/>
|
/// <inheritdoc cref="Clone"/>
|
||||||
object ICloneable.Clone() => this.Clone();
|
object ICloneable.Clone() => this.Clone();
|
||||||
|
|
||||||
|
/// <inheritdoc cref="AddonArgs.Clear"/>
|
||||||
|
internal override void Clear()
|
||||||
|
{
|
||||||
|
base.Clear();
|
||||||
|
this.NumberArrayData = default;
|
||||||
|
this.StringArrayData = default;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using FFXIVClientStructs.FFXIV.Component.GUI;
|
using FFXIVClientStructs.FFXIV.Component.GUI;
|
||||||
|
|
||||||
namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
|
namespace Dalamud.Game.Addon.Lifecycle.AddonArgTypes;
|
||||||
|
|
||||||
|
|
@ -38,4 +38,12 @@ public class AddonSetupArgs : AddonArgs, ICloneable
|
||||||
|
|
||||||
/// <inheritdoc cref="Clone"/>
|
/// <inheritdoc cref="Clone"/>
|
||||||
object ICloneable.Clone() => this.Clone();
|
object ICloneable.Clone() => this.Clone();
|
||||||
|
|
||||||
|
/// <inheritdoc cref="AddonArgs.Clear"/>
|
||||||
|
internal override void Clear()
|
||||||
|
{
|
||||||
|
base.Clear();
|
||||||
|
this.AtkValueCount = default;
|
||||||
|
this.AtkValues = default;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -35,4 +35,11 @@ public class AddonUpdateArgs : AddonArgs, ICloneable
|
||||||
|
|
||||||
/// <inheritdoc cref="Clone"/>
|
/// <inheritdoc cref="Clone"/>
|
||||||
object ICloneable.Clone() => this.Clone();
|
object ICloneable.Clone() => this.Clone();
|
||||||
|
|
||||||
|
/// <inheritdoc cref="AddonArgs.Clear"/>
|
||||||
|
internal override void Clear()
|
||||||
|
{
|
||||||
|
base.Clear();
|
||||||
|
this.TimeDeltaInternal = default;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -239,6 +239,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
}
|
}
|
||||||
|
|
||||||
using var returner = this.argsPool.Rent(out AddonSetupArgs arg);
|
using var returner = this.argsPool.Rent(out AddonSetupArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
arg.AtkValueCount = valueCount;
|
arg.AtkValueCount = valueCount;
|
||||||
arg.AtkValues = (nint)values;
|
arg.AtkValues = (nint)values;
|
||||||
|
|
@ -271,6 +272,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
}
|
}
|
||||||
|
|
||||||
using var returner = this.argsPool.Rent(out AddonFinalizeArgs arg);
|
using var returner = this.argsPool.Rent(out AddonFinalizeArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)atkUnitBase[0];
|
arg.Addon = (nint)atkUnitBase[0];
|
||||||
this.InvokeListenersSafely(AddonEvent.PreFinalize, arg);
|
this.InvokeListenersSafely(AddonEvent.PreFinalize, arg);
|
||||||
|
|
||||||
|
|
@ -287,6 +289,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
private void OnAddonDraw(AtkUnitBase* addon)
|
private void OnAddonDraw(AtkUnitBase* addon)
|
||||||
{
|
{
|
||||||
using var returner = this.argsPool.Rent(out AddonDrawArgs arg);
|
using var returner = this.argsPool.Rent(out AddonDrawArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
this.InvokeListenersSafely(AddonEvent.PreDraw, arg);
|
this.InvokeListenersSafely(AddonEvent.PreDraw, arg);
|
||||||
|
|
||||||
|
|
@ -305,6 +308,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
private void OnAddonUpdate(AtkUnitBase* addon, float delta)
|
private void OnAddonUpdate(AtkUnitBase* addon, float delta)
|
||||||
{
|
{
|
||||||
using var returner = this.argsPool.Rent(out AddonUpdateArgs arg);
|
using var returner = this.argsPool.Rent(out AddonUpdateArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
arg.TimeDeltaInternal = delta;
|
arg.TimeDeltaInternal = delta;
|
||||||
this.InvokeListenersSafely(AddonEvent.PreUpdate, arg);
|
this.InvokeListenersSafely(AddonEvent.PreUpdate, arg);
|
||||||
|
|
@ -326,6 +330,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
var result = false;
|
var result = false;
|
||||||
|
|
||||||
using var returner = this.argsPool.Rent(out AddonRefreshArgs arg);
|
using var returner = this.argsPool.Rent(out AddonRefreshArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
arg.AtkValueCount = valueCount;
|
arg.AtkValueCount = valueCount;
|
||||||
arg.AtkValues = (nint)values;
|
arg.AtkValues = (nint)values;
|
||||||
|
|
@ -349,6 +354,7 @@ internal unsafe class AddonLifecycle : IInternalDisposableService
|
||||||
private void OnRequestedUpdate(AtkUnitBase* addon, NumberArrayData** numberArrayData, StringArrayData** stringArrayData)
|
private void OnRequestedUpdate(AtkUnitBase* addon, NumberArrayData** numberArrayData, StringArrayData** stringArrayData)
|
||||||
{
|
{
|
||||||
using var returner = this.argsPool.Rent(out AddonRequestedUpdateArgs arg);
|
using var returner = this.argsPool.Rent(out AddonRequestedUpdateArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
arg.NumberArrayData = (nint)numberArrayData;
|
arg.NumberArrayData = (nint)numberArrayData;
|
||||||
arg.StringArrayData = (nint)stringArrayData;
|
arg.StringArrayData = (nint)stringArrayData;
|
||||||
|
|
|
||||||
|
|
@ -86,6 +86,7 @@ internal unsafe class AddonLifecycleReceiveEventListener : IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
using var returner = this.argsPool.Rent(out AddonReceiveEventArgs arg);
|
using var returner = this.argsPool.Rent(out AddonReceiveEventArgs arg);
|
||||||
|
arg.Clear();
|
||||||
arg.Addon = (nint)addon;
|
arg.Addon = (nint)addon;
|
||||||
arg.AtkEventType = (byte)eventType;
|
arg.AtkEventType = (byte)eventType;
|
||||||
arg.EventParam = eventParam;
|
arg.EventParam = eventParam;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue