структура 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 |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по