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
[in]用于查询修改状态的物理内存页范围的集合的句柄。 此句柄以前是通过调用 DxgkDdiCreateMemoryBasis创建的。
SubrangeIndex
[in]如果指示子范围(请参阅下面的 SubrangeSize),则此数据表示要从内存基础中查询的范围。
SubrangeOffset
[in]如果 SubrangeSize 不是 0,则 SubrangeOffset 表示从中选择的子范围中的可选偏移量,从中查询当前脏位平面。 此值是字节偏移量,始终是位平面页大小的倍数。
SubrangeSize
[in]指定要查询的内存基础的范围。 SubrangeSize 为 0 时,驱动程序应查询整个内存基础。 指定非零大小时,驱动程序应查询内存基数的单个范围,其中 SubrangeIndex,SubrangeOffset 提供要查询的物理间隔的起始索引。 SubrangeSize 以字节为单位,并且始终是位平面页面大小的倍数。
Buffer
[out]要在其中写入生成的位平面数据的缓冲区。
BufferSize
[out]位平面缓冲区的大小(以字节为单位)。 保证大小足够大,以容纳指定子范围中的每页一位(至少 Size/DXGK_DIRTY_BIT_TRACKING_SEGMENT_CAPS::PageSize/8
(向上舍入)字节。 如果查询单个子范围,BufferSize 表示 SubrangeSize,而如果引用了整个内存基础,则 BufferSize 是基础范围内所有 SizeInBytes 的总和。
Flags
[in]一个或多个 DXGKARG_QUERYDIRTYBITDATAFLAGS 值,指定调用的其他行为。
言论
有关详细信息,请参阅 脏位跟踪。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 11 版本 24H2 (WDDM 3.2) |
标头 | d3dkmddi.h |