DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA structure (d3dkmddi.h)

The DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA structure describes a standard allocation type.

Syntax

typedef struct _DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA {
  [in]     D3DKMDT_STANDARDALLOCATION_TYPE StandardAllocationType;
  union {
    [in]     D3DKMDT_SHAREDPRIMARYSURFACEDATA *pCreateSharedPrimarySurfaceData;
    [in]     D3DKMDT_SHADOWSURFACEDATA        *pCreateShadowSurfaceData;
    [in]     D3DKMDT_STAGINGSURFACEDATA       *pCreateStagingSurfaceData;
    [in]     D3DKMDT_GDISURFACEDATA           *pCreateGdiSurfaceData;
             D3DKMDT_VIRTUALGPUSURFACEDATA    *pCreateVirtualGpuSurfaceData;
  };
  [in/out] VOID                            *pAllocationPrivateDriverData;
  [out]    UINT                            AllocationPrivateDriverDataSize;
  [in/out] VOID                            *pResourcePrivateDriverData;
  [out]    UINT                            ResourcePrivateDriverDataSize;
           UINT                            PhysicalAdapterIndex;
} DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA;

Members

[in] StandardAllocationType

A D3DKMDT_STANDARDALLOCATION_TYPE-typed value that identifies the type of standard allocation to describe.

[in] pCreateSharedPrimarySurfaceData

A pointer to a D3DKMDT_SHAREDPRIMARYSURFACEDATA structure, if StandardAllocationType specifies D3DKMDT_STANDARDALLOCATION_SHAREDPRIMARYSURFACE.

[in] pCreateShadowSurfaceData

A pointer to a D3DKMDT_SHADOWSURFACEDATA structure, if StandardAllocationType specifies D3DKMDT_STANDARDALLOCATION_SHADOWSURFACE.

[in] pCreateStagingSurfaceData

A pointer to a D3DKMDT_STAGINGSURFACEDATA structure, if StandardAllocationType specifies D3DKMDT_STANDARDALLOCATION_STAGINGSURFACE.

[in] pCreateGdiSurfaceData

A pointer to a D3DKMDT_GDISURFACEDATA structure, only available if StandardAllocationType specifies D3DKMDT_STANDARDALLOCATION_GDISURFACE.

This member is available beginning with Windows 7.

pCreateVirtualGpuSurfaceData

Pointer to a D3DKMDT_VIRTUALGPUSURFACEDATA structure if StandardAllocationType is D3DKMDT_STANDARDALLOCATION_VIRTUALGPUSURFACE. Available starting in WDDM 2.1.

[in/out] pAllocationPrivateDriverData

A pointer to a block of allocation private data that describes the standard allocation type; otherwise, this member is NULL. The allocation private data that the display miniport driver's DxgkDdiGetStandardAllocationDriverData function returns depends on the type that the driver requests in StandardAllocationType.

[out] AllocationPrivateDriverDataSize

The size, in bytes, of the allocation private data that pAllocationPrivateDriverData points to. If the driver sets pAllocationPrivateDriverData to NULL, the driver should set AllocationPrivateDriverDataSize to the size of the buffer that the driver requires to describe the given standard allocation type.

If the driver does not use private data for each allocation for standard allocations types, the driver can set AllocationPrivateDriverDataSize to zero.

[in/out] pResourcePrivateDriverData

A pointer to a block of resource private data that describes the standard allocation type; otherwise, this member is NULL. The resource private data that the display miniport driver's DxgkDdiGetStandardAllocationDriverData function returns depends on the type that the driver requests in StandardAllocationType.

[out] ResourcePrivateDriverDataSize

The size, in bytes, of the resource private data that pResourcePrivateDriverData points to. If the driver sets pResourcePrivateDriverData to NULL, the driver should set ResourcePrivateDriverDataSize to the size of the buffer that the driver requires to describe the given standard allocation type.

If the driver does not use private data for each resource for standard allocations types, the driver can set ResourcePrivateDriverDataSize to zero.

PhysicalAdapterIndex

Remarks

If the display miniport driver returns NULL in the pAllocationPrivateDriverData and pResourcePrivateDriverData members, the driver should return the sizes of the buffers that the driver requires in the AllocationPrivateDriverDataSize and ResourcePrivateDriverDataSize members. However, the driver should not change the contents of the standard allocation structure in the union that DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA contains to obtain the required sizes of the buffers.

Although the driver can set ResourcePrivateDriverDataSize or AllocationPrivateDriverDataSize to zero, the driver cannot set both to zero.

Requirements

Requirement Value
Minimum supported client Windows Vista
Header d3dkmddi.h (include D3dkmddi.h)

See also

D3DKMDT_GDISURFACEDATA

D3DKMDT_SHADOWSURFACEDATA

D3DKMDT_SHAREDPRIMARYSURFACEDATA

D3DKMDT_STAGINGSURFACEDATA

D3DKMDT_STANDARDALLOCATION_TYPE

D3DKMDT_VIRTUALGPUSURFACEDATA

DxgkDdiGetStandardAllocationDriverData