структура 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 КБ.
[in] DmaBufferSize
Размер (в байтах) буфера DMA, на который указывает pDmaBuffer .
[in] DmaBufferSubmissionStartOffset
Смещение (в байтах) от начала буфера DMA, указанного pDmaBuffer , до начала части буфера DMA, требующей отмены. Смещение, полученное во время исправления, соответствует смещению, полученному во время отправки.
[in] DmaBufferSubmissionEndOffset
Смещение в байтах от начала буфера DMA, указанного pDmaBuffer , до конца части буфера DMA, требующей отмены.
[in] pDmaBufferPrivateData
Указатель на частные данные, находящиеся в драйвере, связанные с буфером DMA, на который указывает pDmaBuffer .
[in] DmaBufferPrivateDataSize
Размер данных частного драйвера в байтах в pDmaBufferPrivateData.
Обратите внимание, что DmaBufferPrivateDataSize представляет всю длину буфера данных частного драйвера. однако часть, связанная с текущим запросом на отмену, может быть меньше.
[in] DmaBufferPrivateDataSubmissionStartOffset
Смещение (в байтах) от начала частных данных буфера DMA, указанного pDmaBufferPrivateData , до начала части частных данных, связанной с текущим запросом отмены.
[in] DmaBufferPrivateDataSubmissionEndOffset
Смещение (в байтах) от начала частных данных буфера DMA, указанного pDmaBufferPrivateData , до конца части частных данных, связанной с текущим запросом отмены.
[in] pAllocationList
Указатель на массив DXGK_ALLOCATIONLIST структур для списка выделений, связанных с буфером DMA, на который указывает pDmaBuffer .
[in] AllocationListSize
Количество элементов в массиве, которое указывает pAllocationList .
Обратите внимание, что AllocationListSize представляет общий размер списка выделения. однако часть списка выделения, связанная с текущим запросом на отмену, может быть меньше.
[in] pPatchLocationList
Указатель на массив D3DDDI_PATCHLOCATIONLIST структур для списка расположений исправлений, связанных с буфером DMA, на который указывает pDmaBuffer .
Обратите внимание, что массив может начинаться с элемента, который находится перед диапазоном, используемым для исправления буфера DMA.
[in] PatchLocationListSize
Количество элементов в массиве, которое указывает pPatchLocationList .
Обратите внимание, что PatchLocationListSize представляет общий размер списка расположений исправлений. Однако диапазон, который должен обработать драйвер, обычно меньше.
[in] PatchLocationListSubmissionStart
Индекс первого элемента в списке patch-location, который указывает pPatchLocationList , который необходимо обработать.
[in] PatchLocationListSubmissionLength
Количество элементов в списке расположений исправлений, которое указывает pPatchLocationList , которые должны быть обработаны.
DmaBufferVirtualAddress
DmaBufferUmdPrivateDataSize
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 |
Минимальная версия сервера | Windows Server 2012 |
Верхняя часть | d3dkmddi.h |