次の方法で共有


DXGKARG_QUERYDIRTYBITDATA 構造体 (d3dkmddi.h)

DXGKARG_QUERYDIRTYBITDATAは、ダーティビットプレーン データのクエリに使用する DxgkDdiQueryDirtyBitData の入出力パラメーターです。

構文

typedef struct _DXGKARG_QUERYDIRTYBITDATA {
  HANDLE MemoryBasis;
  UINT64 SubrangeIndex;
  UINT64 SubrangeOffset;
  UINT64 SubrangeSize;
  PVOID  Buffer;
  SIZE_T BufferSize;
  UINT   Flags;
} DXGKARG_QUERYDIRTYBITDATA;

メンバー

MemoryBasis

[入力]変更された状態を照会する物理メモリ ページの範囲のコレクションを処理します。 このハンドルは、 DxgkDdiCreateMemoryBasis の呼び出しによって以前に作成されました。

SubrangeIndex

[入力]サブ範囲が示されている場合 (後述の「SubrangeSize」を参照)、このデータは、クエリの対象となるメモリベースの範囲を表します。

SubrangeOffset

[入力]SubrangeSize が 0 でない場合、SubrangeOffset は、現在のダーティビットプレーンのクエリを実行するために選択されたサブ範囲への省略可能なオフセットを表します。 この値はバイト単位のオフセットであり、常にビットプレーン ページ サイズの倍数です。

SubrangeSize

[入力]クエリを実行するメモリベースの範囲を指定します。 SubrangeSize が 0 の場合、ドライバーはメモリベース全体を照会する必要があります。 0 以外のサイズを指定すると、ドライバーはメモリベースの単一の範囲に対してクエリを実行する必要があります。 ここで、SubrangeIndexSubrangeOffset は、クエリを実行する物理間隔の開始インデックスを提供します。 SubrangeSize はバイト単位で、常にビットプレーン ページ サイズの倍数です。

Buffer

[out]結果のビットプレーン データを書き込むバッファー。

BufferSize

[out]ビット プレーン バッファーのサイズ (バイト単位)。 サイズは、指定されたサブ範囲 (少なくとも Size/DXGK_DIRTY_BIT_TRACKING_SEGMENT_CAPS::PageSize/8 (切り上げられた) バイト) 内のページあたり 1 ビットに収まるのに十分な大きさであることが保証されます。 1 つのサブ範囲に対してクエリを実行した場合、 BufferSizeSubrangeSize を表し、メモリベース全体が参照されている場合、 BufferSize は範囲内のすべての SizeInBytes の合計です。

Flags

[入力]呼び出 しの 追加の動作を指定する 1 つ以上のDXGKARG_QUERYDIRTYBITDATAFLAGS値。

注釈

詳細については、「 ダーティ ビット追跡」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 11バージョン 24H2 (WDDM 3.2)
Header d3dkmddi.h

こちらもご覧ください

DXGKARG_QUERYDIRTYBITDATAFLAGS

DxgkDdiCreateMemoryBasis

DxgkDdiQueryDirtyBitData