Compartilhar via


estrutura D3DDDICB_PRESENT (d3dumddi.h)

A estrutura D3DDDICB_PRESENT descreve as alocações das quais o conteúdo é copiado de e para.

Sintaxe

typedef struct _D3DDDICB_PRESENT {
  [in] D3DKMT_HANDLE            hSrcAllocation;
  [in] D3DKMT_HANDLE            hDstAllocation;
  [in] HANDLE                   hContext;
  [in] UINT                     BroadcastContextCount;
       HANDLE                   BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
       D3DKMT_HANDLE            *BroadcastSrcAllocation;
       D3DKMT_HANDLE            *BroadcastDstAllocation;
       UINT                     PrivateDriverDataSize;
       PVOID                    pPrivateDriverData;
       BOOLEAN                  bOptimizeForComposition;
       BOOL                     SyncIntervalOverrideValid;
       D3DDDI_FLIPINTERVAL_TYPE SyncIntervalOverride;
} D3DDDICB_PRESENT;

Membros

[in] hSrcAllocation

Um tipo de dados D3DKMT_HANDLE que representa um identificador de modo kernel para a alocação de origem. A função pfnAllocateCb do runtime do Microsoft Direct3D retorna esse identificador. Portanto, o driver de exibição do modo de usuário deve usar esse identificador para copiar o conteúdo.

[in] hDstAllocation

Um tipo de dados D3DKMT_HANDLE que representa um identificador de modo kernel para a alocação de destino. hDstAllocation poderá ser zero se o destino for desconhecido; O modo kernel determinará o destino logo antes do DMA do fluxo de comandos de hardware para o processador de gráficos.

[in] hContext

Um identificador para o contexto para o qual o driver envia a operação de cópia. O driver de exibição do modo de usuário criou esse contexto anteriormente chamando a função pfnCreateContextCb .

[in] BroadcastContextCount

O número de contextos adicionais na matriz especificada pelo membro BroadcastContext .

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

Uma matriz de identificadores para os contextos adicionais para os qual transmitir a operação atual. A constante D3DDDI_MAX_BROADCAST_CONTEXT, que é definida como 64, define o número máximo de contextos adicionais para os quais o driver de exibição do modo de usuário pode transmitir a operação atual.

A difusão tem suporte apenas para operações de inversão. Para transmitir uma operação de inversão, o driver de miniporta de vídeo deve dar suporte a inversãos baseadas em MMIO (E/S mapeada na memória). Para indicar o suporte a inversãos MMIO, o driver de miniporto de exibição define o sinalizador de campo de bits FlipOnVSyncMmIo no membro FlipCaps da estrutura DXGK_DRIVERCAPS quando sua função DxgkDdiQueryAdapterInfo é chamada.

O contexto original que o membro hContext especifica e que o driver de exibição do modo de usuário apresenta não é um elemento na matriz BroadcastContext . Por exemplo, se a matriz BroadcastContext contiver um elemento, o driver de exibição do modo de usuário enviará a operação atual para o contexto proprietário (hContext) e transmitirá para esse contexto adicional.

BroadcastSrcAllocation

Alocações de qual conteúdo será apresentado.

BroadcastDstAllocation

Se não for zero, representará as alocações de destino do presente.

PrivateDriverDataSize

Tamanho dos dados do driver privado em bytes.

pPrivateDriverData

Dados de driver privado a serem passados para DdiPresent.

bOptimizeForComposition

O DWM está envolvido na composição.

SyncIntervalOverrideValid

O intervalo de sincronização do aplicativo de substituição é válido.

SyncIntervalOverride

Substitua o intervalo de sincronização do aplicativo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
Cabeçalho d3dumddi.h (inclua D3dumddi.h)

Confira também

pfnAllocateCb

pfnPresentCb