Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Структура HIDP_BUTTON_CAPS содержит сведения о возможности использования кнопки HID (или набора кнопок, связанных с диапазоном использования).
Синтаксис
typedef struct _HIDP_BUTTON_CAPS {
USAGE UsagePage;
UCHAR ReportID;
BOOLEAN IsAlias;
USHORT BitField;
USHORT LinkCollection;
USAGE LinkUsage;
USAGE LinkUsagePage;
BOOLEAN IsRange;
BOOLEAN IsStringRange;
BOOLEAN IsDesignatorRange;
BOOLEAN IsAbsolute;
USHORT ReportCount;
USHORT Reserved2;
ULONG Reserved[9];
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_BUTTON_CAPS, *PHIDP_BUTTON_CAPS;
Members
UsagePage
Указывает страницу использования для диапазона использования или использования.
ReportID
Указывает идентификатор отчета HID-отчета, содержащего диапазон использования или использования.
IsAlias
Указывает, если значение TRUE, кнопка имеет набор псевдонимов. В противном случае, если IsAlias имеет значение FALSE, кнопка имеет только одно использование.
BitField
Содержит поля данных (один или два байта), связанные с входным, выходным или основным элементом компонента.
LinkCollection
Задает индекс коллекции ссылок в массиве ссылокверхнего уровня, который содержит диапазон использования или использования. Если LinkCollection равно нулю, диапазон использования или использования содержится в коллекции верхнего уровня.
LinkUsage
Указывает использование коллекции ссылок, содержащей диапазон использования или использования. Если LinkCollection равно нулю, LinkUsage указывает использование коллекции верхнего уровня.
LinkUsagePage
Указывает страницу использования коллекции ссылок, содержащей диапазон использования или использования. Если LinkCollection равно нулю, LinkUsagePage указывает страницу использования коллекции верхнего уровня.
IsRange
Указывает, если значение TRUE, то структура описывает диапазон использования. В противном случае, если IsRange имеет значение FALSE, структура описывает одно использование.
IsStringRange
Указывает, если значение TRUE, то диапазон использования или использования содержит набор дескрипторов строк. В противном случае, если IsStringRange имеет значение FALSE, диапазон использования или использования имеет нулевой или один дескриптор строки.
IsDesignatorRange
Указывает, если значение TRUE, то диапазон использования или использования содержит набор конструкторов. В противном случае, если IsDesignatorRange имеет значение FALSE, диапазон использования или использования имеет нулевой или один конструктор.
IsAbsolute
Указывает, если значение TRUE, использование кнопки или диапазон использования предоставляет абсолютные данные. В противном случае, если IsAbsolute имеет значение FALSE, данные кнопки изменяются с предыдущего значения.
ReportCount
Определенное число отчетов HID. Доступно начиная с API версии 2.0. Вызовите функцию HidP_GetVersion , чтобы получить версию API.
Reserved2
Зарезервировано для внутреннего использования системы.
Reserved[9]
Зарезервировано для внутреннего использования системы.
Range
Указывает, если IsRange имеет значение TRUE, сведения о диапазоне использования. В противном случае, если IsRange имеет значение FALSE, NotRange содержит сведения об одном использовании.
Range.UsageMin
Указывает инклюзивную нижнюю границу диапазона использования, включаемая верхняя граница которой указана range.UsageMax.
Range.UsageMax
Указывает инклюзивную верхнюю границу диапазона использования, включаемая нижняя граница которой указана Range.UsageMin.
Range.StringMin
Указывает инклюзивную нижнюю границу диапазона дескрипторов строк (указанных строковыми минимальными и строковыми максимальными элементами), верхние границы которых указываются Range.StringMax.
Range.StringMax
Указывает включаемую верхнюю границу диапазона дескрипторов строк (заданных строковыми минимальными и строковыми максимальными элементами), нижнюю границу которого указывает Range.StringMin.
Range.DesignatorMin
Указывает инклюзивную нижнюю границу диапазона конструкторов (задается минимальными и максимальными элементами конструктора), в которой указана включаемая нижняя граница Range.DesignatorMax.
Range.DesignatorMax
Указывает инклюзивную верхнюю границу диапазона конструкторов (задается минимальными и максимальными элементами конструктора), в которой указана включаемая нижняя граница Range.DesignatorMin.
Range.DataIndexMin
Указывает инклюзивную нижнюю границу последовательного диапазона индексов данных , которые соответствуют одному и одному и тому же порядку использования, заданным диапазоном использования Range.UsageMin в Range.UsageMax.
Range.DataIndexMax
Указывает инклюзивную верхнюю границу последовательного диапазона индексов данных, соответствующих одному и одному и тому же порядку, к использованию, заданным диапазоном использования Range.UsageMin в Range.UsageMax.
NotRange
Указывает, если IsRange имеет значение FALSE, сведения об одном использовании. В противном случае, если IsRange имеет значение TRUE, Диапазон содержит сведения о диапазоне использования.
NotRange.Usage
Указывает идентификатор использования.
NotRange.Reserved1
Зарезервировано для внутреннего использования системы.
NotRange.StringIndex
Указывает идентификатор дескриптора строки для использования, указанного NotRange.Usage.
NotRange.Reserved2
Зарезервировано для внутреннего использования системы.
NotRange.DesignatorIndex
Указывает идентификатор конструктора для использования, указанного NotRange.Usage.
NotRange.Reserved3
Зарезервировано для внутреннего использования системы.
NotRange.DataIndex
Указывает индекс данных использования, указанного NotRange.Usage.
NotRange.Reserved4
Зарезервировано для внутреннего использования системы.
Замечания
Клиенты получают массив возможностей кнопки путем вызова HidP_GetButtonCaps или HidP_GetSpecificButtonCaps. Эти подпрограммы возвращают массив HIDP_BUTTON_CAPS структур в буфере, выделенном вызывающим объектом. Требуемая длина буфера указана в структуре HIDP_CAPS , возвращаемой HidP_GetCaps.
Сведения о возможностях значений элементов управления HID см. в разделе "Возможности коллекции " и "Массивы возможностей значений".
Когда дескриптор отчета объявляет входные, выходные данные или основной элемент компонента с меньшим количеством объявлений об использовании, чем ReportCount, то последнее использование применяется ко всем оставшимся неопределенным подсчетам в этом основном элементе. Например, у вас могут быть данные, которые требуют много полей для описания, возможно, буферизованного байта. В этом случае для этих связанных полей выделяется только одна структура ограничения значений, все с одинаковым использованием, и ReportCount отражает количество задействованных полей. Как правило, reportCount является одним. Для доступа ко всем полям в такой структуре значений потребуется использовать HidP_GetUsageValueArray и HidP_SetUsageValueArray. Также будут работать функции HidP_GetUsageValue и HidP_SetScaledUsageValue . Однако эти функции работают только с первым полем структуры.
Требования
| Требование | Ценность |
|---|---|
| Header | hidpi.h (include Hidpi.h) |