CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT-Struktur (gpioclx.h)
Die CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT-Struktur enthält eine Reihe von GPIO-Controllerattributen (General Purpose E/O), die von der GPIO-Frameworkerweiterung (GpioClx) angefordert wurden.
Syntax
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;
Member
Version
Gibt die Versionsnummer dieser Struktur an.
Size
Gibt die Größe dieser Struktur in Bytes an.
BankPowerInformation
Eine CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT-Struktur , die die Leistungsattribute der GPIO-Bank enthält, die vom BankPowerInformation.BankId-Element der entsprechenden CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT-Struktur identifiziert wird.
BankInterruptBinding
Eine Struktur, die Informationen zur Bindung von Interruptressourcen an GPIO-Banken enthält.
BankInterruptBinding.ResourceMapping[ANYSIZE_ARRAY]
Ein Array von Interruptressourcennummern. Die Anzahl der Elemente im Array entspricht der Anzahl der GPIO-Banken. Wenn N die Anzahl der Banken im GPIO-Controller ist, werden die Banken zwischen 0 und N–1 nummeriert. Element 0 des Arrays enthält die Interruptressourcennummer, die an Bank 0 gebunden ist, Element 1 enthält die Interruptressourcennummer, die an Bank 1 gebunden ist usw. Es kann nicht mehr als eine Interruptressource an eine GPIO-Bank gebunden werden, aber zwei oder mehr Banken teilen sich möglicherweise eine Interruptressource. Wenn eine Bank nicht an eine Interruptressource gebunden ist, wird das entsprechende Arrayelement auf GPIO_BANK_INTERRUPT_BINDING_RESERVED_INDEX (0xffff) festgelegt.
Eine Interruptressource wird durch ihre Ressourcennummer identifiziert, die der Index der Ressource in der Ressourcentranslated - oder ResourcesRaw-Ressourcenliste im BankInterruptBinding-Element der CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT-Struktur ist. Wenn eine Liste M-Ressourcen enthält, werden die Ressourcen zwischen 0 und M-1 nummeriert. Nur Ressourcennummern, die Interruptressourcen in der Ressourcenliste entsprechen, können im ResourceMapping-Array angezeigt werden.
ControllerFunctionBankMapping
Eine Struktur, die Informationen zu den GPIO-Banken enthält, die sich im Energiezustand F0 (vollständig aktiviert) befinden müssen, um eine E/A-Kontrollanforderung (IOCTL) verarbeiten zu können.
ControllerFunctionBankMapping.Mapping[ANYSIZE_ARRAY]
Ein Array boolescher Werte, das die Zuordnung der erforderlichen F0-Energiezustände zu GPIO-Banken angibt. Die Anzahl der Elemente im Array entspricht der Anzahl der GPIO-Banken. Wenn N die Anzahl der Banken im GPIO-Controller ist, werden die Banken zwischen 0 und N–1 nummeriert. Element 0 des Arrays enthält die Zuordnung für Bank 0, Element 1 enthält die Zuordnung für Bank 1 usw. Wenn ein Element TRUE ist, muss sich die entsprechende GPIO-Bank im Energiezustand F0 befinden, um die IOCTL verarbeiten zu können. Wenn ein Element FALSE ist, muss sich die entsprechende Bank nicht im Energiezustand F0 befinden.
Hinweise
Die unbenannte Union enthält Ausgabeinformationen für die verschiedenen Typen von Attributanforderungen. Der RequestType-Member der entsprechenden CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT-Struktur bestimmt, welcher dieser Member verwendet wird.
Der optionale OutputBuffer-Parameter der CLIENT_QuerySetControllerInformation-Funktion ist ein Zeiger auf eine aufruferseitig zugeordnete CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT-Struktur . Die Funktion schreibt die angeforderten Attributinformationen in diese Struktur, wenn OutputBuffer ungleich NULL ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt ab Windows 8. |
Kopfzeile | gpioclx.h |