DXGKARG_CREATEHWQUEUE structure (d3dkmddi.h)

Syntax

typedef struct _DXGKARG_CREATEHWQUEUE {
  HANDLE                    hHwQueue;
  D3DDDI_CREATEHWQUEUEFLAGS Flags;
  UINT                      PrivateDriverDataSize;
  VOID                      *pPrivateDriverData;
  D3DKMT_HANDLE             hHwQueueProgressFence;
  VOID                      *HwQueueProgressFenceCPUVirtualAddress;
  D3DGPU_VIRTUAL_ADDRESS    HwQueueProgressFenceGPUVirtualAddress;
} DXGKARG_CREATEHWQUEUE;

Members

hHwQueue

[in/out] On input, Dxgkrnl's handle to the hardware queue. On output, the driver's handle to the hardware queue.

Flags

[in] A D3DDDI_CREATEHWQUEUEFLAGS structure containing the queue creation flags.

PrivateDriverDataSize

[in] Size in bytes of the private driver data that pPrivateDriverData points to.

pPrivateDriverData

[in/out] Pointer to the private driver data that was passed by the user-mode pfnCreateHwContextCb. Since pPrivateDriverData is an in-out parameter, KMD can also return private data back to the UMD.

hHwQueueProgressFence

[in] Handle to the GPU synchronization object created by the OS for this hardware queue. The progress fence is used to synchronize DMA buffer completion on this hardware queue.

HwQueueProgressFenceCPUVirtualAddress

[in] Kernel-mode CPU virtual address that can be used to read the currently signaled value of the hardware queue progress fence.

HwQueueProgressFenceGPUVirtualAddress

[in] GPU virtual address that can be used to read or write the value of the hardware queue progress fence. The queue progress fence value must monotonically increase with each new submission to the hardware queue. GPU instructions to update the queue progress fence must be inserted by the user-mode driver at the end of the DMA buffer being tracked.

Requirements

Requirement Value
Minimum supported client Windows 10, version 1703 (WDDM 2.2)
Header d3dkmddi.h

See also

DXGKDDI_CREATEHWQUEUE