Sdílet prostřednictvím


Pole funkcí tlačítka

Pole schopností tlačítek obsahuje informace o funkčnosti tlačítek podporovaných kolekcí nejvyšší úrovně pro konkrétní typ HID zprávy. Informace o schopnostech kolekce jsou obsaženy ve své struktuře HIDP_CAPS .

Aplikace v uživatelském režimu nebo ovladač režimu jádra používá jednu z následujících rutin podpory HIDClass k získání informací o schopnostech tlačítka:

  • HidP_GetButtonCaps vrátí pole funkcí tlačítka popisující všechna použití tlačítek obsažená v zadaném typu sestavy.

  • HidP_GetSpecificButtonCaps filtruje informace o schopnostech tlačítka, které vrací, podle stránky použití zadané volajícím, ID použití a kolekce odkazů.

Pole schopností tlačítka obsahuje HIDP_BUTTON_CAPS struktury, z nichž každá obsahuje následující informace o využití neborozsahu využití HID:

  • Stránka využití nebo rozsah využití

  • ID sestavy, která obsahuje data tlačítka

  • ID využití nebo rozsah využití

  • Příznak označující, jestli se jedná o aliasované využití

  • Kolekce odkazů, která obsahuje využití nebo rozsah využití

  • Popisovače řetězců a designátory spojené s použitím nebo rozsahem použití (viz položka indexu designátorů a položka indexu řetězců)

  • Datové indexy, které analyzátor HID přiřadil k užití nebo rozsahu užití

Obecně platí, že následující podmínky se uchovávají pro všechna použití popsaná polem funkcí tlačítka:

  • Každá struktura schopností představuje jedno použití nebo rozsah využití, který je přidružený k proměnné hlavní položky nebo hlavní položce pole.

  • Aliasové použití lze použít s proměnnou hlavní položkou. Použití přidružené k položce pole nelze aliasovat. Rozsah využití nelze aliasovat.

  • Analyzátor HID používá pouze minimální požadovaný počet použití k přiřazení využití ke každému tlačítku. Analyzátor přiřazuje použití v pořadí, ve kterém jsou zadány v deskriptoru hlášení. Použití v popisovači sestavy, které nejsou povinné, se zahodí. Pole schopností tlačítka neobsahuje žádné informace o zahozených využitích.

  • Pokud je počet použití zadaný pro položku proměnné menší než počet tlačítek v položce, pole schopností obsahuje pouze jednu strukturu schopností, která popisuje jedno použití tlačítka (poslední použití zadané v popisovači sestavy pro hlavní položku proměnné). Viz část Pole hodnot využití pro informace o hodnotách využití, které mají počet zpráv větší než jedna.

  • Analyzátor HID přiřadí každému použití popsanému v poli schopností jedinečný index dat.

Následující témata popisují, jak jsou struktury schopností uspořádány a nastaveny v poli schopností tlačítka:

Použití tlačítek v hlavní položce proměnné

Každé použití nebo rozsah využití zadaný v popisovači sestavy je popsán vlastní strukturou schopností v poli schopností tlačítka.

Člen isAlias struktury schopností se používá k určení sady n aliasů použití následujícím způsobem:

  • IsAlias je nastaven na TRUE u prvních n-1 struktur kapability přidaných do pole kapability. IsAlias nastavena na FALSE v n-té struktuře schopností. Upřednostňované použití je poslední aliasované použití v posloupnosti.

Aplikace nebo ovladač můžou určit, které použití tlačítek jsou aliasovány vyhledáváním takových sekvencí.

Následující tabulka shrnuje příklady pro tři aliázované použití.

Aliasované pořadí použití v popisovači sestavy Pořadí použití v poli schopností IsAlias – hodnota člena
využití 1 využití 3 PRAVDIVÝ
využití 2 využití 2 PRAVDIVÝ
využití 3 využití 1 FALEŠNÝ

Informace o tom, jak se využití a datové indexy křížově odkazují, najdete v tématu Datové indexy.

Použití tlačítek v hlavním prvku pole

Každé použití nebo rozsah využití pro hlavní položku pole tlačítka zadanou v popisovači sestavy je popsáno vlastní strukturou schopností v poli funkcí tlačítka. Pořadí, v jakém jsou struktury schopností přidány do pole schopností, je obrácené pořadí, ve kterém jsou použití zadána pro hlavní položku.

Analyzátor HID přiřadí index dat ke každému použití přidruženému k položce pole v pořadí, v jakém jsou využití zadána v popisovači sestavy. Například následující tabulka ukazuje korespondenci mezi sadou použití, jak je uvedeno v popisovači sestavy, a využití a indexy dat, jak je uvedeno v poli schopností. (V této tabulce n je první index dat, který analyzátor přiřadí prvnímu použití přidruženému k položce pole.)

Pořadí použití v popisovači sestavy Pořadí využití v poli schopností DataIndex nebo od DataIndexMin do DataIndexMax
využití 1 rozsah využití 2 od n+7 do n+8
rozsah využití 1 (se 4 využitími) využití 2 n+5
využití 2 rozsah využití 1 z n+1 do n+4
rozsah využití 2 (se 2 využitími) využití 1 n