DXGKDDI_START_DEVICE função de retorno de chamada (dispmprt.h)
A função DxgkDdiStartDevice prepara um adaptador de exibição para receber solicitações de E/S.
Sintaxe
DXGKDDI_START_DEVICE DxgkddiStartDevice;
NTSTATUS DxgkddiStartDevice(
[in] IN_CONST_PVOID MiniportDeviceContext,
[in] IN_PDXGK_START_INFO DxgkStartInfo,
[in] IN_PDXGKRNL_INTERFACE DxgkInterface,
[out] OUT_PULONG NumberOfVideoPresentSources,
[out] OUT_PULONG NumberOfChildren
)
{...}
Parâmetros
[in] MiniportDeviceContext
Um identificador para um bloco de contexto associado a um adaptador de exibição. A função DxgkDdiAddDevice do driver de miniporto de exibição anteriormente forneceu esse identificador para o subsistema de kernel de elementos gráficos DirectX.
[in] DxgkStartInfo
Um ponteiro para uma estrutura DXGK_START_INFO que contém informações de que o driver de miniporto de exibição precisa para inicialização.
[in] DxgkInterface
Um ponteiro para uma estrutura de DXGKRNL_INTERFACE que contém ponteiros para funções, implementados pelo subsistema kernel de elementos gráficos DirectX, que o driver de miniporto de exibição pode chamar.
[out] NumberOfVideoPresentSources
Um ponteiro para uma variável ULONG que recebe o número de fontes presentes de vídeo com suporte pelo adaptador de exibição. Para obter mais informações sobre as fontes presentes no vídeo, consulte Vários Monitores e Redes Presentes em Vídeo.
[out] NumberOfChildren
Um ponteiro para uma variável ULONG que recebe o número total de dispositivos que são filhos do adaptador de exibição representado por MiniportDeviceContext. Essa contagem deve incluir dispositivos filho potenciais, bem como dispositivos filho que estão presentes no momento. Por exemplo, se o encaixe de um computador portátil disponibilizar saídas de vídeo adicionais, essas saídas de vídeo deverão ser contadas independentemente de o computador portátil estar encaixado no momento. Para obter mais informações sobre dispositivos filho, consulte dispositivos filho do adaptador de exibição.
Valor de retorno
DxgkDdiStartDevice retornará STATUS_SUCCESS se tiver êxito; caso contrário, ele retorna um dos códigos de erro definidos em Ntstatus.h.
Observações
A função DxgkDdiStartDevice deve executar as seguintes ações:
- Salve os ponteiros de função fornecidos pela estrutura de DXGKRNL_INTERFACE passada para o parâmetro DxgkInterface. Salve também o membro DeviceHandle da estrutura DXGKRNL_INTERFACE; você precisará desse identificador para chamar de volta para o subsistema de kernel de elementos gráficos DirectX.
- Aloque uma estrutura DXGK_DEVICE_INFO e chame DxgkCbGetDeviceInformation para preencher os membros dessa estrutura, que incluem o caminho do registro, o PDO e uma lista de recursos traduzidos para o adaptador de exibição representado por MiniportDeviceContext. Salve os membros selecionados (que o driver de miniporto de exibição precisará mais tarde) da estrutura de DXGK_DEVICE_INFO no bloco de contexto representado por MiniportDeviceContext.
- Mapeie recursos de memória para o espaço do sistema chamando a função DxgkCbMapMemory.
- Inicialize o bloco de contexto representado por MiniportDeviceContext com qualquer estado necessário para preparar o hardware para receber solicitações de E/S.
- Defina NumberOfVideoPresentSources com o número de fontes presentes de vídeo com suporte pelo adaptador de exibição representado por MiniportDeviceContext.
- Defina NumberOfChildren para o número de dispositivos que são (ou podem se tornar) filhos do adaptador de exibição representado por MiniportDeviceContext.
- Habilite interrupções para o adaptador de exibição representado por MiniportDeviceContext.
A função DxgkDdiStartDevice deve ser colocada em página.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Vista. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | dispmprt.h |
IRQL | PASSIVE_LEVEL |