D3DDDICB_RENDER structure

The D3DDDICB_RENDER structure describes the current command buffer to be rendered.

Syntax


typedef struct _D3DDDICB_RENDER {
  UINT                     CommandLength;
  UINT                     CommandOffset;
  UINT                     NumAllocations;
  UINT                     NumPatchLocations;
  VOID                     *pNewCommandBuffer;
  UINT                     NewCommandBufferSize;
  D3DDDI_ALLOCATIONLIST    *pNewAllocationList;
  UINT                     NewAllocationListSize;
  D3DDDI_PATCHLOCATIONLIST *pNewPatchLocationList;
  UINT                     NewPatchLocationListSize;
  D3DDDICB_RENDERFLAGS     Flags;
  HANDLE                   hContext;
  UINT                     BroadcastContextCount;
  HANDLE                   BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  ULONG                    QueuedBufferCount;
#if (D3D_UMD_INTERFACE_VERSION >= D3D_UMD_INTERFACE_VERSION_WIN7)
  D3DGPU_VIRTUAL_ADDRESS   NewCommandBuffer;
  VOID                     *pPrivateDriverData;
  UINT                     PrivateDriverDataSize;
#endif 
} D3DDDICB_RENDER;

Members

CommandLength

[in] The size, in bytes, of the command buffer, starting from offset zero.

CommandOffset

[in] The offset, in bytes, to the first command in the command buffer.

NumAllocations

[in] The number of elements in the allocation list.

NumPatchLocations

[in] The number of elements in the patch-location list.

pNewCommandBuffer

[out] A pointer to a command buffer that the user-mode display driver receives to use in its next call to the pfnRenderCb function.

NewCommandBufferSize

[in/out] The size, in bytes, that the user-mode display driver requests for the next command buffer.

The driver receives the size, in bytes, of the next command buffer to use.

pNewAllocationList

[out] An array of D3DDDI_ALLOCATIONLIST structures that the user-mode display driver receives to use as the allocation list in its next call to the pfnRenderCb function.

NewAllocationListSize

[in/out] The number of elements that the user-mode display driver requests for the next allocation list.

The driver receives the number of elements for the allocation list that will be available when the next command buffer is submitted.

pNewPatchLocationList

[out] An array of D3DDDI_PATCHLOCATIONLIST structures that the user-mode display driver receives to use as the patch-location list in its next call to the pfnRenderCb function.

NewPatchLocationListSize

[in/out] The number of elements that the user-mode display driver requests for the next patch-location list.

The driver receives the number of elements for the patch-location list that will be available when the next command buffer is submitted.

Flags

[in] A D3DDDICB_RENDERFLAGS structure that indicates information about a command buffer to be rendered.

hContext

[in] A handle to the context that the driver submits the rendering operation to. The user-mode display driver previously created this context by calling the pfnCreateContextCb function.

BroadcastContextCount

[in] The number of additional contexts in the array that the BroadcastContext member specifies.

BroadcastContext

[in] An array of handles to the additional contexts to broadcast the current command buffer to. The D3DDDI_MAX_BROADCAST_CONTEXT constant, which is defined as 64, defines the maximum number of additional contexts that the user-mode display driver can broadcast the current command buffer to.

The original context that the hContext member specifies and that owns the command buffer is not an element in the BroadcastContext array. For example, if the BroadcastContext array contains one element, the user-mode display driver sends the command buffer to the owning context (hContext) and broadcasts to that one additional context.

QueuedBufferCount

[out] The number of DMA buffers that are queued to the context that the hContext member specifies after the current submission occurs.

NewCommandBuffer

This member is reserved and should be set to zero.

This member is available beginning with Windows 7.

pPrivateDriverData

[in] This member is reserved and should be set to zero.

This member is available beginning with Windows 7.

PrivateDriverDataSize

[in] This member is reserved and should be set to zero.

This member is available beginning with Windows 7.

Requirements

Version

Available in Windows Vista and later versions of the Windows operating systems.

Header

D3dumddi.h (include D3dumddi.h)

See also

D3DDDI_ALLOCATIONLIST
D3DDDI_PATCHLOCATIONLIST
D3DDDICB_RENDERFLAGS
pfnRenderCb

 

 

Send comments about this topic to Microsoft

Show: