Interface IDeviceEnumerator
Enumerates input devices and produces IInputDevice for each enumerated hardware device, alongside their supported device.
There is only one IDeviceEnumerator service per instance, which is unique to the OS, and must enumerate all devices and their input drivers (API) for that operating system.
All IDeviceEnumerator must provide a keyboard device that implements the driver instance for Keyboard and a passthrough device that implements the Passthrough driver instance at a minimum, otherwise emulators will be unable to map inputs.
Namespace: Snowflake.Services
Assembly: Snowflake.Framework.Primitives.dll
Syntax
public interface IDeviceEnumerator
Fields
KeyboardDevicePID
Virtual product ID for keyboard device. 0x4b42 = 'K' 'B'
Declaration
public static readonly int KeyboardDevicePID
Field Value
| Type | Description |
|---|---|
| System.Int32 |
KeyboardInstanceGuid
The instance GUID for the required keyboard instance.
Declaration
public static readonly Guid KeyboardInstanceGuid
Field Value
| Type | Description |
|---|---|
| System.Guid |
PassthroughDevicePID
Virtual product ID for passthrough device. 0x5054 = 'P' 'T'
Declaration
public static readonly int PassthroughDevicePID
Field Value
| Type | Description |
|---|---|
| System.Int32 |
PassthroughInstanceGuid
The instance GUID for the required passthrough instance.
Declaration
public static readonly Guid PassthroughInstanceGuid
Field Value
| Type | Description |
|---|---|
| System.Guid |
VirtualVendorID
Null virtual vendor ID for virtual devices.
Declaration
public static readonly short VirtualVendorID
Field Value
| Type | Description |
|---|---|
| System.Int16 |
Methods
QueryConnectedDevices()
Queries and returns all input devices connected to the computer.
Declaration
IEnumerable<IInputDevice> QueryConnectedDevices()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<IInputDevice> | All currently connected input devices. |