HidInputReport Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa un informe de entrada HID.
Los dispositivos emiten informes de entrada para describir los cambios de estado, la entrada del usuario y otros datos específicos del dispositivo. Por ejemplo, un dispositivo de teclado HID usaría un informe de entrada para indicar una pulsación de tecla. Un sensor de presencia HID usaría un informe de entrada para indicar un evento de detección de presencia.
public ref class HidInputReport sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HidInputReport final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HidInputReport
Public NotInheritable Class HidInputReport
- Herencia
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
Comentarios
En el ejemplo siguiente se muestra cómo una aplicación para UWP compilada con XAML y C# usa el método GetInputReportAsync para obtener un informe de entrada.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Devices.Enumeration;
using Windows.Devices.HumanInterfaceDevice;
using Windows.Storage;
using Windows.Storage.Streams;
namespace HidSampleCS
{
class Vendor
{
private async void ReadWriteToHidDevice(HidDevice device)
{
if (device != null)
{
// construct a HID output report to send to the device
HidOutputReport outReport = device.CreateOutputReport();
/// Initialize the data buffer and fill it in
byte[] buffer = new byte[] { 10, 20, 30, 40 };
DataWriter dataWriter = new DataWriter();
dataWriter.WriteBytes(buffer);
outReport.Data = dataWriter.DetachBuffer();
// Send the output report asynchronously
await device.SendOutputReportAsync(outReport);
//
// Sent output report successfully
// Now lets try read an input report
//
HidInputReport inReport = await device.GetInputReportAsync();
if (inReport != null)
{
UInt16 id = inReport.Id;
var bytes = new byte[4];
DataReader dataReader = DataReader.FromBuffer(inReport.Data);
dataReader.ReadBytes(bytes);
}
else
{
this.NotifyUser("Invalid input report received");
}
}
else
{
this.NotifyUser("device is NULL");
}
}
}
}
Propiedades
ActivatedBooleanControls |
Obtiene los controles booleanos activados actualmente para el dispositivo HID especificado. |
Data |
Obtiene los datos asociados a un informe de entrada determinado. |
Id |
Obtiene el identificador asociado a un informe de entrada determinado. |
TransitionedBooleanControls |
Obtiene los controles booleanos pasados recientemente para el dispositivo HID especificado. |
Métodos
GetBooleanControl(UInt16, UInt16) |
Recupera el control booleano asociado al parámetro usagePage y usageId y se encuentra en el informe de entrada especificado. |
GetBooleanControlByDescription(HidBooleanControlDescription) |
Recupera el control booleano descrito por el parámetro controlDescription y se encuentra en el informe de entrada especificado. |
GetNumericControl(UInt16, UInt16) |
Recupera el control numérico asociado a los parámetros usagePage y usageId y se encuentra en el informe de entrada especificado. |
GetNumericControlByDescription(HidNumericControlDescription) |
Recupera el control numérico descrito por el parámetro controlDescription y se encuentra en el informe de entrada especificado. |