Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Tablica możliwości przycisku zawiera informacje o użyciu przycisków obsługiwanych przez kolekcję najwyższego poziomu dla określonego typu raportu HID. Informacje o możliwościach kolekcji znajdują się w strukturze HIDP_CAPS .
Sterownik aplikacji lub trybu jądra w trybie użytkownika używa jednej z następujących procedur obsługi HIDClass w celu uzyskania informacji o możliwości przycisku:
HidP_GetButtonCaps zwraca tablicę możliwości przycisku opisującą wszystkie użycia przycisków zawarte w określonym typie raportu.
HidP_GetSpecificButtonCaps filtruje informacje o możliwościach przycisku, zwracane na podstawie strony użytkowania, identyfikatora użycia i kolekcji powiązań określonych przez obiekt wywołujący.
Tablica możliwości przycisku zawiera struktury HIDP_BUTTON_CAPS, z których każda zawiera następujące informacje dotyczące użycia HID lub zakresu użycia:
Strona dotycząca użycia lub zakresu użycia
Identyfikator raportu, który zawiera dane dotyczące przycisku
Identyfikator użycia lub zakres użycia
Flaga wskazująca, czy użycie jest aliasowanym użyciem
Zbiór linków zawierający użytkowanie lub zakres użytkowania
Deskryptorzy ciągów i oznaczniki skojarzone z użyciem lub zakresem użycia (zobacz element indeksu oznacznika i element indeksu ciągu)
Indeksy danych, które analizator HID przypisał do użycia lub zakresu użycia
Ogólnie rzecz biorąc, następujące warunki są przechowywane dla wszystkich użycia opisanych przez tablicę możliwości przycisku:
Każda struktura możliwości reprezentuje pojedyncze użycie lub zakres użycia skojarzony ze zmiennym elementem głównym lub elementem głównym tablicy.
Aliasowane użycia mogą być stosowane z głównym elementem zmiennym. Nie można aliasować użycia skojarzonego z elementem tablicy. Nie można aliasować zakresu użycia.
Analizator HID używa tylko minimalnej wymaganej liczby użycia, aby przypisać użycie do każdego przycisku. Analizator przypisuje użycie w kolejności, w której są określone w deskryptorze raportu. Użycia w deskryptorze raportu, które nie są wymagane, są odrzucane. Tablica możliwości przycisku nie zawiera żadnych informacji o odrzuconych użyciach.
Jeśli liczba użycia określonych dla elementu zmiennej jest mniejsza niż liczba przycisków w elemencie, tablica możliwości zawiera tylko jedną strukturę możliwości, która opisuje jedno użycie przycisku (ostatnie użycie określone w deskryptorze raportu dla zmiennej głównej elementu). Jednak zobacz Tablica wartości użycia , aby uzyskać informacje o wartościach użycia, które mają liczbę raportów większą niż jedną.
Analizator HID przypisuje unikatowy indeks danych do każdego użycia opisanego w tablicy możliwości.
W poniższych tematach omówiono sposób organizowania struktur możliwości i ustawiania ich w tablicy możliwości przycisku:
Użycie przycisków w zmiennym elemencie głównym
Każde użycie lub zakres użycia określony w deskryptorze raportu jest opisywane przez własną strukturę możliwości w tablicy możliwości przycisku.
Element IsAlias struktur możliwości służy do określania zestawu n aliasowanych zastosowań w następujący sposób:
- Właściwość IsAlias jest ustawiona na TRUE w pierwszych z n-1 struktur funkcjonalnych dodanych do tablicy funkcjonalności. IsAlias ma wartość FALSE w nstrukturze możliwości. Preferowane użycie to ostatnie użycie z aliasem w sekwencji.
Aplikacja lub sterownik może określić, które użycia przycisków są zaliasowane poprzez skanowanie w celu znalezienia takich sekwencji.
Poniższa tabela zawiera podsumowanie przykładu trzech użyć z aliasami.
| Kolejność użycia aliasów w deskryptorze raportu | Kolejność użycia w tablicy możliwości | Wartość elementu członkowskiego IsAlias |
|---|---|---|
| użycie 1 | użycie 3 | TAK |
| użycie 2 | użycie 2 | TAK |
| użycie 3 | użycie 1 | FAŁSZ |
Aby uzyskać informacje na temat sposobu wzajemnego powiązania użyć i indeksów danych, zobacz Indeksy danych.
Użycie przycisków w elemencie głównym tablicy
Każde użycie lub zakres użycia dla głównego elementu tablicy przycisków określonego w deskryptorze raportu jest opisywane przez własną strukturę możliwości w tablicy możliwości przycisku. Kolejność dodawania struktur możliwości do tablicy możliwości jest odwrotną kolejnością, w jakiej są określone użycia dla głównego elementu.
Analizator HID przypisuje indeks danych do każdego użycia skojarzonego z elementem tablicy w kolejności, w której użycie jest określone w deskryptorze raportu. Na przykład w poniższej tabeli przedstawiono korespondencję między zestawem użycia, jak określono w deskryptorze raportu, a użyciem i indeksami danych, jak określono w tablicy możliwości. (W tej tabeli n jest pierwszym indeksem danych, który analizator przypisuje do pierwszego użycia skojarzonego z elementem tablicy).
| Kolejność użycia w deskryptorze raportu | Kolejność użycia w tablicy możliwości | DataIndex lub od DataIndexMin do DataIndexMax |
|---|---|---|
| użycie 1 | zakres użycia 2 | od n+7 do n+8 |
| zakres użycia 1 (z 4 użyciemi) | użycie 2 | n+5 |
| użycie 2 | zakres użycia 1 | od n+1 do n+4 |
| zakres zastosowania 2 (z 2 użyciami) | użycie 1 | n |