Impostazione delle dimensioni e dell'inclinazione dell'allocazione di memoria

Un driver miniport di visualizzazione che supporta l'accelerazione hardware GDI deve impostare le dimensioni e l'inclinazione delle allocazioni di memoria di sistema o video quando elabora le chiamate di allocazione seguenti.

DxgkDdiCreateAllocation
Quando il driver elabora una chiamata a DxgkDdiCreateAllocation, deve impostare le dimensioni, in byte, dell'allocazione di memoria video o di sistema. Le dimensioni dell'allocazione sono impostate tramite il membro pCreateAllocation-> pAllocationInfo-Size.> Se l'allocazione è visibile alla CPU, le dimensioni devono includere il valore di inclinazione, ovvero la larghezza della superficie, inclusa la spaziatura interna, in byte.

Le allocazioni sono visibili alla CPU se il membro pGetStandardAllocationDriverData->pCreateGdiSurfaceData-Type> è impostato su D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE o D3DKMDT_GDISURFACE_EXISTINGSYSMEM. Per le proprietà di questi tipi di superficie, vedere le descrizioni in D3DKMDT_GDISURFACETYPE.

DxgkDdiGetStandardAllocationDriverData
Quando il driver elabora una chiamata a DxgkDdiGetStandardAllocationDriverData per un'allocazione visibile alla CPU, deve:

  1. Impostare il membro pGetStandardAllocationDriverData->StandardAllocationType su D3DKMDT_STANDARDALLOCATION_GDISURFACE.

  2. Impostare la descrizione di una superficie che può essere usata per il reindirizzamento da GDI Hardware Acceleration e Desktop Windows Manager (DWM) tramite la struttura D3DKMDT_GDISURFACEDATA a cui punta il membro pGetStandardAllocationDriverData>-pCreateGdiSurfaceData. Ad esempio, impostare il passo dell'allocazione tramite il membro Pitch di D3DKMDT_GDISURFACEDATA.