Функция StreamClassGetNextEvent (strmini.h)
Мини-накопители могут использовать подпрограмму StreamClassGetNextEvent для поиска очереди событий устройства или определенного потока.
Синтаксис
PKSEVENT_ENTRY StreamClassGetNextEvent(
[in, optional] PVOID HwInstanceExtension_OR_HwDeviceExtension,
[in, optional] PHW_STREAM_OBJECT HwStreamObject,
[in, optional] GUID *EventGuid,
[in] ULONG EventItem,
[in, optional] PKSEVENT_ENTRY CurrentEvent
);
Параметры
[in, optional] HwInstanceExtension_OR_HwDeviceExtension
Указатель на расширение устройства мини-накопителя. Мини-диск задает размер этого буфера в структуре HW_INITIALIZATION_DATA , который он передает при регистрации через StreamClassRegisterMinidriver. Затем драйвер класса передает указатели на буфер в элементе HwDeviceExtensionHW_STREAM_REQUEST_BLOCK, HW_STREAM_OBJECT, HW_TIME_CONTEXT и PORT_CONFIGURATION_INFORMATION структурах, которые он передает в мини-диск.
Первым параметром был PVOID HwDeviceExtension. Он должен иметь значение HwInstanceExtension для драйверов с несколькими экземплярами и с несколькими фильтрами (версия 20). Устаревшие драйверы одного экземпляра могут по-прежнему указывать HwDeviceExtension в качестве первого параметра. Он также может указать HwInstanceExtension.
[in, optional] HwStreamObject
Указатель на HW_STREAM_OBJECT. Установите значение NULL для поиска в очереди событий самого устройства. Чтобы выполнить поиск в очереди событий определенного потока, задайте для объекта потока поток.
[in, optional] EventGuid
Указывает набор событий, который будет соответствовать при проходе по очереди, или значение NULL для сопоставления с любым набором событий.
[in] EventItem
Указывает идентификатор события для сопоставления при проходе по очереди или значение -1 для сопоставления любого события.
[in, optional] CurrentEvent
Указатель на событие в очереди событий или значение NULL.
Возвращаемое значение
Если значение CurrentEvent не равно NULL, StreamClassGetNextEvent возвращает следующее соответствующее событие после CurrentEvent в очереди (или NULL , если следующее событие отсутствует). Если значение CurrentEvent равно NULL, StreamClassGetNextEvent возвращает первое соответствующее событие в очереди.
Комментарии
Мини-driver может последовательно вызывать StreamClassGetNextEvent для циклического обхода очереди событий, проверяя по одному событию за раз.
Вызывающий объект может указать дополнительные условия поиска для сопоставления событий в очереди событий.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | strmini.h (включая Strmini.h) |
Библиотека | Stream.lib |