IPortWavePci::Notify メソッド (portcls.h)
メソッドは Notify
、DMA ポインターの進行状況を示す割り込みが発生したことをポート ドライバーに通知します。
構文
void Notify(
[in] PSERVICEGROUP ServiceGroup
);
パラメーター
[in] ServiceGroup
ミニポート ドライバーの IServiceGroup オブジェクトへのポインター。
戻り値
なし
解説
一部のミニポート ドライバーは、割り込みソースをクリアした後、ハードウェア割り込みに応答して ISR からこのメソッドを呼び出します。 他のドライバーは、定期的に実行するようにスケジュールされているタイマー DPC からこのメソッドを呼び出します。 一般的な規則として、KMixer から 1 つのレンダリング ストリームを管理するドライバーのみがハードウェア割り込みに依存する必要があります。 DirectSound ハードウェア アクセラレーションをサポートするドライバーでは、ハードウェア割り込みをオフにし、代わりにタイマー DPC を使用する必要があります。 詳細については、「 IPortWavePciStream::GetMapping」を参照してください。
ミニポート ドライバーは、このメソッドを呼び出すタイミングを決定するための独自の手法を自由に選択できますが、このメソッドは、ポート ドライバーが一定の間隔で保留中の位置とクロック イベントを発生させるのに十分な頻度で呼び出す必要があります。 ただし、このメソッドのタイミングは 、IPortWaveCyclic::Notify メソッドほど重要ではありません。
アダプター ドライバーは、ISR をインストールすると、ISR のエントリ ポイントと共に ServiceContext パラメーターを送信します (詳細については、「 ISR コンテキスト情報の提供」を参照してください)。 割り込みが発生すると、オペレーティング システムは ISR を呼び出し、呼び出しパラメーターとして ServiceContext を ISR に渡します。 ServiceContext パラメーターの意味はドライバー開発者にのみ知られていますが、通常はミニポート オブジェクトへのポインターです。 ISR は、このポインターを使用して、ミニポート オブジェクトに関する情報にアクセスします。
ServiceGroup パラメーターは、COM オブジェクトの参照カウント規則に従います。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | portcls.h (Portcls.h を含む) |
IRQL | 任意のレベル |