DXGKARG_CANCELCOMMAND 结构 (d3dkmddi.h)
指定在命令从硬件队列中删除后由 DxgkDdiCancelCommand 函数清理的内部资源。
语法
typedef struct _DXGKARG_CANCELCOMMAND {
[in] HANDLE hContext;
[out] VOID *pDmaBuffer;
[in] UINT DmaBufferSize;
[in] UINT DmaBufferSubmissionStartOffset;
[in] UINT DmaBufferSubmissionEndOffset;
[in] VOID *pDmaBufferPrivateData;
[in] UINT DmaBufferPrivateDataSize;
[in] UINT DmaBufferPrivateDataSubmissionStartOffset;
[in] UINT DmaBufferPrivateDataSubmissionEndOffset;
[in] const DXGK_ALLOCATIONLIST *pAllocationList;
[in] UINT AllocationListSize;
[in] const D3DDDI_PATCHLOCATIONLIST *pPatchLocationList;
[in] UINT PatchLocationListSize;
[in] UINT PatchLocationListSubmissionStart;
[in] UINT PatchLocationListSubmissionLength;
D3DGPU_VIRTUAL_ADDRESS DmaBufferVirtualAddress;
UINT DmaBufferUmdPrivateDataSize;
} DXGKARG_CANCELCOMMAND;
成员
[in] hContext
如果驱动程序是多引擎感知 (即,驱动程序支持上下文创建) ,这是取消请求源自的设备上下文的句柄。
对于某些分页操作, hContext (例如,在电源管理) 期间逐出整个帧缓冲区内容的分页操作为 NULL 。 分页操作由 Flags 成员中的分页位字段标志指示。
[out] pDmaBuffer
指向 DMA 缓冲区开头的指针,该缓冲区以 4 KB 对齐。
[in] DmaBufferSize
pDmaBuffer 指向的 DMA 缓冲区的大小(以字节为单位)。
[in] DmaBufferSubmissionStartOffset
从 pDmaBuffer 指定的 DMA 缓冲区开头到需要取消的 DMA 缓冲区部分开头的偏移量(以字节为单位)。 在修补时收到的偏移量与提交时收到的偏移量匹配。
[in] DmaBufferSubmissionEndOffset
从 pDmaBuffer 指定的 DMA 缓冲区开头到需要取消的 DMA 缓冲区部分末尾的偏移量(以字节为单位)。
[in] pDmaBufferPrivateData
指向与 pDmaBuffer 指向的 DMA 缓冲区关联的驻留驱动程序专用数据的指针。
[in] DmaBufferPrivateDataSize
pDmaBufferPrivateData 上的专用驱动程序数据的大小(以字节为单位)。
请注意, DmaBufferPrivateDataSize 表示专用驱动程序数据缓冲区的整个长度;但是,与当前取消请求关联的部分可能较小。
[in] DmaBufferPrivateDataSubmissionStartOffset
从 pDmaBufferPrivateData 指定的 DMA 缓冲区专用数据的开头到与当前取消请求关联的私有数据部分的开头的偏移量(以字节为单位)。
[in] DmaBufferPrivateDataSubmissionEndOffset
从 pDmaBufferPrivateData 指定的 DMA 缓冲区专用数据的开头到与当前取消请求关联的私有数据部分末尾的偏移量(以字节为单位)。
[in] pAllocationList
指向 DXGK_ALLOCATIONLIST 结构的数组的指针,该数组与 pDmaBuffer 指向的 DMA 缓冲区关联的分配列表。
[in] AllocationListSize
pAllocationList 指定的数组中的元素数。
请注意 ,AllocationListSize 表示分配列表的总大小;但是,与当前取消请求关联的分配列表部分可能较小。
[in] pPatchLocationList
指向 D3DDDI_PATCHLOCATIONLIST 结构的数组的指针,该数组与 pDmaBuffer 指向的 DMA 缓冲区关联的修补程序位置列表。
请注意,数组可以以元素开头,该元素位于用于修补 DMA 缓冲区的范围之前。
[in] PatchLocationListSize
pPatchLocationList 指定的数组中的元素数。
请注意 ,PatchLocationListSize 表示修补程序位置列表的总大小;但是,驱动程序必须处理的范围通常较小。
[in] PatchLocationListSubmissionStart
pPatchLocationList 指定必须处理的修补程序位置列表中的第一个元素的索引。
[in] PatchLocationListSubmissionLength
pPatchLocationList 指定必须处理的修补程序位置列表中的元素数。
DmaBufferVirtualAddress
DmaBufferUmdPrivateDataSize
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 |
最低受支持的服务器 | Windows Server 2012 |
标头 | d3dkmddi.h |