функция обратного вызова GPIO_CLIENT_DISCONNECT_IO_PINS (gpioclx.h)

Функция обратного вызова события CLIENT_DisconnectIoPins закрывает логическое подключение к набору контактов ввода-вывода общего назначения (GPIO), настроенных для операций чтения и записи данных.

Синтаксис

GPIO_CLIENT_DISCONNECT_IO_PINS GpioClientDisconnectIoPins;

NTSTATUS GpioClientDisconnectIoPins(
  [in] PVOID Context,
  [in] PGPIO_DISCONNECT_IO_PINS_PARAMETERS DisconnectParameters
)
{...}

Параметры

[in] Context

Указатель на контекст устройства драйвера контроллера GPIO.

[in] DisconnectParameters

Указатель на структуру GPIO_DISCONNECT_IO_PINS_PARAMETERS , описывающую набор отсоединяемых контактов GPIO.

Возвращаемое значение

Функция CLIENT_DisconnectIoPins возвращает STATUS_SUCCESS, если вызов выполнен успешно. В противном случае возвращается соответствующий код ошибки.

Комментарии

Эта функция обратного вызова реализуется драйвером контроллера GPIO. Расширение платформы GPIO (GpioClx) вызывает эту функцию, чтобы закрыть соединение, которое ранее было открыто вызовом функции обратного вызова CLIENT_ConnectIoPins .

Чтобы зарегистрировать функцию обратного вызова CLIENT_DisconnectIoPins драйвера, вызовите метод GPIO_CLX_RegisterClient . Этот метод принимает в качестве входного параметра указатель на структуру GPIO_CLIENT_REGISTRATION_PACKET , содержащую указатель CLIENT_DisconnectIoPins функции.

Примеры

Чтобы определить функцию обратного вызова CLIENT_DisconnectIoPins , необходимо сначала предоставить объявление функции, определяющее тип определяемой функции обратного вызова. Windows предоставляет набор типов функций обратного вызова для драйверов. Объявление функции с помощью типов функций обратного вызова помогает анализу кода для драйверов, средству проверки статических драйверов (SDV) и другим средствам проверки находить ошибки, и это требование для написания драйверов для операционной системы Windows.

Например, чтобы определить функцию обратного вызова CLIENT_DisconnectIoPins с именем MyEvtGpioDisconnectIoPins, используйте тип функции GPIO_CLIENT_DISCONNECT_IO_PINS, как показано в следующем примере кода:

GPIO_CLIENT_DISCONNECT_IO_PINS MyEvtGpioDisconnectIoPins;

Затем реализуйте функцию обратного вызова следующим образом:

_Use_decl_annotations_
NTSTATUS
  MyEvtGpioDisconnectIoPins(
    PVOID Context,
    PGPIO_DISCONNECT_IO_PINS_PARAMETERS DisconnectParameters
    )
{ ... }

Тип функции GPIO_CLIENT_DISCONNECT_IO_PINS определен в файле заголовка Gpioclx.h. Чтобы более точно определить ошибки при запуске средств анализа кода, не забудьте добавить заметку Use_decl_annotations в определение функции. Заметка Use_decl_annotations гарантирует использование заметок, которые применяются к типу функции GPIO_CLIENT_DISCONNECT_IO_PINS в файле заголовка. Дополнительные сведения о требованиях к объявлениям функций см. в статье Объявление функций с помощью типов ролей функций для драйверов KMDF. Дополнительные сведения о Use_decl_annotations см. в статье О поведении функции.

Требования

Требование Значение
Минимальная версия клиента Поддерживается начиная с Windows 8.
Целевая платформа Персональный компьютер
Верхняя часть gpioclx.h
IRQL Вызывается на PASSIVE_LEVEL.

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

CLIENT_ConnectIoPins

GPIO_CLIENT_REGISTRATION_PACKET

GPIO_CLX_RegisterClient

GPIO_DISCONNECT_IO_PINS_PARAMETERS