Class WindowsHidDeviceFactoryExtensions
Instantiates Windows Hid Factories. Use these methods as extension methods with FilterDeviceDefinition or directly to get all devices
Inheritance
Inherited Members
Namespace: Hid.Net.Windows
Assembly: Hid.Net.dll
Syntax
public static class WindowsHidDeviceFactoryExtensions
Methods
CreateWindowsHidDeviceFactory(FilterDeviceDefinition, ILoggerFactory, IHidApiService, Nullable<Guid>, Nullable<UInt16>, Nullable<UInt16>, GetConnectedDeviceDefinitionsAsync, Func<Report, TransferResult>, Func<TransferResult, Report>, Func<Byte[], Byte, Byte[]>, WriteReportTransform)
Creates a IDeviceFactory for Windows Hid devices
Declaration
public static IDeviceFactory CreateWindowsHidDeviceFactory(this FilterDeviceDefinition filterDeviceDefinition, ILoggerFactory loggerFactory = null, IHidApiService hidApiService = null, Guid? classGuid = null, ushort? readBufferSize = null, ushort? writeBufferSize = null, GetConnectedDeviceDefinitionsAsync getConnectedDeviceDefinitionsAsync = null, Func<Report, TransferResult> readReportTransform = null, Func<TransferResult, Report> readTransferTransform = null, Func<byte[], byte, byte[]> writeTransferTransform = null, WriteReportTransform writeReportTransform = null)
Parameters
Type | Name | Description |
---|---|---|
FilterDeviceDefinition | filterDeviceDefinition | Devices must match this |
Microsoft.Extensions.Logging.ILoggerFactory | loggerFactory | https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.iloggerfactory |
IHidApiService | hidApiService | Abstraction for Hid interaction |
System.Nullable<System.Guid> | classGuid | Filters by specified class guid |
System.Nullable<System.UInt16> | readBufferSize | Override the input report size |
System.Nullable<System.UInt16> | writeBufferSize | Override the output report size |
GetConnectedDeviceDefinitionsAsync | getConnectedDeviceDefinitionsAsync | Override the default call for getting definitions |
System.Func<Report, TransferResult> | readReportTransform | Allows you to manually convert the Report in to a TransferResult so that the Report Id is not discarded on ReadAsync. By default, this inserts the Report Id at index zero of the array. |
System.Func<TransferResult, Report> | readTransferTransform | Exposes the raw data from the device (including Report Id) on reads and allows you to format the returned TransferResult |
System.Func<System.Byte[], System.Byte, System.Byte[]> | writeTransferTransform | Given the Report Id and data supplied for the write, allow you to format the raw data that is sent to the device |
WriteReportTransform | writeReportTransform | Given the data supplied, allow you to divide the data in to a Report |
Returns
Type | Description |
---|---|
IDeviceFactory | A factory which enumerates and instantiates devices |
CreateWindowsHidDeviceFactory(ILoggerFactory, IHidApiService, Nullable<Guid>, Nullable<UInt16>, Nullable<UInt16>, GetConnectedDeviceDefinitionsAsync, Func<Report, TransferResult>, Func<TransferResult, Report>, Func<Byte[], Byte, Byte[]>, WriteReportTransform)
Creates a IDeviceFactory for Windows Hid devices
Declaration
public static IDeviceFactory CreateWindowsHidDeviceFactory(ILoggerFactory loggerFactory = null, IHidApiService hidApiService = null, Guid? classGuid = null, ushort? readBufferSize = null, ushort? writeBufferSize = null, GetConnectedDeviceDefinitionsAsync getConnectedDeviceDefinitionsAsync = null, Func<Report, TransferResult> readReportTransform = null, Func<TransferResult, Report> readTransferTransform = null, Func<byte[], byte, byte[]> writeTransferTransform = null, WriteReportTransform writeReportTransform = null)
Parameters
Type | Name | Description |
---|---|---|
Microsoft.Extensions.Logging.ILoggerFactory | loggerFactory | https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.iloggerfactory |
IHidApiService | hidApiService | Abstraction for raw api level interation |
System.Nullable<System.Guid> | classGuid | Filters by specified class guid |
System.Nullable<System.UInt16> | readBufferSize | Override the input report size |
System.Nullable<System.UInt16> | writeBufferSize | Override the output report size |
GetConnectedDeviceDefinitionsAsync | getConnectedDeviceDefinitionsAsync | Override the default call for getting definitions |
System.Func<Report, TransferResult> | readReportTransform | Allows you to manually convert the Report in to a TransferResult so that the Report Id is not discarded on ReadAsync. By default, this inserts the Report Id at index zero of the array. |
System.Func<TransferResult, Report> | readTransferTransform | Exposes the raw data from the device (including Report Id) on reads and allows you to format the returned TransferResult |
System.Func<System.Byte[], System.Byte, System.Byte[]> | writeTransferTransform | Given the Report Id and data supplied for the write, allow you to format the raw data that is sent to the device |
WriteReportTransform | writeReportTransform | Given the data supplied, allow you to divide the data in to a Report |
Returns
Type | Description |
---|---|
IDeviceFactory | A factory which enumerates and instantiates devices |
CreateWindowsHidDeviceFactory(IEnumerable<FilterDeviceDefinition>, ILoggerFactory, IHidApiService, Nullable<Guid>, Nullable<UInt16>, Nullable<UInt16>, GetConnectedDeviceDefinitionsAsync, Func<Report, TransferResult>, Func<TransferResult, Report>, Func<Byte[], Byte, Byte[]>, WriteReportTransform)
Creates a factory Hid devices
Declaration
public static IDeviceFactory CreateWindowsHidDeviceFactory(this IEnumerable<FilterDeviceDefinition> filterDeviceDefinitions, ILoggerFactory loggerFactory = null, IHidApiService hidApiService = null, Guid? classGuid = null, ushort? readBufferSize = null, ushort? writeBufferSize = null, GetConnectedDeviceDefinitionsAsync getConnectedDeviceDefinitionsAsync = null, Func<Report, TransferResult> readReportTransform = null, Func<TransferResult, Report> readTransferTransform = null, Func<byte[], byte, byte[]> writeTransferTransform = null, WriteReportTransform writeReportTransform = null)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<FilterDeviceDefinition> | filterDeviceDefinitions | Devices must match these |
Microsoft.Extensions.Logging.ILoggerFactory | loggerFactory | https://docs.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.iloggerfactory |
IHidApiService | hidApiService | Abstraction for Hid interaction |
System.Nullable<System.Guid> | classGuid | Filters by specified class guid |
System.Nullable<System.UInt16> | readBufferSize | Override the input report size |
System.Nullable<System.UInt16> | writeBufferSize | Override the output report size |
GetConnectedDeviceDefinitionsAsync | getConnectedDeviceDefinitionsAsync | Override the default call for getting definitions |
System.Func<Report, TransferResult> | readReportTransform | Allows you to manually convert the Report in to a TransferResult so that the Report Id is not discarded on ReadAsync. By default, this inserts the Report Id at index zero of the array. |
System.Func<TransferResult, Report> | readTransferTransform | Exposes the raw data from the device (including Report Id) on reads and allows you to format the returned TransferResult |
System.Func<System.Byte[], System.Byte, System.Byte[]> | writeTransferTransform | Given the Report Id and data supplied for the write, allow you to format the raw data that is sent to the device |
WriteReportTransform | writeReportTransform | Given the data supplied, allow you to divide the data in to a Report |
Returns
Type | Description |
---|---|
IDeviceFactory | A factory which enumerates and instantiates devices |