estrutura D3DKMT_RENDER (d3dkmthk.h)
A estrutura D3DKMT_RENDER descreve o buffer de comando atual a ser renderizado.
Sintaxe
typedef struct _D3DKMT_RENDER {
union {
[in] D3DKMT_HANDLE hDevice;
[in] D3DKMT_HANDLE hContext;
};
[in] UINT CommandOffset;
[in] UINT CommandLength;
[in] UINT AllocationCount;
[in] UINT PatchLocationCount;
[out] VOID *pNewCommandBuffer;
[in/out] UINT NewCommandBufferSize;
[out] D3DDDI_ALLOCATIONLIST *pNewAllocationList;
[in/out] UINT NewAllocationListSize;
[out] D3DDDI_PATCHLOCATIONLIST *pNewPatchLocationList;
[in/out] UINT NewPatchLocationListSize;
[in] D3DKMT_RENDERFLAGS Flags;
[in] D3DKMT_ALIGN64 ULONGLONG PresentHistoryToken;
[in] ULONG BroadcastContextCount;
D3DKMT_HANDLE BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
[out] ULONG QueuedBufferCount;
[out] D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS NewCommandBuffer;
VOID *pPrivateDriverData;
UINT PrivateDriverDataSize;
} D3DKMT_RENDER;
Membros
[in] hDevice
Um tipo de dados D3DKMT_HANDLE que representa um identificador de modo kernel para o dispositivo para o qual o buffer de comando é renderizado. Um identificador de dispositivo é fornecido para a função D3DKMTRender
[in] hContext
Um tipo de dados D3DKMT_HANDLE que representa um identificador de modo kernel para o contexto do dispositivo no qual o buffer de comando é renderizado.
[in] CommandOffset
O deslocamento, em bytes, para o primeiro comando no buffer de comando.
[in] CommandLength
O tamanho, em bytes, do buffer de comando começando do deslocamento zero.
[in] AllocationCount
O número de elementos na lista de alocação enviada.
[in] PatchLocationCount
O número de elementos na lista de locais de patch enviados.
[out] pNewCommandBuffer
Um ponteiro para um buffer de comando que o OpenGL ICD recebe para usar em sua próxima chamada para a função D3DKMTRender. O driver deve sempre atualizar seu ponteiro para o buffer de comando após qualquer chamada para D3DKMTRender, independentemente de a chamada ser bem-sucedida.
Com suporte no Windows 7 e versões posteriores:
[in] Um ponteiro para o buffer de comando a ser renderizado se o sinalizador
[in/out] NewCommandBufferSize
O tamanho, em bytes, que o OpenGL ICD solicita para o próximo buffer de comando se o
Dependendo das condições de memória atuais, o tamanho da saída pode não corresponder ao tamanho de entrada.
[out] pNewAllocationList
Uma matriz de estruturas D3DDDI_ALLOCATIONLIST que o OpenGL ICD recebe para usar como a lista de alocação em sua próxima chamada para a função D3DKMTRender. O driver sempre deve atualizar seu ponteiro para a lista de alocação após qualquer chamada para D3DKMTRender, independentemente de a chamada ser bem-sucedida.
Com suporte no Windows 7 e versões posteriores:
[in] Um ponteiro para a lista de alocação a ser renderizada se o sinalizador
[in/out] NewAllocationListSize
O número de elementos que o OpenGL ICD solicita para a próxima lista de alocação se o ResizeAllocationList sinalizador de campo de bits for especificado no Flags membro. Se ResizeAllocationList não for especificado, o valor em NewAllocationListSize será ignorado. Na saída, o driver recebe o número de elementos que estarão disponíveis em uma matriz de alocações quando o próximo buffer de comandos for enviado.
Dependendo das condições de memória atuais, o tamanho da saída pode não corresponder ao tamanho de entrada.
[out] pNewPatchLocationList
Uma matriz de estruturas de D3DDDI_PATCHLOCATIONLIST que o OpenGL ICD recebe para usar como a lista de locais de patch em sua próxima chamada para a função D3DKMTRender. O driver sempre deve atualizar seu ponteiro para a lista de locais de patch após qualquer chamada para D3DKMTRender, independentemente de a chamada ser bem-sucedida.
[in/out] NewPatchLocationListSize
O número de elementos que o OpenGL ICD solicita para a próxima lista de locais de patch se o ResizePatchLocationList sinalizador de campo de bits for especificado no Flags membro. Se ResizePatchLocationList não for especificado, o valor em NewPatchLocationListSize será ignorado. Na saída, o driver recebe o número de elementos que estarão disponíveis em uma matriz de locais de patch quando o próximo buffer de comandos for enviado.
Dependendo das condições de memória atuais, o tamanho da saída pode não corresponder ao tamanho de entrada.
[in] Flags
Uma estrutura D3DKMT_RENDERFLAGS que indica o tipo de buffer de comando, em sinalizadores de campo de bit, a ser renderizado.
[in] PresentHistoryToken
O token de histórico atual para chamadas redirecionadas para a função DxgkDdiPresent
Um token de histórico presente é um pacote de dados que o aplicativo de renderização envia para informar ao DWM (Gerenciador de Janelas da Área de Trabalho) que a renderização está concluída e que o buffer de back da cadeia de troca está pronto para ser apresentado.
[in] BroadcastContextCount
O número de contextos adicionais na matriz que o BroadcastContext especifica.
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
Uma matriz de tipos de dados D3DKMT_HANDLE que representam identificadores de modo kernel para os contextos adicionais para os quais transmitir o buffer de comando atual. A constante D3DDDI_MAX_BROADCAST_CONTEXT, que é definida como 64, define o número máximo de contextos para os quais o ICD opengl pode transmitir o buffer de comando atual.
O contexto original especificado pelo membro do
[out] QueuedBufferCount
O número de buffers de DMA que são enfileirados no contexto que o hContext membro especifica após o envio.
[out] NewCommandBuffer
Um ponteiro para um buffer de comando que o OpenGL ICD recebe para usar em sua próxima chamada para a função D3DKMTRender. O driver deve sempre atualizar seu ponteiro para o buffer de comando após qualquer chamada para D3DKMTRender, independentemente de a chamada ser bem-sucedida.
Com suporte no Windows 7 e versões posteriores:
[in] Um ponteiro para o buffer de comando a ser renderizado se o sinalizador
pPrivateDriverData
Esse membro é reservado e deve ser definido como zero.
Este membro está disponível a partir do Windows 7.
PrivateDriverDataSize
Esse membro é reservado e deve ser definido como zero.
Este membro está disponível a partir do Windows 7.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows Vista |
cabeçalho | d3dkmthk.h (inclua D3dkmthk.h) |