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
指向微型驱动程序的设备扩展的指针。 微型驱动程序在通过 StreamClassRegisterMinidriver 注册自身时传递的HW_INITIALIZATION_DATA结构中指定此缓冲区的大小。 然后,类驱动程序将指针传递到HW_STREAM_REQUEST_BLOCK、HW_STREAM_OBJECT、HW_TIME_CONTEXT的 HwDeviceExtension 成员中的缓冲区,并将PORT_CONFIGURATION_INFORMATION结构传递给微型驱动程序。
第一个参数是 PVOID HwDeviceExtension。 对于版本 20) 驱动程序 (多实例和多筛选器类型,它必须是 HwInstanceExtension。 旧式单实例驱动程序可以继续将 HwDeviceExtension 指定为第一个参数。 它还可以指定 HwInstanceExtension。
[in, optional] HwStreamObject
指向 HW_STREAM_OBJECT的指针。 设置为 NULL 可搜索设备本身的事件队列。 若要搜索特定流的事件队列,请将 设置为流的 流对象。
[in, optional] EventGuid
指定在排队时要匹配的事件集,或 指定 NULL 以匹配任何事件集。
[in] EventItem
指定在排队时要匹配的事件 ID,或 -1 以匹配任何事件。
[in, optional] CurrentEvent
指向事件队列中的事件的指针,或 NULL。
返回值
如果 CurrentEvent 不为 NULL, 则 StreamClassGetNextEvent 在队列中的 CurrentEvent 之后返回下一个匹配事件 (;如果没有此类下一个事件) ,则返回 NULL 。 如果 CurrentEvent 为 NULL, 则 StreamClassGetNextEvent 返回队列中的第一个匹配事件。
注解
微型驱动程序可以连续调用 StreamClassGetNextEvent 以循环访问事件队列,一次检查一个事件。
调用方可以指定其他搜索条件来匹配事件队列中的事件。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | strmini.h (包括 Strmini.h) |
Library | Stream.lib |