структура 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. Флаги в настоящее время не определены для элемента Флаги.
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 |