using System.Numerics; using System.Runtime.CompilerServices; namespace Ryujinx.Input { /// /// A snapshot of a . /// public class MouseStateSnapshot { private bool[] _buttonState; public Vector2 Position { get; } /// /// Create a new . /// /// The keys state public MouseStateSnapshot(bool[] buttonState, Vector2 position) { _buttonState = buttonState; Position = position; } /// /// Check if a given button is pressed. /// /// The button /// True if the given button is pressed [MethodImpl(MethodImplOptions.AggressiveInlining)] public bool IsPressed(MouseButton button) => _buttonState[(int)button]; } }