Table of Contents

Struct FrameEventArgs

Namespace
SkyrimForge
Assembly
SkyrimForge.dll

Arguments for OnFrame.

public readonly struct FrameEventArgs : IEquatable<FrameEventArgs>
Implements
Inherited Members

Constructors

FrameEventArgs(TimeSpan, TimeSpan)

Arguments for OnFrame.

public FrameEventArgs(TimeSpan Interval, TimeSpan UnpausedTime)

Parameters

Interval TimeSpan

How long the last frame took, from the game's GetSecondsSinceLastFrame. Every subscriber handling a frame reads the same value.

A running total measures the time the game advanced, not elapsed time. The game stops advancing while a message box is open, so those spans contribute nothing to the total. Summing every interval across one run gave 17.06 seconds where the wall clock gave 27.87, and the 10.81-second difference is the time that run spent in two dialogs. The total advances at the rate of the wall clock while the inventory or the console is open. GlobalFunctions.GetDurationOfApplicationRunTime advances while a message box is open.

UnpausedTime TimeSpan

The unpaused time since the first frame. It is the real time between frames, summed over the frames on which the game is not paused, with each frame counted as at most 0.25 seconds.

Properties

Interval

How long the last frame took, from the game's GetSecondsSinceLastFrame. Every subscriber handling a frame reads the same value.

A running total measures the time the game advanced, not elapsed time. The game stops advancing while a message box is open, so those spans contribute nothing to the total. Summing every interval across one run gave 17.06 seconds where the wall clock gave 27.87, and the 10.81-second difference is the time that run spent in two dialogs. The total advances at the rate of the wall clock while the inventory or the console is open. GlobalFunctions.GetDurationOfApplicationRunTime advances while a message box is open.

public TimeSpan Interval { get; init; }

Property Value

TimeSpan

UnpausedTime

The unpaused time since the first frame. It is the real time between frames, summed over the frames on which the game is not paused, with each frame counted as at most 0.25 seconds.

public TimeSpan UnpausedTime { get; init; }

Property Value

TimeSpan

Methods

Deconstruct(out TimeSpan, out TimeSpan)

public void Deconstruct(out TimeSpan Interval, out TimeSpan UnpausedTime)

Parameters

Interval TimeSpan
UnpausedTime TimeSpan

Equals(FrameEventArgs)

public bool Equals(FrameEventArgs other)

Parameters

other FrameEventArgs

Returns

bool

Equals(object)

public override bool Equals(object obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string

Operators

operator ==(FrameEventArgs, FrameEventArgs)

public static bool operator ==(FrameEventArgs left, FrameEventArgs right)

Parameters

left FrameEventArgs
right FrameEventArgs

Returns

bool

operator !=(FrameEventArgs, FrameEventArgs)

public static bool operator !=(FrameEventArgs left, FrameEventArgs right)

Parameters

left FrameEventArgs
right FrameEventArgs

Returns

bool