Функция VideoPortWaitForSingleObject (video.h)
Функция VideoPortWaitForSingleObject помещает текущий поток в состояние ожидания до тех пор, пока заданный объект диспетчера не будет задано сигнальное состояние или (необязательно) до истечения времени ожидания.
Синтаксис
VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID Object,
[in] IN PLARGE_INTEGER Timeout
);
Параметры
[in] HwDeviceExtension
Указатель на расширение устройства минипорта драйвера.
[in] Object
Указатель на объект события.
[in] Timeout
(Необязательно) Указатель на значение времени ожидания, указывающее абсолютное или относительное время завершения ожидания. Отрицательное значение указывает интервал ожидания относительно текущего времени. Значение должно быть выражено в единицах 100 наносекунд. Абсолютное время истечения срока действия отслеживает любые изменения в системном времени; относительные сроки действия не влияют на изменения системного времени.
Возвращаемое значение
VideoPortWaitForSingleObject возвращает одно из следующих значений:
Возвращаемый код | Описание |
---|---|
ERROR_INVALID_PARAMETER | Один из параметров является недопустимым или вызов пытается ждать сопоставленного события пользователя. |
NO_ERROR | Объект события, указанный в параметре pObject, удовлетворил ожидание. |
WAIT_TIMEOUT | Время ожидания произошло до того, как объект события был задан в сигнальное состояние. Это значение можно вернуть, если указанный набор условий ожидания не может быть немедленно выполнен, а время ожидания равно нулю. |
Замечания
Минипорт-драйвер не должен пытаться ждать сопоставленного события пользователя.
Вызывающие VideoPortWaitForSingleObject должны работать в IRQL <= DISPATCH_LEVEL. Как правило, вызывающий объект будет работать в IRQL = PASSIVE_LEVEL и в контексте непарбитрного потока. Вызов этой функции при выполнении в IRQL = DISPATCH_LEVEL действителен, если и только если вызывающий указывает значение timeout нулю. То есть минипорт-драйвер не должен ожидать ненулевого интервала в IRQL = DISPATCH_LEVEL.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows XP и более поздних версиях операционных систем Windows. |
целевая платформа | Настольный |
заголовка | video.h (include Video.h) |
библиотеки | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | <= DISPATCH_LEVEL (см. раздел "Примечания") |