DXGKDDI_GETSTANDARDALLOCATIONDRIVERDATA callback function (d3dkmddi.h)

The DxgkDdiGetStandardAllocationDriverData function returns a description of a standard allocation type.

Syntax

DXGKDDI_GETSTANDARDALLOCATIONDRIVERDATA DxgkddiGetstandardallocationdriverdata;

NTSTATUS DxgkddiGetstandardallocationdriverdata(
  [in]     IN_CONST_HANDLE hAdapter,
  [in/out] INOUT_PDXGKARG_GETSTANDARDALLOCATIONDRIVERDATA pGetStandardAllocationDriverData
)
{...}

Parameters

[in] hAdapter

A handle to a context block that is associated with a display adapter. The kernel-mode display driver (KMD) previously provided this handle to Dxgkrnl in its DxgkDdiAddDevice function.

[in/out] pGetStandardAllocationDriverData

A pointer to aDXGKARG_GETSTANDARDALLOCATIONDRIVERDATA structure that describes a standard allocation.

Return value

DxgkDdiGetStandardAllocationDriverData returns one of the following values:

Return code Description
STATUS_SUCCESS DxgkDdiGetStandardAllocationDriverData successfully returned a description of the standard allocation type.
STATUS_NO_MEMORY DxgkDdiGetStandardAllocationDriverData couldn't allocate memory that was required for it to complete.

Remarks

Standard allocation types are allocations that must be created in kernel mode without communication from the user-mode display driver.

Dxgkrnl calls the kernel mode driver's (KMD's) DxgkDdiGetStandardAllocationDriverData function to generate a description of the standard allocation type that the pGetStandardAllocationDriverData parameter specifies. KMD returns the description of the allocation type in the pAllocationPrivateDriverData and pResourcePrivateDriverData members of the DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA structure that the pGetStandardAllocationDriverData parameter points to. Dxgkrnl subsequently passes the description to the DxgkDdiCreateAllocation function to actually create the allocation.

Beginning with Windows 7, if KMD processes a call to the DxgkDdiGetStandardAllocationDriverData function to create allocations for GDI hardware acceleration, the driver should set the pitch of the allocation for CPU visible allocations, **pGetStandardAllocationDriverData->pCreateGdiSurfaceData->**Pitch.

DxgkDdiGetStandardAllocationDriverData should be made pageable.

Requirements

Requirement Value
Minimum supported client Windows Vista
Target Platform Desktop
Header d3dkmddi.h
IRQL PASSIVE_LEVEL

See also

DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA

DxgkDdiAddDevice

DxgkDdiCreateAllocation