StreamClassCallAtNewPriority 関数 (strmini.h)
StreamClassCallAtNewPriority ルーチンは、別の優先度で呼び出されるルーチンをスケジュールします。
構文
VOID STREAMAPI StreamClassCallAtNewPriority(
[in, optional] PHW_STREAM_OBJECT StreamObject,
[in] PVOID HwDeviceExtension,
[in] STREAM_PRIORITY Priority,
[in] PHW_PRIORITY_ROUTINE PriorityRoutine,
[in] PVOID Context
);
パラメーター
[in, optional] StreamObject
ストリームを指定するHW_STREAM_OBJECT構造体へのポインターはルーチンに関連付けられます。ルーチンがデバイス全体に関連付けられている場合は NULL です。 ストリームごとに使用できるルーチンは 1 つだけで、デバイス用のルーチンは 1 つだけです。 このパラメーターは省略可能です。
[in] HwDeviceExtension
ミニドライバーのデバイス拡張機能へのポインター。 ミニドライバーは、StreamClassRegisterMinidriver を介して自身を登録するときに渡すHW_INITIALIZATION_DATA構造体内のこのバッファーのサイズを指定します。 その後、クラス ドライバーは、ミニドライバーに渡すHW_STREAM_REQUEST_BLOCK、HW_STREAM_OBJECT、HW_TIME_CONTEXT、PORT_CONFIGURATION_INFORMATION構造体の HwDeviceExtension メンバー内のバッファーにポインターを渡します。
[in] Priority
次の表に示す値のいずれかを指定します。
優先度 | 使用 |
---|---|
高 | ストリーム クラス ドライバーは、ミニドライバーの StrMiniXxx コールバックと同じ優先度でルーチンを呼び出します。 ミニドライバーの割り込みサービス ルーチンとルーチンを同期する必要がある場合を除き、この設定を使用しないでください。 |
Dispatch | ストリーム クラス ドライバーは、DISPATCH_LEVELでルーチンを呼び出します。 ルーチンの完了にかかる時間が 1 ミリ秒未満の場合は、この優先順位を使用します。 |
低 | ストリーム クラス ドライバーは、PASSIVE_LEVELでルーチンを呼び出します。 ルーチンの完了にかかる時間が 1 ミリ秒未満の場合は、この優先順位を使用します。 |
LowToHigh | 低優先度で呼び出されたスレッドが高優先度に戻り、他のストリーム クラス ドライバー サービスを呼び出すことができるようにするために使用されます。 |
[in] PriorityRoutine
指定された優先度レベルで呼び出されるミニドライバー提供の StrMiniPriorityRoutine へのポインター。
[in] Context
PriorityRoutine に渡されるパラメーターを指定します。
戻り値
なし
必要条件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | strmini.h (Strmini.h を含む) |
Library | Stream.lib |
IRQL | (「パラメーター」セクションを参照) |