Condividi tramite


Funzione HeapVidMemAllocAligned (dmemmgr.h)

La funzione HeapVidMemAllocAligned alloca off_screen_memory per un driver di visualizzazione usando la gestione heap della memoria video DirectDraw.

Sintassi

FLATPTR HeapVidMemAllocAligned(
  [in]  LPVIDMEM           lpVidMem,
  [in]  DWORD              dwWidth,
  [in]  DWORD              dwHeight,
  [in]  LPSURFACEALIGNMENT lpAlignment,
  [out] LPLONG             lpNewPitch
);

Parametri

[in] lpVidMem

Puntatore a una struttura VIDEOMEMORY che rappresenta l'heap DirectDraw da cui allocare la superficie.

[in] dwWidth

Larghezza in byte della superficie richiesta.

[in] dwHeight

Altezza nelle righe di analisi della superficie richiesta.

[in] lpAlignment

Puntatore a una struttura SURFACEALIGNMENT che descrive le restrizioni di allineamento per la superficie.

[out] lpNewPitch

Posizione in cui viene scritto il valore di passo risultante. Queste informazioni sono rilevanti solo per gli heaps lineari (nonrectangulari).

Valore restituito

HeapVidMemAllocAligned restituisce l'offset FLATPTR dell'allocazione risultante al termine dell'esito positivo. In caso contrario, restituisce zero.

Commenti

Il driver deve usare la matrice di strutture VIDEOMEMORY la funzione DrvGetDirectDrawInfo per determinare il valore di lpVidMem con cui chiamare HeapVidMemAllocAligned. Il driver riceve questa matrice nel parametro pvmList durante la seconda chiamata a DrvGetDirectDrawInfo. È possibile che DrvGetDirectDrawInfo non venga chiamato quando esistono condizioni di memoria ridotta nel sistema. Di conseguenza, il driver deve sempre verificare che abbia un puntatore non NULL in pvmList.

Requisiti

   
Client minimo supportato Disponibile in Windows 2000 e versioni successive dei sistemi operativi Windows.
Piattaforma di destinazione Universale
Intestazione dmemmgr.h (includere Winddi.h)
Libreria Win32k.lib
DLL Win32k.sys

Vedi anche

DrvGetDirectDrawInfo

SURFACEALIGNMENT

VIDEOMEMORY

VidMemFree