Maze / Library /PackageCache /com.unity.inputsystem@1.6.1 /InputSystem /Events /DeviceRemoveEvent.cs
| using System.Runtime.InteropServices; | |
| using UnityEngine.InputSystem.Utilities; | |
| namespace UnityEngine.InputSystem.LowLevel | |
| { | |
| /// <summary> | |
| /// Notifies about the removal of an input device. | |
| /// </summary> | |
| /// <remarks> | |
| /// Device that got removed is the one identified by <see cref="InputEvent.deviceId"/> | |
| /// of <see cref="baseEvent"/>. | |
| /// </remarks> | |
| [] | |
| public struct DeviceRemoveEvent : IInputEventTypeInfo | |
| { | |
| public const int Type = 0x4452454D; | |
| /// <summary> | |
| /// Common event data. | |
| /// </summary> | |
| [] | |
| public InputEvent baseEvent; | |
| public FourCC typeStatic => Type; | |
| public unsafe InputEventPtr ToEventPtr() | |
| { | |
| fixed(DeviceRemoveEvent * ptr = &this) | |
| { | |
| return new InputEventPtr((InputEvent*)ptr); | |
| } | |
| } | |
| public static DeviceRemoveEvent Create(int deviceId, double time = -1) | |
| { | |
| var inputEvent = | |
| new DeviceRemoveEvent {baseEvent = new InputEvent(Type, InputEvent.kBaseEventSize, deviceId, time)}; | |
| return inputEvent; | |
| } | |
| } | |
| } | |