DXGKDDI_PRESENTDISPLAYONLY コールバック関数 (d3dkmddi.h)
カーネル モードの表示専用ドライバー (KMDOD) のディスプレイ デバイスに画面イメージを表示します。
構文
DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;
NTSTATUS DxgkddiPresentdisplayonly(
IN_CONST_HANDLE hAdapter,
IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}
パラメーター
hAdapter
ディスプレイ アダプターのデバイス コンテキストへのハンドル。 KMDOD の DxgkDdiAddDevice 関数は、以前に MiniportDeviceContext パラメーターでこのハンドルを返しました。
pPresentDisplayOnly
現在の操作に関する情報を含む DXGKARG_PRESENT_DISPLAYONLY 構造体へのポインター。
戻り値
次の値のいずれか。
リターン コード | 説明 |
---|---|
STATUS_SUCCESS | 現在の操作は正常に完了しました。 |
STATUS_PENDING | 現在の操作は、完了するためにソフトウェアまたはハードウェア キューに送信されました。 この場合、KMDOD は割り込みおよび遅延プロシージャ 呼び出し (DPC) を使用して、現在の操作の進行状況を報告する必要があります。 それ以外の場合、オペレーティング システムは タイムアウト検出と回復 (TDR) プロセスを使用します。これによりエラーが報告され、KMDOD 自体を再初期化して GPU をリセットする必要があります。 「備考」で説明されているように、同期モードではこの状態コードを返さないでください。 |
また、ドライバーは、Ntstatus.h で定義されている他のエラー状態コードを返して、現在の操作で発生した問題を示すこともできます。
注釈
KMDOD は、四角形をコピーする前に、画面間のすべての移動ダーティ完了する必要があります。 さらに、KMDOD は、別の移動/コピー操作を開始する前に、各移動/コピー操作を完了する必要があります。
オペレーティング システムでは、KMDOD の現在の操作の 2 つのモード (同期と非同期) がサポートされています。 KMDOD は、ハードウェアとドライバーの実装に応じて、いつでもモードまたは切り替えを使用できます。
オペレーティング システムでは、「 スレッド化と同期のゼロ レベル」で定義されているゼロ レベルの同期モードにこの関数が従っていることを保証します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 |
サポートされている最小のサーバー | Windows Server 2012 |
対象プラットフォーム | デスクトップ |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
こちらもご覧ください
DXGKARGCB_NOTIFY_INTERRUPT_DATA