Uso de descriptores de informe para admitir la detección de funcionalidades (Windows 7)
En esta sección se describe cómo los proveedores usan el descriptor de informe para admitir la detección de funcionalidades para dispositivos táctiles y multitáctiles.
Descriptor de informe
Un controlador proporcionado por el proveedor notifica las funcionalidades de su dispositivo al sistema operativo mediante un descriptor de informe. Para consultar un ejemplo completo de un descriptor de informe, vea el archivo Elotouch.c, que forma parte del ejemplo EloMT en el Kit para controladores de Windows (WDK).
Para que Windows 7 detecte la capacidad de un dispositivo de admitir entradas múltiples, el controlador debe incluir el uso del identificador de contacto (0x51) en el descriptor de informe. Tenga en cuenta que, en Descriptor de informe de ejemplo (modo de informes en serie), este uso se encuentra en la colección física de nivel superior única, mientras que en Descriptor de informe de ejemplo (modo paralelo o híbrido), este uso aparece una vez en las colecciones lógicas que describen las entradas múltiples.
Exclusividad del informe de características
En Windows 7, el sistema abre exclusivamente la colección de nivel superior de configuración que contiene el informe de características del modo de dispositivo. Dado que el sistema operativo abre el informe de características exclusivamente, el informe no es accesible para aplicaciones de terceros.
Como Windows 7 configura el dispositivo para notificar datos solo por entrada múltiple, la colección de nivel superior debe admitir los usos multitáctiles necesarios. Para obtener información sobre los usos necesarios, consulte Compatibilidad con usos en controladores de digitalizador multitáctil.
En Windows XP y Windows Vista, las aplicaciones de terceros pueden usar el informe de características para seleccionar el modo de entrada activo actualmente (por ejemplo, entrada de un solo toque o basada en el ratón). Se recomienda un solo toque para Windows XP Tablet PC Edition y Windows Vista. Se recomienda el ratón para Windows XP y Microsoft Windows 2000.
Requisitos del informe de características
El informe de características debe estar en su propia colección de nivel superior y debe incluir los usos de configuración de entradas múltiples.
En el ejemplo siguiente se muestra un informe de características de Elotouch.c:
0x09, 0x0E, // USAGE (Device Configuration)
0xa1, 0x01, // COLLECTION (Application)
0x85, REPORTID_FEATURE, // REPORT_ID (Configuration)
0x09, 0x23, // USAGE (Device Settings)
0xa1, 0x02, // COLLECTION (logical)
0x09, 0x52, // USAGE (Device Mode)
0x09, 0x53, // USAGE (Device Identifier)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x25, 0x0a, // LOGICAL_MAXIMUM (10)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 0x02, // REPORT_COUNT (2)
0xb1, 0x02, // FEATURE (Data,Var,Abs
0xc0, // END_COLLECTION
0xc0, // END_COLLECTION
Modo de dispositivo
El uso del modo de dispositivo (0x52) puede tener uno de los siguientes valores:
Modo | Valor |
---|---|
Ratón (valor predeterminado recomendado) |
0x00 |
Entrada única (un solo toque o lápiz) |
0x01 |
Entrada múltiple |
0x02 |
Cuando se establece el modo de entrada única, los proveedores pueden realizar una de las siguientes acciones:
Enviar información solo sobre el primer contacto. Esto se puede implementar en el firmware o en el controlador del dispositivo.
Quitar toda la información sobre otros contactos en el minicontrolador HID. Este enfoque reduce la lógica necesaria en el firmware. Sin embargo, solo está disponible para los implementadores que decidan escribir un controlador de dispositivo.
Cuando se establece el modo de ratón, el firmware o el controlador del dispositivo deben enrutar los datos del primer contacto detectado mediante la colección de nivel superior del ratón.
Elija el modo de dispositivo predeterminado adecuado para el dispositivo en función de las funcionalidades del dispositivo y las versiones del sistema operativo que admita. Para proporcionar compatibilidad con versiones anteriores de Windows, se recomienda el modo de ratón como valor predeterminado. Con el valor predeterminado establecido en el modo de ratón, el dispositivo puede funcionar con cualquier sistema operativo.
Si puede garantizar que el dispositivo no se usará en ninguna versión de Windows anterior a Windows Vista, es mejor establecer el valor predeterminado en el modo de entrada única. Windows 7 vuelve a configurar el dispositivo para entrada múltiple si detecta la funcionalidad.
Identificador de dispositivo
El identificador de dispositivo (0x53) es un valor estático (SV) cuando forma parte de una colección de nivel superior del ratón o el digitalizador. Es necesario cuando un descriptor de informe contiene varias colecciones de nivel superior del digitalizador del mismo tipo. Este uso identifica de forma única la colección de nivel superior del digitalizador y debe aparecer en el informe de características.
Si el dispositivo puede funcionar como ratón, la colección del ratón debe tener el mismo identificador de dispositivo que la colección del digitalizador correspondiente. En el caso de los dispositivos con solo una colección de nivel superior del digitalizador, no es necesario especificar un uso de identificador de dispositivo.
Cuando el uso forma parte de una colección lógica de configuración del dispositivo, es un valor dinámico (DV). En este escenario, el uso permite al host seleccionar el dispositivo que quiere configurar. Un valor de cero indica todas las colecciones. Un valor distinto de cero indica la colección de nivel superior con el identificador de dispositivo coincidente.
Compatibilidad con lápiz y panel táctil
Si su dispositivo incluye un digitalizador que proporciona funciones de lápiz y Windows Touch, debe notificar las colecciones táctiles y de lápiz por separado. Si es posible que el controlador se instale en una tableta táctil u otro equipo que no tenga ratón, también debe notificar una colección de ratón.