Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt beschreven hoe gebruikersmodustoepassingen en kernelmodusstuurprogramma's de HidP_XxxHIDClass-ondersteuningsroutines gebruiken om controlegegevens in een HID-rapport te interpreteren.
Waardegegevens extraheren door het gebruik ervan op te geven
Als u waardegegevens wilt extraheren uit een HID-rapport, kan een toepassing of stuurprogramma een van de volgende HID-ondersteuningsroutines gebruiken:
- HidP_GetScaledUsageValue Retourneert een ondertekende en geschaalde waarde.
- HidP_GetUsageValue Retourneert een niet-geschaalde waarde in een niet-ondertekende notatie of een geschaalde waarde die buiten het normale bereik valt.
- HidP_GetUsageValueArray Retourneert een matrix met gebruikswaarden.
Als u toepassingen en stuurprogramma's met HidP_GetUsageValueArray wilt gebruiken, moet u een nulgeïnitieerde buffer toewijzen die groot genoeg is om de gebruikswaardearray te bevatten. De vereiste grootte in bytes is het product van de BitSize - en ReportCount-leden van de HIDP_VALUE_CAPS structuur van de gebruikswaardematrix, afgerond op de dichtstbijzijnde byte.
Knopgebruik extraheren die zijn ingesteld op AAN
Als u het HID-gebruik van knoppen wilt extraheren die zijn ingesteld op AAN (1), roepen toepassingen en stuurprogramma's een van de volgende HID-ondersteuningsroutines aan:
- HidP_GetButtons (of HidP_GetUsages) geeft als resultaat de gebruiks-id van alle knoppen op een opgegeven gebruikspagina die zijn ingesteld op AAN.
- HidP_GetButtonsEx (of HidP_GetUsagesEx) retourneert de gebruikspagina en de gebruiks-id van alle knoppen die zijn ingesteld op AAN.
Deze routines retourneren een matrix met alle gebruiksgegevens voor alle knoppen die momenteel zijn ingesteld op AAN. Impliciet worden knoppen waarvan het gebruik niet wordt geretourneerd door deze routines ingesteld op UIT (nul).
Als u deze routines wilt aanroepen, moeten toepassingen en stuurprogramma's eerst de buffer toewijzen en initialiseren die wordt gebruikt om de matrix met knopgebruiken te retourneren. Een toepassing of stuurprogramma roept HidP_MaxUsageListLength aan om het aantal knopgebruiken op een opgegeven gebruikspagina in het rapport te bepalen. Als de toepassing of het stuurprogramma een gebruikspagina van nul opgeeft, retourneert de routine het aantal knopgebruiken in het rapport.
De vereiste buffergrootte, in bytes, is:
- (Voor HidP_GetButtons) De waarde die wordt geretourneerd door HidP_MaxUsageListLength times sizeof(USAGE)
- (Voor HidP_GetButtonsEx) De waarde die wordt geretourneerd door HidP_MaxUsageListLength vermenigvuldigd met sizeof(USAGE_AND_PAGE)
Nadat een toepassing of stuurprogramma deze routines gebruikt om informatie te verkrijgen over welke knoppen momenteel zijn ingesteld op AAN, kan het het verschil tussen de huidige status en de vorige status van de knoppen bepalen door een van de volgende HIDClass-ondersteuningsroutines aan te roepen. Deze routines retourneren het verschil tussen twee matrices met gebruiksgegevens:
Waardegegevens instellen door het gebruik ervan op te geven
Een toepassing of stuurprogramma kan een waarde instellen in een correct geïnitialiseerd HID-rapport door een van de volgende HID-ondersteuningsroutines aan te roepen:
- HidP_SetScaledUsageValue Hiermee stelt u een ondertekende en geschaalde waarde in een rapport in.
- HidP_SetUsageValue Hiermee stelt u een waarde in een rapport in.
- HidP_SetUsageValueArray Hiermee stelt u een matrix met gebruikswaarden in een rapport in.
Knopstatus instellen door het gebruik ervan op te geven
Een toepassing of stuurprogramma kan de status van knoppen in een correct geïnitialiseerd HID-rapport instellen door een van de volgende HIDClass-ondersteuningsroutines aan te roepen:
- HidP_SetButtons (of HidP_SetUsages) stelt een opgegeven set knoppen in op AAN (1).
- HidP_UnsetButtons (of HidP_UnsetUsages) stelt een opgegeven set knoppen in op UIT (nul).
Gegevens extraheren en instellen door middel van gegevensindexen
Als u gegevensindexen wilt gebruiken om controlegegevens in een HID-rapport te extraheren en in te stellen, kan een toepassing of stuurprogramma de volgende HIDClass-ondersteuningsroutines gebruiken:
Deze routines zijn handig voor een toepassing of stuurprogramma dat een 'waarde-toegevoegde' service biedt. Bijvoorbeeld, een component dat een aangepaste interface biedt voor alle besturingselementen die worden ondersteund door een HIDClass-apparaat. Microsoft DirectInput is één voorbeeld.
Een toepassing of stuurprogramma die deze routines aanroept, kan alle waarden in een rapport het meest efficiënt verkrijgen en instellen. Als u bijvoorbeeld alle waardegegevens wilt ophalen op basis van hun HID-gebruik, moet u HidP_GetUsageValue aanroepen voor elk gebruik. Als u echter alle waardegegevens per gegevensindex wilt ophalen, hoeft deze slechts één keer HidP_GetData aan te roepen.
Een toepassing of stuurprogramma maakt gebruik van de gegevensindexen die zijn opgegeven in de Button Capability Arrays en Value Capability Arrays van een verzameling om HID-gebruik te identificeren.