Interface

ISimulatorState

USI.Core

Simulator-neutral runtime state whose native delivery mechanism may be a readable value, a system event, or another provider-specific transport.

public interface ISimulatorState

Events

PausedChanged

public event EventHandler<PausedStateChangedEventArgs> PausedChanged

Raised when simulation progression changes between paused and running.

Methods

TryGetActualSimulationRateAsync

public Task<USIResult<Double>> TryGetActualSimulationRateAsync()

Gets the simulation-time rate actually achieved after provider frame- rate limiting, when the provider exposes that observation.

TryGetAltitudeFrozenAsync

public Task<USIResult<Boolean>> TryGetAltitudeFrozenAsync()

Gets whether simulation-driven aircraft altitude is frozen.

TryGetApproximateGpuFrameDurationAsync

public Task<USIResult<TimeSpan>> TryGetApproximateGpuFrameDurationAsync()

Gets the provider's approximate GPU processing duration per frame. This estimate is distinct from the complete frame duration.

TryGetAttitudeFrozenAsync

public Task<USIResult<Boolean>> TryGetAttitudeFrozenAsync()

Gets whether simulation-driven pitch, bank, and heading are frozen.

TryGetGroundDistanceMultiplierAsync

public Task<USIResult<Double>> TryGetGroundDistanceMultiplierAsync()

Gets the independent multiplier applied to ground distance traveled. This is distinct from the simulation-time multiplier.

TryGetHorizontalPositionFrozenAsync

public Task<USIResult<Boolean>> TryGetHorizontalPositionFrozenAsync()

Gets whether simulation-driven horizontal aircraft position is frozen.

TryGetPausedAsync

public Task<USIResult<Boolean>> TryGetPausedAsync()

Gets whether simulation progression is currently paused.

TryGetSimulationEnabledAsync

public Task<USIResult<Boolean>> TryGetSimulationEnabledAsync()

Gets whether the simulator runtime is enabled.

TryGetSimulationRateAsync

public Task<USIResult<Double>> TryGetSimulationRateAsync()

Gets the configured simulation-time multiplier, where 1 is real time.

TryGetSlewActiveAsync

public Task<USIResult<Boolean>> TryGetSlewActiveAsync()

Gets whether the simulator's aircraft-repositioning slew mode is active.

TryGetSlewAllowedAsync

public Task<USIResult<Boolean>> TryGetSlewAllowedAsync()

Gets whether the current simulator session permits slew mode.

TryGetSmoothedFrameDurationAsync

public Task<USIResult<TimeSpan>> TryGetSmoothedFrameDurationAsync()

Gets the smoothed duration required to render one simulator frame.

TryGetTimeDilationAdjustedSimulationRateAsync

public Task<USIResult<Double>> TryGetTimeDilationAdjustedSimulationRateAsync()

Gets the effective simulation-time multiplier after both frame-rate limiting and any low-frame-rate time dilation.

TryGetUserAircraftMotionActiveAsync

public Task<USIResult<Boolean>> TryGetUserAircraftMotionActiveAsync()

Gets whether motion simulation for the user aircraft is currently active. This is distinct from the broader simulator-enabled and paused states.

TryGetUserInputEnabledAsync

public Task<USIResult<Boolean>> TryGetUserInputEnabledAsync()

Gets whether the simulator currently accepts user input.

TrySetAltitudeFrozenAsync

public Task<USIResult> TrySetAltitudeFrozenAsync(bool frozen)

Freezes or releases simulation-driven aircraft altitude.

TrySetAttitudeFrozenAsync

public Task<USIResult> TrySetAttitudeFrozenAsync(bool frozen)

Freezes or releases simulation-driven pitch, bank, and heading.

TrySetGroundDistanceMultiplierAsync

public Task<USIResult> TrySetGroundDistanceMultiplierAsync(double multiplier)

Sets the independent positive ground-distance multiplier.

TrySetHorizontalPositionFrozenAsync

public Task<USIResult> TrySetHorizontalPositionFrozenAsync(bool frozen)

Freezes or releases simulation-driven horizontal aircraft position.

TrySetPausedAsync

public Task<USIResult> TrySetPausedAsync(bool isPaused)

Sets simulation progression to an explicitly paused or running state.

TrySetSimulationRateAsync

public Task<USIResult> TrySetSimulationRateAsync(int multiplier)

Sets the configured whole-number simulation-time multiplier, where 1 is real time.

TrySetSlewActiveAsync

public Task<USIResult> TrySetSlewActiveAsync(bool isActive)

Sets aircraft-repositioning slew mode to an explicit state.