Função EngRestoreFloatingPointState (winddi.h)

A função EngRestoreFloatingPointState restaura o estado de ponto flutuante do kernel do Windows 2000 (e posterior) depois que o driver usa instruções de hardware de ponto flutuante ou MMX.

Sintaxe

BOOL EngRestoreFloatingPointState(
  [in] VOID *pBuffer
);

Parâmetros

[in] pBuffer

Ponteiro para o buffer cujo conteúdo foi preenchido por EngSaveFloatingPointState.

Valor retornado

EngRestoreFloatingPointState retornará TRUE se tiver êxito. Caso contrário, retornará FALSE.

Comentários

O driver deve salvar o estado atual do ponto flutuante do kernel antes de usar instruções de hardware de ponto flutuante. Em sistemas de arquitetura Intel, isso permite o uso de instruções MMX se elas forem compatíveis com o processador. Os drivers que não usam corretamente EngSaveFloatingPointState e EngRestoreFloatingPointState ao usar hardware de ponto flutuante ou MMX causarão corrupção aleatória de ponto flutuante ou MMX no aplicativo de chamada.

Em cada chamada para o driver, o driver deve chamar EngSaveFloatingPointState uma vez para preservar o estado do kernel antes de usar operações de ponto flutuante ou MMX. Ele também deve chamar EngRestoreFloatingPointState uma vez depois que todas as operações de ponto flutuante ou MMX forem concluídas para redefinir o estado do kernel.

A GDI salva automaticamente o estado de ponto flutuante para todas as chamadas para a rotina DrvEscape de um driver quando o escape é OPENGL_CMD, OPENGL_GETINFO ou MCDFUNCS.

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 winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvEscape

EngSaveFloatingPointState