次の方法で共有


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_BLOCKHW_STREAM_OBJECTHW_TIME_CONTEXT、および PORT_CONFIGURATION_INFORMATION 構造体の HwDeviceExtension メンバー内のバッファーへのポインターを渡します。

この最初のパラメーターは 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 を連続して呼び出してイベント キューをループ処理し、一度に 1 つのイベントを調べます。

呼び出し元は、イベント キューのイベントに一致する追加の検索条件を指定できます。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー strmini.h (Strmini.h を含む)
ライブラリ Stream.lib