DXGKCB_NOTIFY_DPC コールバック関数 (d3dkmddi.h)
カーネル モードディスプレイ ミニポート ドライバーは 、遅延 プロシージャ 呼び出し (DPC) 時にグラフィックス ハードウェアの更新プログラムについてグラフィックス処理装置 (GPU) スケジューラに通知するDXGKCB_NOTIFY_DPCを呼び出します。
構文
DXGKCB_NOTIFY_DPC DxgkcbNotifyDpc;
void DxgkcbNotifyDpc(
[in] IN_CONST_HANDLE hAdapter
)
{...}
パラメーター
[in] hAdapter
GPU のアダプター オブジェクトへのハンドル。 ドライバーは、DxgkDdiStartDevice 関数の呼び出しで、DXGKRNL_INTERFACE構造体の DeviceHandle メンバーからハンドルを受け取ります。
戻り値
なし
解説
ディスプレイ ミニポート ドライバーの DPC コールバック ルーチンは 、 グラフィックス ハードウェアへのダイレクト メモリ アクセス (DMA) ストリームを介してフェンスへの更新について GPU スケジューラに通知するDXGKCB_NOTIFY_DPCを呼び出します。
DXGKCB_XXX 関数は Dxgkrnl によって実装されます。 このコールバック関数を使用するには、DXGKRNL_INTERFACEを介して DxgkCbNotifyDpc を呼び出します。
例
次のコード例は、DMA または V-Sync 割り込みについて GPU スケジューラに通知する方法を示しています。
NTSTATUS
D3DDDINotifyDPC(
HW_DEVICE_EXTENSION *pAdapter)
{
DXGKRNL_INTERFACE *pCallback;
DXGKCB_NOTIFY_DPC DxgkCbNotifyDpc;
pCallback = &(pAdapter->ddiCallback);
if (! pAdapter->pVidSchDPCCB) {
return (STATUS_SUCCESS);
}
DxgkCbNotifyDpc = (DXGKCB_NOTIFY_DPC)pAdapter->pVidSchDPCCB;
DxgkCbNotifyDpc(pAdapter->DeviceHandle);
return (STATUS_SUCCESS);
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista (WDDM 1.0) |
対象プラットフォーム | デスクトップ |
Header | d3dkmddi.h (D3dkmddi.h を含む) |
IRQL | DISPATCH_LEVEL |