Compartilhar via


DXGKDDI_PRESENTDISPLAYONLY função de retorno de chamada (d3dkmddi.h)

Apresenta a imagem da tela para o dispositivo de exibição de um driver somente exibição do modo kernel (KMDOD).

Sintaxe

DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;

NTSTATUS DxgkddiPresentdisplayonly(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}

Parâmetros

hAdapter

Um identificador para o contexto do dispositivo para o adaptador de exibição. A função DxgkDdiAddDevice do KMDOD retornou anteriormente esse identificador no parâmetro MiniportDeviceContext .

pPresentDisplayOnly

Um ponteiro para uma estrutura DXGKARG_PRESENT_DISPLAYONLY que contém informações sobre a operação atual.

Retornar valor

Retorna um dos seguintes valores:

Código de retorno Descrição
STATUS_SUCCESS A operação atual foi concluída com êxito.
STATUS_PENDING A operação atual foi enviada para a fila de software ou hardware para ser concluída.
Nesse caso, o KMDOD deve usar uma DPC (chamada de procedimento adiado) e interrupção para relatar o progresso da operação atual. Caso contrário, o sistema operacional usa o processo de TDR (Detecção e Recuperação de Tempo Limite), que relata um erro e exige que o KMDOD se reinicialize e redefina a GPU.
Observe que esse código status não deve ser retornado para o modo síncrono, conforme descrito em Comentários.

 

O driver também pode retornar qualquer outro erro status código definido em Ntstatus.h para indicar problemas que ocorreram com a operação atual.

Comentários

O KMDOD deve concluir todas as movimentações tela a tela antes de copiar sujo retângulos. Além disso, o KMDOD deve concluir cada operação de movimentação/cópia antes de iniciar outra operação de movimentação/cópia.

O sistema operacional dá suporte a dois modos de operações presentes do KMDOD: síncrono e assíncrono. Dependendo da implementação de hardware e driver, o KMDOD pode usar o modo ou alternar entre eles a qualquer momento.

O sistema operacional garante que essa função siga o modo de sincronização de nível zero, conforme definido no Nível Zero de Threading e Sincronização.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Servidor mínimo com suporte Windows Server 2012
Plataforma de Destino Área de Trabalho
Cabeçalho d3dkmddi.h
IRQL PASSIVE_LEVEL

Confira também

DXGKARGCB_NOTIFY_INTERRUPT_DATA

DXGKARG_PRESENT_DISPLAYONLY

DxgkCbNotifyDpc

DxgkCbNotifyInterrupt

DxgkCbPresentDisplayOnlyProgress

DxgkCbQueueDpc

DxgkDdiAddDevice