HIDP_VALUE_CAPS Struktur (hidpi.h)
Die HIDP_VALUE_CAPS-Struktur enthält Informationen, die die Funktion eines Satzes von HID-Steuerelementwerten beschreiben (entweder eine einzelne Verwendung oder ein Nutzungsbereich).
Syntax
typedef struct _HIDP_VALUE_CAPS {
USAGE UsagePage;
UCHAR ReportID;
BOOLEAN IsAlias;
USHORT BitField;
USHORT LinkCollection;
USAGE LinkUsage;
USAGE LinkUsagePage;
BOOLEAN IsRange;
BOOLEAN IsStringRange;
BOOLEAN IsDesignatorRange;
BOOLEAN IsAbsolute;
BOOLEAN HasNull;
UCHAR Reserved;
USHORT BitSize;
USHORT ReportCount;
USHORT Reserved2[5];
ULONG UnitsExp;
ULONG Units;
LONG LogicalMin;
LONG LogicalMax;
LONG PhysicalMin;
LONG PhysicalMax;
union {
struct {
USAGE UsageMin;
USAGE UsageMax;
USHORT StringMin;
USHORT StringMax;
USHORT DesignatorMin;
USHORT DesignatorMax;
USHORT DataIndexMin;
USHORT DataIndexMax;
} Range;
struct {
USAGE Usage;
USAGE Reserved1;
USHORT StringIndex;
USHORT Reserved2;
USHORT DesignatorIndex;
USHORT Reserved3;
USHORT DataIndex;
USHORT Reserved4;
} NotRange;
};
} HIDP_VALUE_CAPS, *PHIDP_VALUE_CAPS;
Angehörige
UsagePage
Gibt die Verwendungsseite des Verwendungsbereichs oder des Verwendungsbereichs an.
ReportID
Gibt die Berichts-ID des HID-Berichts an, der den Verwendungs- oder Verwendungsbereich enthält.
IsAlias
Gibt an, ob TRUE, dass die Verwendung Mitglied einer Gruppe von aliasierten Verwendungen ist. Andernfalls ist IsAliasFALSE, hat der Wert nur eine Verwendung.
BitField
Enthält die Datenfelder (ein oder zwei Byte), die einem Eingabe-, Ausgabe- oder Feature-Hauptelement zugeordnet sind.
LinkCollection
Gibt den Index der Linkauflistung in einem Linksammlungsarray auf oberster Ebene an, das den Verwendungsbereich oder den Verwendungsbereich enthält. Wenn LinkCollection- null ist, ist der Verwendungsbereich oder der Verwendungsbereich in der Sammlung auf oberster Ebene enthalten.
LinkUsage
Gibt die Verwendung der Linkauflistung an, die den Verwendungs- oder Verwendungsbereich enthält. Wenn LinkCollection- null ist, gibt LinkUsage die Verwendung der Auflistung der obersten Ebene an.
LinkUsagePage
Gibt die Verwendungsseite der Linkauflistung an, die den Verwendungs- oder Verwendungsbereich enthält. Wenn LinkCollection- null ist, gibt LinkUsagePage- die Verwendungsseite der Auflistung der obersten Ebene an.
IsRange
Gibt an, wenn TRUE, dass die Struktur einen Verwendungsbereich beschreibt. Andernfalls beschreibt die Struktur eine einzelne Verwendung, wenn IsRangeFALSEist.
IsStringRange
Gibt an, ob TRUE-, dass der Verwendungs- oder Verwendungsbereich über eine Reihe von Zeichenfolgendeskriptoren verfügt. Andernfalls weist IsStringRangeFALSEauf, hat der Verwendungs- oder Verwendungsbereich null oder einen Zeichenfolgendeskriptor.
IsDesignatorRange
Gibt an, ob TRUE, dass der Verwendungsbereich oder der Verwendungsbereich über eine Reihe von Zeichnern verfügt. Andernfalls weist IsDesignatorRangeFALSEauf, hat der Verwendungsbereich oder der Verwendungsbereich null oder einen Kennzeichner.
IsAbsolute
Gibt an, ob TRUE, dass der Verwendungsbereich absolute Daten bereitstellt. Andernfalls ist IsAbsoluteFALSE, ist der Wert die Änderung des Zustands vom vorherigen Wert.
HasNull
Gibt an, ob TRUE-, dass die Verwendung einen NULL--Wert unterstützt, der angibt, dass die Daten ungültig sind und ignoriert werden sollen. Andernfalls ist HasNullFALSE, weist die Verwendung keinen wert NULL auf.
Reserved
Reserviert für die interne Systemverwendung.
BitSize
Gibt die Größe des Datenfelds einer Verwendung in Bits in einem Bericht an. Wenn ReportCount größer als eine ist, weist jede Verwendung ein separates Datenfeld dieser Größe auf.
ReportCount
Gibt die Anzahl der Verwendungen an, die diese Struktur beschreibt.
Reserved2[5]
Reserviert für die interne Systemverwendung.
UnitsExp
Gibt den Exponenten der Verwendung an, wie vom USB-HID-Standard beschrieben.
Units
Gibt die Einheiten der Verwendung an, wie vom USB-HID-Standard beschrieben.
LogicalMin
Gibt die signierte Untergrenze einer Verwendung an.
LogicalMax
Gibt die signierte obere Grenze einer Verwendung an.
PhysicalMin
Gibt die signierte untere Grenze einer Verwendung an, nachdem die Skalierung auf den logischen Minimalwert angewendet wurde.
PhysicalMax
Gibt die signierte obere Grenze einer Verwendung an, nachdem die Skalierung auf den logischen Maximalwert angewendet wurde.
Range
Gibt an, ob IsRangeTRUE-ist, Informationen zu einem Verwendungsbereich. Andernfalls enthält NotRange Informationen zu einer einzelnen Verwendung, wenn IsRangeFALSEist.
Range.UsageMin
Gibt die inklusive untere Grenze des Verwendungsbereichs an, deren inklusive Obergrenze durch Range.UsageMaxangegeben wird.
Range.UsageMax
Gibt die inklusive obere Grenze eines Verwendungsbereichs an, deren inklusive untere Grenze durch Range.UsageMinangegeben wird.
Range.StringMin
Gibt die inklusive untere Grenze eines Bereichs von Zeichenfolgendeskriptoren an (angegeben durch Zeichenfolgen-Minimum- und Zeichenfolgenhöchstwerte), deren inklusive obere Grenze durch Range.StringMaxangegeben wird.
Range.StringMax
Gibt die inklusive obere Grenze eines Bereichs von Zeichenfolgendeskriptoren (angegeben durch Zeichenfolgen-Minimum- und Zeichenfolgenhöchstwerte) an, deren inklusive untere Grenze durch Range.StringMinangegeben wird.
Range.DesignatorMin
Gibt die inklusive untere Grenze eines Bereichs von Zeichnern an (angegeben durch designator minimum and designator maximum items), deren inklusive untere Grenze durch Range.DesignatorMaxangegeben wird.
Range.DesignatorMax
Gibt die inklusive obere Grenze eines Bereichs von Zeichnern an (angegeben durch designator minimum and designator maximum items), deren inklusive untere Grenze durch Range.DesignatorMinangegeben wird.
Range.DataIndexMin
Gibt die inklusive untere Grenze eines sequenziellen Bereichs von Datenindizes an, die 1:1 und in derselben Reihenfolge entsprechen, den durch den Verwendungsbereich angegebenen Verwendungen Range.UsageMinRange.UsageMax.
Range.DataIndexMax
Gibt die inklusive obere Grenze eines sequenziellen Datenindizes an, die 1:1 und in derselben Reihenfolge entsprechen, den durch den Verwendungsbereich angegebenen Verwendungen Range.UsageMinRange.UsageMax.
NotRange
Gibt an, ob IsRangeFALSE-ist, Informationen zu einer einzelnen Verwendung. Andernfalls enthält Range Informationen zu einem Verwendungsbereich, wenn IsRangeTRUEist.
NotRange.Usage
Gibt eine Verwendungs-IDan.
NotRange.Reserved1
Reserviert für die interne Systemverwendung.
NotRange.StringIndex
Gibt eine Zeichenfolgenbeschreibungs-ID für die durch NotRange.Usageangegebene Verwendung an.
NotRange.Reserved2
Reserviert für die interne Systemverwendung.
NotRange.DesignatorIndex
Gibt eine Kennzeichner-ID für die durch NotRange.Usageangegebene Verwendung an.
NotRange.Reserved3
Reserviert für die interne Systemverwendung.
NotRange.DataIndex
Gibt den Datenindex der durch NotRange.Usageangegebenen Verwendung an.
NotRange.Reserved4
Reserviert für die interne Systemverwendung.
Bemerkungen
Clients erhalten ein Wertefunktionsarray durch Aufrufen von HidP_GetValueCaps oder HidP_GetSpecificValueCaps. Diese Routinen geben ein Array von HIDP_VALUE_CAPS Strukturen in einem vom Aufrufer zugewiesenen Puffer zurück. Die erforderliche Pufferlänge wird in der HIDP_CAPS Struktur angegeben, die von HidP_GetCapszurückgegeben wird.
Informationen zu den Funktionen von HID-Steuerelementwerten finden Sie unter Collection Capability und Value Capability Arrays.
Anforderungen
Anforderung | Wert |
---|---|
Header- | hidpi.h (include Hidpi.h) |