Compartilhar via


estrutura DXGI_OUTDUPL_FRAME_INFO (dxgi1_2.h)

A estrutura DXGI_OUTDUPL_FRAME_INFO descreve a imagem da área de trabalho atual.

Sintaxe

typedef struct DXGI_OUTDUPL_FRAME_INFO {
  LARGE_INTEGER                 LastPresentTime;
  LARGE_INTEGER                 LastMouseUpdateTime;
  UINT                          AccumulatedFrames;
  BOOL                          RectsCoalesced;
  BOOL                          ProtectedContentMaskedOut;
  DXGI_OUTDUPL_POINTER_POSITION PointerPosition;
  UINT                          TotalMetadataBufferSize;
  UINT                          PointerShapeBufferSize;
} DXGI_OUTDUPL_FRAME_INFO;

Membros

LastPresentTime

O carimbo de data/hora da última atualização da imagem da área de trabalho. O sistema operacional chama a função QueryPerformanceCounter para obter o valor. Um valor zero indica que a imagem da área de trabalho não foi atualizada desde a última vez que um aplicativo chamou o método IDXGIOutputDuplication::AcquireNextFrame para adquirir o próximo quadro da imagem da área de trabalho.

LastMouseUpdateTime

O carimbo de data/hora da última atualização para o mouse. O sistema operacional chama a função QueryPerformanceCounter para obter o valor. Um valor zero indica que a posição ou a forma do mouse não foi atualizada desde a última vez que um aplicativo chamou o método IDXGIOutputDuplication::AcquireNextFrame para adquirir o próximo quadro da imagem da área de trabalho. A posição do mouse é sempre fornecida para uma atualização do mouse. Uma nova forma de ponteiro é indicada por um valor diferente de zero no membro PointerShapeBufferSize .

AccumulatedFrames

O número de quadros acumulados pelo sistema operacional na superfície de imagem da área de trabalho desde que o aplicativo de chamada processou a última imagem da área de trabalho. Para obter mais informações sobre esse número, consulte Comentários.

RectsCoalesced

Especifica se o sistema operacional acumulou atualizações unindo sujo regiões. Portanto, as regiões sujo podem conter pixels não modificados. TRUE se sujo regiões foram acumuladas; caso contrário, FALSE.

ProtectedContentMaskedOut

Especifica se a imagem da área de trabalho pode conter conteúdo protegido que já estava apagado na imagem da área de trabalho. TRUE se o conteúdo protegido já estava preto; caso contrário, FALSE. O aplicativo pode usar essas informações para notificar o usuário remoto de que parte do conteúdo da área de trabalho pode ser protegida e, portanto, não visível.

PointerPosition

Uma estrutura DXGI_OUTDUPL_POINTER_POSITION que descreve a posição mais recente do mouse se o membro LastMouseUpdateTime for um valor diferente de zero; caso contrário, esse valor será ignorado. Esse valor fornece as coordenadas do local em que o canto superior esquerdo da forma do ponteiro é desenhado; esse valor não é a posição da área de trabalho do ponto de acesso.

TotalMetadataBufferSize

Tamanho em bytes dos buffers para armazenar todos os metadados de atualização da área de trabalho para esse quadro. Para obter mais informações sobre esse tamanho, consulte Comentários.

PointerShapeBufferSize

Tamanho em bytes do buffer para armazenar os novos dados de pixel para a forma do mouse. Para obter mais informações sobre esse tamanho, consulte Comentários.

Comentários

Um LastMouseUpdateTime diferente de zero indica uma atualização para uma posição do ponteiro do mouse ou uma posição e forma do ponteiro do mouse. Ou seja, a posição do ponteiro do mouse é sempre válida para um LastMouseUpdateTime diferente de zero; no entanto, o aplicativo deve marcar o valor do membro PointerShapeBufferSize para determinar se a forma também foi atualizada.

Se apenas o ponteiro tiver sido atualizado (ou seja, a imagem da área de trabalho não foi atualizada), os membros AccumulatedFrames, TotalMetadataBufferSize e LastPresentTime serão definidos como zero.

Um valor AccumulatedFrames de um indica que o aplicativo concluiu o processamento do último quadro antes de uma nova imagem da área de trabalho ser apresentada. Se o valor AccumulatedFrames for maior que um, mais atualizações de imagem da área de trabalho ocorreram enquanto o aplicativo processou a última atualização da área de trabalho. Nessa situação, o sistema operacional acumulou as regiões de atualização. Para obter mais informações sobre atualizações da área de trabalho, consulte Dados de atualização da área de trabalho.

Um TotalMetadataBufferSize diferente de zero indica o tamanho total dos buffers necessários para armazenar todos os metadados de atualização da área de trabalho. Um aplicativo não pode determinar o tamanho de cada tipo de metadados. O aplicativo deve chamar o método IDXGIOutputDuplication::GetFrameDirtyRects, IDXGIOutputDuplication::GetFrameMoveRects ou IDXGIOutputDuplication::GetFramePointerShape para obter informações sobre cada tipo de metadados.

Nota Para corrigir efeitos visuais, um aplicativo deve processar os dados da região de movimentação antes de processar os retângulos sujo.
 

Requisitos

   
Cliente mínimo com suporte Windows 8 e Platform Update para Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 e Platform Update para Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Cabeçalho dxgi1_2.h

Confira também

Estruturas DXGI

IDXGIOutputDuplication::AcquireNextFrame