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


структура CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT (gpioclx.h)

Структура CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT содержит набор атрибутов контроллера общего назначения (GPIO), запрошенных расширением платформы GPIO (GpioClx).

Синтаксис

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;

Члены

Version

Указывает номер версии этой структуры.

Size

Задает размер в байтах этой структуры.

BankPowerInformation

Структура CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT, содержащая атрибуты власти банка GPIO, определяемого BankPowerInformation.BankId соответствующего CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT структуры.

BankInterruptBinding

Структура, содержащая сведения о привязке ресурсов прерывания к банкам GPIO.

BankInterruptBinding.ResourceMapping[ANYSIZE_ARRAY]

Массив чисел ресурсов прерывания. Число элементов в массиве равно числу банков GPIO. Если N является числом банков в контроллере GPIO, банки нумеруются от 0 до N–1. Элемент 0 массива содержит номер ресурса прерывания, привязанный к банку 0, элемент 1 содержит номер ресурса прерывания, привязанный к банку 1, и т. д. Не более одного ресурса прерывания могут быть привязаны к банку GPIO, но два или более банков могут совместно использовать ресурс прерывания. Если банк не привязан к ресурсу прерывания, соответствующий элемент массива имеет значение GPIO_BANK_INTERRUPT_BINDING_RESERVED_INDEX (0xffff).

Ресурс прерывания определяется его номером ресурса, который является индексом ресурса в списке ресурсов ResourcesTranslated или ResourcesRaw в списке ресурсов BankInterruptBinding член структуры CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT. Если список содержит ресурсы M, ресурсы нумеруются от 0 до M-1. В массиве resourceMapping могут отображаться только номера ресурсов, соответствующие ресурсам прерывания в списке ресурсов.

ControllerFunctionBankMapping

Структура, содержащая сведения о банках GPIO, которые должны находиться в состоянии питания F0 (полностью на) для обработки запроса управления ввода-вывода (IOCTL).

ControllerFunctionBankMapping.Mapping[ANYSIZE_ARRAY]

Массив значений BOOLEAN, указывающий сопоставление необходимых состояний питания F0 с банками GPIO. Число элементов в массиве равно числу банков GPIO. Если N является числом банков в контроллере GPIO, банки нумеруются от 0 до N–1. Элемент 0 массива содержит сопоставление для bank 0, элемент 1 содержит сопоставление для банка 1 и т. д. Если элемент TRUE, соответствующий банк GPIO должен находиться в состоянии питания F0 для обработки IOCTL. Если элемент FALSE, соответствующий банк не должен находиться в состоянии питания F0.

Замечания

Неназванный союз содержит выходные данные для различных типов запросов атрибутов. Элемент RequestType соответствующей структуры CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT определяет, какой из этих элементов используется.

Необязательный параметр OutputBuffer функции CLIENT_QuerySetControllerInformation является указателем на структуру, выделенную вызывающим объектом CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT. Функция записывает запрошенные сведения атрибута в эту структуру, если OutputBuffer не имеет значения NULL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается начиная с Windows 8.
заголовка gpioclx.h

См. также