DXGKDDI_QUERYDIRTYBITDATA コールバック関数 (d3dkmddi.h)
Dxgkrnl は DxgkDdiQueryDirtyBitData を呼び出して、カーネル モードディスプレイ ミニポート ドライバー (KMD) からダーティビットプレーン データのコピーを要求します。
構文
DXGKDDI_QUERYDIRTYBITDATA DxgkddiQuerydirtybitdata;
NTSTATUS DxgkddiQuerydirtybitdata(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_QUERYDIRTYBITDATA pArgs
)
{...}
パラメーター
hAdapter
[入力]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 KMD は以前、DxgiDdiAddDevice 関数の MiniportDeviceContext 出力パラメーターで Dxgkrnl にこのハンドルを提供しました。
pArgs
[入力/出力]クエリの入力情報と出力情報を含む DXGKARG_QUERYDIRTYBITDATA 構造体へのポインター。
戻り値
DxgkDdiQueryDirtyBitData は、クエリが正常に完了した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、適切な NTSTATUS エラー コードを返します。
注釈
関数は、要求されたダーティ情報のメモリベースと潜在的なサブ範囲識別子を提供します。 KMD は、結果のデータを出力バッファーに書き込む必要があります。 DxgkDdiQueryDirtyBitData を使用すると、メモリベースのすべての範囲に対してクエリを実行するか、単一の範囲に対してクエリを実行できます。
メモリがすぐに使用可能になると、 Dxgkrnl は 1 回の呼び出しを使用してこの操作を高速化し、必要なすべてのデータに一度にクエリを実行しようとします。 ただし、メモリの不足状態では、より小さい固定サイズのバッファーを使用した前方の進行状況が必要になる場合があります。これは、DdiStartDirtyTracking の以前の呼び出しから追跡されるメモリベースの小さなサブセットにすぎません。 要求されたダーティビットプレーン範囲は、アクティブに追跡されるダーティ範囲を超えることはありません。
詳細については、「 ダーティ ビット追跡」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 11バージョン 24H2 (WDDM 3.2) |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |