screen_get_event()

Ожидание события и выборка его из очереди

Прототип:

#include <screen/screen.h>
int screen_get_event( screen_context_t ctx,
screen_event_t ev,
uint64_t timeout );

Аргументы:

ctx
Дескриптор контекста для извлечения события. Дескриптор должен быть создан функцией screen_create_context().
ev
Дескриптор события, предварительно созданный функцией screen_create_event(). Любое содержимое данного события будет заменено данными принятого события.
timeout
Максимальное время ожидания постановки события в очередь (в наносекундах). 0 указывает, что функция не должна ждать, если нет событий, связанных с указанным контекстом. - 1 указывает, что функция должна ожидать, пока событие не будет в очереди.

Библиотека:

libscreen

Описание:

Тип функции: Исполняемые немедленно

Данная функция выбирает из очереди следующее событие, связанное с данным контекстом. Если очередь не содержит событий, функция будет ожидать событиe в течение указанного периода времени. Если время ожидания функции истечет до того, как событие станет доступным, будет возвращено событие с типом SCREEN_EVENT_NONE.

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

0
Событие получено.
-1
В случае ошибки, код ошибки записывается в errno.

Коды ошибок:

EINVAL
Некорректный аргумент.
ENODEV
Контекст не настроен или отсутствует соединение с сервером.
иное значение
Функция неявно вызывает MsgSend_r() и в случае ошибки в ней устанавливает errno в статус код со знаком минус.

Классификация:

Графическая подсистема ЗОСРВ «Нейтрино», Screen

Поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2020

Безопасность использования
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да




Предыдущий раздел: События