Compartilhar via


Selecionar modos de relatório de pacotes em dispositivos multitoque

Começando com Windows 8, há suporte para o relatório de dados multitoque para o sistema de duas maneiras: modo paralelo ou modo híbrido. O descritor de relatório de HID fornecido pelo fornecedor difere, dependendo do modo selecionado.

Observação O modo serial é selecionado apenas por dispositivos herdados. Todos os novos dispositivos que usam o modo serial falharão na certificação começando com o Windows 8.

Modo paralelo

No modo paralelo, os dispositivos relatam todas as informações de contato em um só pacote. Cada contato físico é representado por uma coleção lógica inserida na coleção de nível superior. Essa coleção lógica contém todos os usos compatíveis com o dispositivo para cada contato (por exemplo, X, Y e Pressão). Ao aproveitar o modo paralelo, cada uma das coleções lógicas precisa ser idêntica. Como o dispositivo geralmente relata menos contatos do que o máximo, o número de contatos relatados em um pacote paralelo deve ser comunicado no uso da contagem de contatos ou definindo valores NULL para todos os contatos inválidos em um pacote.

Por exemplo, considere um dispositivo que dê suporte a três contatos. Se o usuário tiver apenas dois dedos no digitalizador, o pacote paralelo terá apenas dois dados de contato válidos em um relatório que pode conter dados de três contatos. Nesse caso, a contagem de contatos deve ser definida como 2 para que o aplicativo cliente saiba que qualquer informação sobre mais de dois contatos não é válida.

Como alternativa, o dispositivo pode definir como NULL os valores de usos de contato que ultrapassarem a segunda entrada. Considerando a sobrecarga para dar suporte e relatar valores NULL, é recomendável usar a contagem real.

Uma desvantagem de relatar vários contatos em um relatório é que o espaço é desperdiçado por relatório sempre que há menos contatos do que o número máximo de contatos possível. Os dispositivos podem usar o modo híbrido para reduzir essa ineficiência.

Modo híbrido

No modo híbrido, o número de contatos que pode ser relatado em um relatório é menor que o número máximo de contatos compatível com o dispositivo. Por exemplo, um dispositivo compatível com no máximo 48 contatos físicos simultâneos pode configurar a coleção de nível superior para fornecer no máximo 12 contatos em um relatório. Se houver 48 pontos de contato, o dispositivo poderá dividi-los em 4 relatórios seriais que entregam 12 contatos cada.

Quando um dispositivo entrega dados dessa maneira, o valor de uso contagem de contatos no primeiro relatório deve refletir o número total de contatos que estão sendo entregues nos relatórios híbridos. Os outros relatórios seriais devem ter a contagem de contatos igual a 0. Usando o exemplo anterior, o uso da contagem de contatos no primeiro relatório tem o valor 48, enquanto os três últimos relatórios têm a contagem de uso de contatos igual a 0. Devido a esse protocolo de entrega de dados, o uso real da contagem precisa estar presente no relatório de entrada do descritor de relatório do dispositivo.

Valores nulos

Os valores nulos devem ser especificados conforme a descrição na especificação de HID. O bit NULL precisa ser definido em todos os itens principais no descritor de relatório. Esteja ciente de que um dispositivo pode usar valores de uso da contagem de contatos ou NULL para notificar o host sobre o número real de contatos válidos em um pacote.

Contatos em um relatório

Ao enviar dados no modo híbrido ou paralelo, um contato que é entregue em um relatório precisa ser entregue em todos os relatórios subsequentes até que seja retirado da tela. Se for necessário um tempo para determinar corretamente se o contato foi retirado da superfície, o dispositivo deverá relatar a última posição conhecida do contato e, depois, em um próximo relatório, entregar o estado "UP" do contato. Os dispositivos não devem enviar um relatório sem as informações desse contato ao tentar determinar o estado atual.