Поделиться через


структура HIDP_VALUE_CAPS (hidpi.h)

Структура HIDP_VALUE_CAPS содержит сведения, описывающие возможности набора значений элемента управления HID (одно использование или диапазон использования).

Синтаксис

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;

Члены

UsagePage

Указывает страницу использования для диапазона использования.

ReportID

Указывает идентификатор отчета HID, который содержит сведения об использовании или диапазоне использования.

IsAlias

Указывает, если значение РАВНО TRUE, что использование является членом набора псевдонимов. В противном случае, если isAlias имеет значение FALSE, это значение имеет только одно использование.

BitField

Содержит поля данных (один или два байта), связанные с входными, выходными данными или функциями, main элементом.

LinkCollection

Указывает индекс коллекции ссылок в массиве коллекции ссылок коллекции верхнего уровня , который содержит диапазон использования или использования. Если linkCollection равно нулю, то диапазон использования или использования содержится в коллекции верхнего уровня.

LinkUsage

Указывает использование коллекции ссылок, содержащей использование или диапазон использования. Если свойство LinkCollection равно нулю, LinkUsage указывает использование коллекции верхнего уровня.

LinkUsagePage

Указывает страницу использования коллекции ссылок, которая содержит сведения об использовании или диапазоне использования. Если значение LinkCollection равно нулю, LinkUsagePage указывает страницу использования коллекции верхнего уровня.

IsRange

Указывает , если значение РАВНО TRUE, что структура описывает диапазон использования. В противном случае, если isRange имеет значение FALSE, структура описывает одно использование.

IsStringRange

Указывает, если значение РАВНО TRUE, что диапазон использования или использования содержит набор дескрипторов строк. В противном случае, если isStringRange имеет значение FALSE, диапазон использования или использования имеет ноль или один дескриптор строки.

IsDesignatorRange

Указывает, если задано значение TRUE, то диапазон использования или диапазон использования имеет набор средств разработки. В противном случае, если isDesignatorRange имеет значение FALSE, то диапазон использования или использования имеет ноль или один конструктор.

IsAbsolute

Указывает, если значение РАВНО TRUE, что данные об использовании или диапазоне использования предоставляют абсолютные данные. В противном случае, если isAbsolute имеет значение FALSE, значение является изменением состояния по сравнению с предыдущим значением.

HasNull

Указывает, если значение TRUE, использование поддерживает значение NULL , указывающее, что данные являются недопустимыми и должны игнорироваться. В противном случае, если hasNull имеет значение FALSE, использование не имеет значения NULL .

Reserved

Зарезервировано для внутреннего использования системой.

BitSize

Указывает размер (в битах) поля данных об использовании в отчете. Если значение ReportCount больше единицы, каждое использование имеет отдельное поле данных этого размера.

ReportCount

Указывает количество использования, описываемых данной структурой.

Reserved2[5]

Зарезервировано для внутреннего использования системой.

UnitsExp

Указывает экспоненту использования, как описано в стандарте USB HID.

Units

Указывает единицы использования, как описано в стандарте USB HID.

LogicalMin

Задает нижнюю границу использования со знаком.

LogicalMax

Указывает подписанную верхнюю границу использования.

PhysicalMin

Указывает нижнюю границу использования со знаком после применения масштабирования к логическому минимальному значению.

PhysicalMax

Указывает подписанную верхнюю границу использования после применения масштабирования к логическому максимальному значению.

Range

Указывает, если isRange имеет значение TRUE, сведения о диапазоне использования. В противном случае, если isRange имеет значение FALSE, NotRange содержит сведения об одном использовании.

Range.UsageMin

Указывает включаемую нижнюю границу диапазона использования, верхняя граница которого указана параметром Range.UsageMax.

Range.UsageMax

Указывает включаемую верхнюю границу диапазона использования, нижняя граница которого указана range.UsageMin.

Range.StringMin

Указывает включаемую нижнюю границу диапазона дескрипторов строк (определяемых элементами минимума строки и максимальной строки), верхняя граница которых указана range.StringMax.

Range.StringMax

Указывает включаемую верхнюю границу диапазона дескрипторов строк (задается элементами string minimum и string maximum), нижняя граница которых указана 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_GetValueCaps или HidP_GetSpecificValueCaps. Эти подпрограммы возвращают массив HIDP_VALUE_CAPS структур в буфере, выделенном вызывающим объектом. Требуемая длина буфера указывается в структуре HIDP_CAPS , возвращаемой HidP_GetCaps.

Сведения о возможностях значений элементов управления HID см. в разделах Возможности коллекции и Массивы возможностей значений.

Требования

Требование Значение
Заголовок hidpi.h (включая Hidpi.h)

См. также раздел

HIDP_CAPS

HidP_GetButtonCaps

HidP_GetCaps

HidP_GetSpecificButtonCaps

HidP_GetSpecificValueCaps

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetValueCaps