Função HeapVidMemAllocAligned (dmemmgr.h)
A função HeapVidMemAllocAligned aloca off_screen_memory para um driver de exibição usando o gerenciador de heap de memória de vídeo DirectDraw.
Sintaxe
FLATPTR HeapVidMemAllocAligned(
[in] LPVIDMEM lpVidMem,
[in] DWORD dwWidth,
[in] DWORD dwHeight,
[in] LPSURFACEALIGNMENT lpAlignment,
[out] LPLONG lpNewPitch
);
Parâmetros
[in] lpVidMem
Ponteiro para uma estrutura VIDEOMEMORY que representa o heap DirectDraw do qual alocar a superfície.
[in] dwWidth
É a largura em bytes da superfície solicitada.
[in] dwHeight
É a altura em linhas de verificação da superfície solicitada.
[in] lpAlignment
Ponteiro para uma estrutura SURFACEALIGNMENT que descreve as restrições de alinhamento para a superfície.
[out] lpNewPitch
É o local no qual o valor de pitch resultante é gravado. Essas informações são relevantes apenas para heaps lineares (não retangulares) fora da tela.
Valor retornado
HeapVidMemAllocAligned retorna o deslocamento FLATPTR da alocação resultante após o sucesso. Caso contrário, ele retornará zero.
Comentários
O driver deve usar a matriz de estruturas VIDEOMEMORY que sua função DrvGetDirectDrawInfo recebe para determinar o valor de lpVidMem com o qual chamar HeapVidMemAllocAligned. O driver recebe essa matriz no parâmetro pvmList durante a segunda chamada para DrvGetDirectDrawInfo. É possível que DrvGetDirectDrawInfo não seja chamado quando existem condições de memória insuficiente no sistema. Consequentemente, o driver deve sempre marcar para garantir que ele tenha um ponteiro não NULL em pvmList.
Requisitos
Cliente mínimo com suporte | Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows. |
Plataforma de Destino | Universal |
Cabeçalho | dmemmgr.h (inclua Winddi.h) |
Biblioteca | Win32k.lib |
DLL | Win32k.sys |