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

Структура CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT содержит запрос атрибутов оборудования контроллера ввода-вывода общего назначения (GPIO).

Синтаксис

typedef struct _CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT {
  CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE RequestType;
  USHORT                                   Size;
  ULONG                                    Flags;
  union {
    struct {
      BANK_ID BankId;
    } BankPowerInformation;
    struct {
      WDFCMRESLIST ResourcesTranslated;
      WDFCMRESLIST ResourcesRaw;
      USHORT       TotalBanks;
    } BankInterruptBinding;
    struct {
      PVOID  InputBuffer;
      SIZE_T InputBufferSize;
      SIZE_T OutputBufferSize;
      USHORT TotalBanks;
    } ControllerFunctionBankMapping;
  };
} CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT, *PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT;

Члены

RequestType

Тип запрашиваемых сведений об атрибуте. Для этого элемента задано значение перечисления CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE .

Size

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

Flags

Набор битов флагов, предоставляющих дополнительные сведения о типе запроса атрибута, указанного элементом RequestType . В настоящее время для элемента Flags не определены флаги .

BankPowerInformation

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

BankPowerInformation.BankId

Идентификатор банка контактов GPIO. Если M — количество банков в контроллере GPIO, BankId — это целое число в диапазоне от 0 до M–1. Расширение платформы GPIO (GpioClx) ранее получило количество банков в контроллере из функции обратного вызова события CLIENT_QueryControllerBasicInformation . Дополнительные сведения см. в разделе Примечания в CLIENT_CONTROLLER_BASIC_INFORMATION.

BankInterruptBinding

Структура, содержащая сведения о ресурсах прерываний, назначенных контроллеру GPIO.

BankInterruptBinding.ResourcesTranslated

Дескриптор объекта списка ресурсов платформы, который определяет преобразованные аппаратные ресурсы, назначенные Plug and Play-менеджером устройству.

BankInterruptBinding.ResourcesRaw

Дескриптор объекта списка ресурсов платформы, который определяет необработанные аппаратные ресурсы, назначенные Plug and Play-менеджером устройству.

BankInterruptBinding.TotalBanks

Количество банков в контроллере GPIO. Этот элемент указывает ожидаемую длину массива BankInterruptBinding.ResourceMapping в структуре, выделенной вызывающим объектом CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT , если вызывающий объект предоставляет на эту структуру указатель, отличный от NULL.

ControllerFunctionBankMapping

Структура, содержащая сведения о запросе управления вводом-выводом (IOCTL).

ControllerFunctionBankMapping.InputBuffer

Указатель на входной буфер для IOCTL.

ControllerFunctionBankMapping.InputBufferSize

Размер входного буфера для IOCTL в байтах.

ControllerFunctionBankMapping.OutputBufferSize

Размер выходного буфера для IOCTL в байтах.

ControllerFunctionBankMapping.TotalBanks

Количество банков в контроллере GPIO. Этот элемент указывает ожидаемую длину массива ControllerFunctionBankMapping.Mapping в структуре, выделенной вызывающим объектом CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT , если вызывающий объект предоставляет на эту структуру указатель, отличный от NULL.

Комментарии

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

Значение RequestType Член профсоюза
QueryBankPowerInformation BankPowerInformation
QueryBankInterruptBindingInformation BankInterruptBinding
QueryControllerFunctionBankMappingInformation ControllerFunctionBankMapping

Параметр InputBuffer функции CLIENT_QuerySetControllerInformation является указателем на структуру CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT .

Требования

Требование Значение
Минимальная версия клиента Поддерживается начиная с Windows 8.
Верхняя часть gpioclx.h

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