DXGKDDI_OPENALLOCATIONINFO função de retorno de chamada (d3dkmddi.h)
A função DxgkDdiOpenAllocation associa alocações não específicas do dispositivo que a função DxgkDdiCreateAllocation criou para alocações específicas do dispositivo de contexto gráfico especificado.
Sintaxe
DXGKDDI_OPENALLOCATIONINFO DxgkddiOpenallocationinfo;
NTSTATUS DxgkddiOpenallocationinfo(
[in] IN_CONST_HANDLE hDevice,
[in] IN_CONST_PDXGKARG_OPENALLOCATION pOpenAllocation
)
{...}
Parâmetros
[in] hDevice
Um identificador para o dispositivo de contexto gráfico do qual as alocações estão associadas. A função DxgkDdiCreateDevice do driver de miniporta de exibição forneceu anteriormente esse identificador para o subsistema kernel de elementos gráficos do Microsoft DirectX no membro hDevice da estrutura DXGKARG_CREATEDEVICE .
[in] pOpenAllocation
Um ponteiro para uma estrutura DXGKARG_OPENALLOCATION que contém informações sobre alocações de associação.
Retornar valor
DxgkDdiOpenAllocation retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
STATUS_SUCCESS | DxgkDdiOpenAllocation vinculou alocações com êxito ao dispositivo de contexto gráfico especificado pelo parâmetro hDevice. |
STATUS_INVALID_PARAMETER | Os parâmetros passados para DxgkDdiOpenAllocation continham erros que impediram a conclusão. |
STATUS_NO_MEMORY | DxgkDdiOpenAllocation não pôde alocar memória necessária para que ela fosse concluída. |
STATUS_GRAPHICS_DRIVER_MISMATCH | O driver de miniporto de exibição não é compatível com o driver de exibição do modo de usuário que iniciou a chamada para DxgkDdiOpenAllocation (ou seja, forneceu dados privados para o driver de miniporte de exibição). |
Comentários
O subsistema de kernel de elementos gráficos DirectX chama a função DxgkDdiOpenAllocation do driver de miniporta de exibição para associar alocações específicas de nondevice que a função DxgkDdiCreateAllocation criou para alocações específicas do dispositivo de contexto gráfico especificado pelo parâmetro hDevice . O driver de miniporto de exibição associa alocações a um dispositivo para que o driver possa acompanhar os dados de alocação específicos de um dispositivo.
O driver de miniporto de exibição pode associar uma alocação a qualquer dispositivo que qualquer processo (no mesmo adaptador gráfico) criou e não apenas a um dispositivo no processo de criação.
Quando DxgkDdiOpenAllocation retorna STATUS_SUCCESS, o driver define o membro hDeviceSpecificAllocation da estrutura DXGK_OPENALLOCATIONINFO para cada alocação como um valor não NULL. A estrutura DXGK_OPENALLOCATIONINFO para cada alocação é um elemento da matriz que o membro pOpenAllocation da estrutura DXGKARG_OPENALLOCATION especifica.
O driver pode modificar os dados de driver privado de alocação que são passados no membro pPrivateDriverData da estrutura DXGK_OPENALLOCATIONINFO somente quando a alocação é criada (que é indicada quando o sinalizador Criar campo de bit no membro Flags da estrutura DXGKARG_OPENALLOCATION é definido). O driver deve determinar que ele só pode ler os dados do driver privado de alocação quando a alocação é aberta (ou seja, quando o sinalizador Criar campo de bits não está definido).
DxgkDdiOpenAllocation deve se tornar paginável.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |