Partager via


HIDP_VALUE_CAPS structure (hidpi.h)

La structure HIDP_VALUE_CAPS contient des informations qui décrivent la fonctionnalité d’un ensemble de valeurs de contrôle HID (une utilisation unique ou une plage d’utilisation).

Syntaxe

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;

Membres

UsagePage

Spécifie la page d’utilisation de la plage d’utilisation ou d’utilisation.

ReportID

Spécifie l’ID de rapport du rapport HID qui contient la plage d’utilisation ou d’utilisation.

IsAlias

Indique, si true, que l’utilisation est membre d’un ensemble d’utilisations avec alias. Sinon, si IsAlias a la valeur FALSE, la valeur n’a qu’une seule utilisation.

BitField

Contient les champs de données (un ou deux octets) associés à une entrée, une sortie ou une fonctionnalité main élément.

LinkCollection

Spécifie l’index de la collection de liens dans le tableau de collection de liens d’une collection de niveau supérieur qui contient la plage d’utilisation ou d’utilisation. Si LinkCollection est égal à zéro, la plage d’utilisation ou d’utilisation est contenue dans la collection de niveau supérieur.

LinkUsage

Spécifie l’utilisation de la collection de liens qui contient l’utilisation ou la plage d’utilisation. Si LinkCollection est égal à zéro, LinkUsage spécifie l’utilisation de la collection de niveau supérieur.

LinkUsagePage

Spécifie la page d’utilisation de la collection de liens qui contient l’utilisation ou la plage d’utilisation. Si LinkCollection est égal à zéro, LinkUsagePage spécifie la page d’utilisation de la collection de niveau supérieur.

IsRange

Spécifie, si la valeur est TRUE, que la structure décrit une plage d’utilisation. Sinon, si IsRange a la valeur FALSE, la structure décrit une utilisation unique.

IsStringRange

Spécifie, si true, que l’utilisation ou la plage d’utilisation a un ensemble de descripteurs de chaîne. Sinon, si IsStringRange a la valeur FALSE, la plage d’utilisation ou d’utilisation a zéro ou un descripteur de chaîne.

IsDesignatorRange

Spécifie, si true, que l’utilisation ou la plage d’utilisation a un ensemble d’indicateurs. Sinon, si IsDesignatorRange a la valeur FALSE, la plage d’utilisation ou d’utilisation a zéro ou un seul désignateur.

IsAbsolute

Spécifie, si true, que l’utilisation ou la plage d’utilisation fournit des données absolues. Sinon, si IsAbsolute a la valeur FALSE, la valeur est le changement d’état par rapport à la valeur précédente.

HasNull

Spécifie, si la valeur est TRUE, que l’utilisation prend en charge une valeur NULL , qui indique que les données ne sont pas valides et doivent être ignorées. Sinon, si HasNull a la valeur FALSE, l’utilisation n’a pas de valeur NULL .

Reserved

Réservé à une utilisation interne du système.

BitSize

Spécifie la taille, en bits, du champ de données d’une utilisation dans un rapport. Si ReportCount est supérieur à un, chaque utilisation a un champ de données distinct de cette taille.

ReportCount

Spécifie le nombre d’utilisations décrites par cette structure.

Reserved2[5]

Réservé à une utilisation interne du système.

UnitsExp

Spécifie l’exposant de l’utilisation, comme décrit par la norme USB HID.

Units

Spécifie les unités de l’utilisation, comme décrit par la norme USB HID.

LogicalMin

Spécifie la limite inférieure signée d’une utilisation.

LogicalMax

Spécifie la limite supérieure signée d’une utilisation.

PhysicalMin

Spécifie la limite inférieure signée d’une utilisation après l’application de la mise à l’échelle à la valeur minimale logique.

PhysicalMax

Spécifie la limite supérieure signée d’une utilisation après l’application de la mise à l’échelle à la valeur maximale logique.

Range

Spécifie, si IsRange a la valeur TRUE, des informations sur une plage d’utilisation. Sinon, si IsRange a la valeur FALSE, NotRange contient des informations sur une seule utilisation.

Range.UsageMin

Indique la limite inférieure inclusive de la plage d’utilisation dont la limite supérieure inclusive est spécifiée par Range.UsageMax.

Range.UsageMax

Indique la limite supérieure inclusive d’une plage d’utilisation dont la limite inférieure inclusive est indiquée par Range.UsageMin.

Range.StringMin

Indique la limite inférieure inclusive d’une plage de descripteurs de chaîne (spécifiée par les éléments minimum de chaîne et nombre maximal de chaînes) dont la limite supérieure inclusive est indiquée par Range.StringMax.

Range.StringMax

Indique la limite supérieure inclusive d’une plage de descripteurs de chaîne (spécifiée par les éléments de chaîne minimum et de chaîne maximale) dont la limite inférieure inclusive est indiquée par Range.StringMin.

Range.DesignatorMin

Indique la limite inférieure inclusive d’une plage d’indicateurs (spécifiée par les éléments minimum de l’indicateur et le nombre maximal d’éléments d’indicateur) dont la limite inférieure inclusive est indiquée par Range.DesignatorMax.

Range.DesignatorMax

Indique la limite supérieure inclusive d’une plage d’indicateurs (spécifiée par les éléments minimum de l’indicateur et le nombre maximal d’éléments de l’indicateur) dont la limite inférieure inclusive est indiquée par Range.DesignatorMin.

Range.DataIndexMin

Indique la limite inférieure inclusive d’une plage séquentielle d’index de données qui correspondent, un-à-un et dans le même ordre, aux utilisations spécifiées par la plage d’utilisation Range.UsageMin à Range.UsageMax.

Range.DataIndexMax

Indique la limite supérieure inclusive d’une plage séquentielle d’index de données qui correspondent, un-à-un et dans le même ordre, aux utilisations spécifiées par la plage d’utilisation Range.UsageMin à Range.UsageMax.

NotRange

Spécifie, si IsRange a la valeur FALSE, des informations sur une seule utilisation. Sinon, si IsRange a la valeur TRUE, Range contient des informations sur une plage d’utilisation.

NotRange.Usage

Indique un ID d’utilisation.

NotRange.Reserved1

Réservé à une utilisation interne du système.

NotRange.StringIndex

Indique un ID de descripteur de chaîne pour l’utilisation spécifiée par NotRange.Usage.

NotRange.Reserved2

Réservé à une utilisation interne du système.

NotRange.DesignatorIndex

Indique un ID d’identificateur pour l’utilisation spécifiée par NotRange.Usage.

NotRange.Reserved3

Réservé à une utilisation interne du système.

NotRange.DataIndex

Indique l’index de données de l’utilisation spécifiée par NotRange.Usage.

NotRange.Reserved4

Réservé à une utilisation interne du système.

Remarques

Les clients obtiennent un tableau de fonctionnalités de valeur en appelant HidP_GetValueCaps ou HidP_GetSpecificValueCaps. Ces routines retournent un tableau de structures HIDP_VALUE_CAPS dans une mémoire tampon allouée par l’appelant. La longueur de mémoire tampon requise est spécifiée dans la structure HIDP_CAPS retournée par HidP_GetCaps.

Pour plus d’informations sur les fonctionnalités des valeurs de contrôle HID, consultez Les tableaux de capacité de collecte et de capacité de valeur.

Configuration requise

Condition requise Valeur
En-tête hidpi.h (inclure Hidpi.h)

Voir aussi

HIDP_CAPS

HidP_GetButtonCaps

HidP_GetCaps

HidP_GetSpecificButtonCaps

HidP_GetSpecificValueCaps

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetValueCaps