structure CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT (gpioclx.h)
La structure CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT contient un ensemble d’attributs de contrôleur d’E/S à usage général (GPIO) qui ont été demandés par l’extension de framework GPIO (GpioClx).
Syntaxe
typedef struct _CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT {
USHORT Version;
USHORT Size;
union {
CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT BankPowerInformation;
struct {
ULONG ResourceMapping[ANYSIZE_ARRAY];
} BankInterruptBinding;
struct {
BOOLEAN Mapping[ANYSIZE_ARRAY];
} ControllerFunctionBankMapping;
};
} CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT, *PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT;
Membres
Version
Spécifie le numéro de version de cette structure.
Size
Spécifie la taille, en octets, de cette structure.
BankPowerInformation
Structure CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT qui contient les attributs de pouvoir de la banque GPIO identifiée par la BankPowerInformation.BankId membre de la structure de CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT correspondante.
BankInterruptBinding
Structure qui contient des informations sur la liaison des ressources d’interruption aux banques GPIO.
BankInterruptBinding.ResourceMapping[ANYSIZE_ARRAY]
Tableau de numéros de ressource d’interruption. Le nombre d’éléments dans le tableau est égal au nombre de banques GPIO. Si N est le nombre de banques dans le contrôleur GPIO, les banques sont numérotées de 0 à N-1. L’élément 0 du tableau contient le numéro de ressource d’interruption lié à la banque 0, l’élément 1 contient le numéro de ressource d’interruption lié à la banque 1, et ainsi de suite. Aucune ressource d’interruption ne peut être liée à une banque GPIO, mais deux ou plusieurs banques peuvent partager une ressource d’interruption. Si une banque n’est pas liée à une ressource d’interruption, l’élément tableau correspondant est défini sur GPIO_BANK_INTERRUPT_BINDING_RESERVED_INDEX (0xffff).
Une ressource d’interruption est identifiée par son numéro de ressource, qui est l’index de la ressource dans le ResourcesTranslated ou ResourcesRaw liste de ressources dans la BankInterruptBinding membre de la structure CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT. Si une liste contient des ressources M, les ressources sont numérotées de 0 à M-1. Seuls les numéros de ressources qui correspondent aux ressources d’interruption dans la liste des ressources peuvent apparaître dans le tableau ResourceMapping.
ControllerFunctionBankMapping
Structure qui contient des informations sur les banques GPIO qui doivent être dans l’état d’alimentation F0 (entièrement activé) pour gérer une demande de contrôle d’E/S (IOCTL).
ControllerFunctionBankMapping.Mapping[ANYSIZE_ARRAY]
Tableau de valeurs BOOLEAN qui indique le mappage des états d’alimentation F0 requis aux banques GPIO. Le nombre d’éléments dans le tableau est égal au nombre de banques GPIO. Si N est le nombre de banques dans le contrôleur GPIO, les banques sont numérotées de 0 à N-1. L’élément 0 du tableau contient le mappage pour la banque 0, l’élément 1 contient le mappage pour la banque 1, et ainsi de suite. Si un élément est TRUE, la banque GPIO correspondante doit être dans l’état de puissance F0 pour gérer le IOCTL. Si un élément est FALSE, la banque correspondante n’est pas tenue d’être dans l’état d’alimentation F0.
Remarques
L’union sans nom contient des informations de sortie pour les différents types de demandes d’attribut. Le RequestType membre de la structure de CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT correspondante détermine lequel de ces membres est utilisé.
Le paramètre OutputBuffer facultatif de la fonction CLIENT_QuerySetControllerInformation est un pointeur vers une structure CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT allouée par l’appelant. La fonction écrit les informations d’attribut demandées dans cette structure, si OutputBuffer n’est pas NULL.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Prise en charge à partir de Windows 8. |
d’en-tête | gpioclx.h |