PDD_SURFCB_DESTROYSURFACE funzione di callback (ddrawint.h)

La funzione callback DdDestroySurface distrugge una superficie DirectDraw.

Sintassi

PDD_SURFCB_DESTROYSURFACE PddSurfcbDestroysurface;

DWORD PddSurfcbDestroysurface(
  PDD_DESTROYSURFACEDATA unnamedParam1
)
{...}

Parametri

unnamedParam1

Punta a una struttura DD_DESTROYSURFACEDATA che contiene le informazioni necessarie per eliminare una superficie.

Valore restituito

DdDestroySurface restituisce uno dei codici di callback seguenti:

Commenti

Se DirectDraw ha eseguito l'allocazione della memoria in fase di creazione della superficie e il driver non è stato coinvolto nell'allocazione, DirectDraw non chiama la funzione DdDestroySurface del driver per distruggere la superficie.

Se il driver esegue la gestione della memoria di superficie stessa, DdDestroySurface deve liberare la memoria della superficie ed eseguire qualsiasi altra pulizia, ad esempio liberando i dati privati archiviati nei membri dwReserved1 delle strutture DD_SURFACE_GLOBAL e DD_SURFACE_LOCAL .

Per una superficie gestita dal driver, se la superficie è persistente , ovvero il flag di DDSCAPS2_DONOTPERSIST nel membro dwCaps2 della struttura DDSCAPS2 per la superficie non è impostata), DdDestroySurface può essere chiamato allo scopo di rimuovere la superficie dalla memoria video. In questo caso, il driver di visualizzazione può continuare a mantenere i dati privati nei membri dwReserved1 fino a quando DdDestroySurface viene chiamato per distruggere effettivamente la superficie.

DdDestroySurface può essere chiamato con un PDEV disabilitato. PDEV è disabilitato o abilitato chiamando la funzione DrvAssertMode del driver visualizzato. Per altre informazioni, vedere Gestione di PDEV .

Requisiti

   
Piattaforma di destinazione Desktop
Intestazione ddrawint.h (include Winddi.h)

Vedi anche

DDSCAPS2

DD_DESTROYSURFACEDATA

DdCreateSurface