PVIDEO_HW_GET_CHILD_DESCRIPTOR função de retorno de chamada (video.h)
HwVidGetVideoChildDescriptor retorna um descritor, um tipo e um número de identificação para um dispositivo filho específico do adaptador de exibição.
Sintaxe
PVIDEO_HW_GET_CHILD_DESCRIPTOR PvideoHwGetChildDescriptor;
VP_STATUS PvideoHwGetChildDescriptor(
[in] IN PVOID HwDeviceExtension,
[in] IN PVIDEO_CHILD_ENUM_INFO ChildEnumInfo,
[out] OUT PVIDEO_CHILD_TYPE VideoChildType,
[out] OUT PUCHAR pChildDescriptor,
[out] OUT PULONG UId,
[out] OUT PULONG pUnused
)
{...}
Parâmetros
[in] HwDeviceExtension
Ponteiro para a área de armazenamento por adaptador do driver de miniport. Para obter mais informações, consulte Extensões de dispositivo.
[in] ChildEnumInfo
É uma estrutura VIDEO_CHILD_ENUM_INFO que descreve o dispositivo que está sendo enumerado.
[out] VideoChildType
Ponteiro para um local no qual o driver de miniporto retorna o tipo de filho que está sendo enumerado. Esse membro pode ser um dos seguintes da enumeração VIDEO_CHILD_TYPE:
Valor | Significado |
---|---|
Monitorar | O dispositivo filho é um monitor. Se o driver de miniporto detectar que o monitor tem uma estrutura EDID compatível com DDC2 associada a ela, o driver de miniporto deverá extrair as informações EDID do monitor e devolvê-la no buffer para o qual pChildDescriptor aponta. O driver de miniporte pode obter mais facilmente o EDID do monitor chamando VideoPortDDCMonitorHelper. Se o monitor detectado não estiver em conformidade com DDC2, o driver de miniporto não deverá retornar nada no pChildDescriptor. |
NonPrimaryChip | É reservado para uso do sistema. |
VideoChip | O dispositivo filho é o chip gráfico. O driver de miniporte deve retornar esse tipo quando ChildEnumInfo.ChildIndex for DISPLAY_ADAPTER_HW_ID. O driver de miniporte não deve retornar nada em pChildDescriptor. |
Outros | O dispositivo filho tem um driver de dispositivo separado associado a ele. O driver de miniporte deve retornar o identificador de hardware PnP do dispositivo como uma cadeia de caracteres Unicode no buffer para o qual pChildDescriptor aponta. Essa cadeia de caracteres deve corresponder à ID do dispositivo especificada no arquivo INF do driver. Ele será usado pelo sistema operacional como a ID de hardware para este dispositivo. |
[out] pChildDescriptor
Ponteiro para um buffer no qual o driver de miniporto pode retornar dados que identificam o dispositivo. As informações retornadas dependem do tipo filho especificado em VideoChildType. O tamanho desse buffer é especificado pelo driver de porta de vídeo no membro ChildDescriptorSize de VIDEO_CHILD_ENUM_INFO.
[out] UId
Ponteiro para o local em que o driver de miniporto retorna uma ID exclusiva do dispositivo de 32 bits para este dispositivo. O driver de miniporto deve definir UId como DISPLAY_ADAPTER_HW_ID quando o dispositivo for o adaptador de exibição real.
[out] pUnused
Não é utilizado e deve ser definido como zero.
Retornar valor
HwVidGetVideoChildDescriptor retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
VIDEO_ENUM_INVALID_DEVICE | Ligue novamente. O driver de miniporte não pôde enumerar o dispositivo filho identificado em ChildEnumInfo, mas há mais dispositivos a serem enumerados. |
VIDEO_ENUM_MORE_DEVICES | Um novo dispositivo filho é enumerado. A porta de vídeo chamará HwVidGetVideoChildDescriptor novamente nesse caso. |
VIDEO_ENUM_NO_MORE_DEVICES | O driver de miniporte não pôde enumerar o dispositivo filho identificado em ChildEnumInfo. Parar enumeração. Não há mais dispositivos a serem enumerados. |
Comentários
Por padrão, HwVidGetVideoChildDescriptor não é chamado até que o dispositivo seja iniciado por HwVidFindAdapter. Para permitir a enumeração dos filhos de um dispositivo antes de o dispositivo ser iniciado, defina o membro AllowEarlyEnumeration de VIDEO_HW_INITIALIZATION_DATA. Quando AllowEarlyEnumeration estiver definido, HwVidGetVideoChildDescriptor poderá ser chamado a qualquer momento.
HwVidGetVideoChildDescriptor deve fazer o seguinte:
- Determine o tipo do dispositivo filho com base nos dados fornecidos em ChildEnumInfo e retorne esse tipo em VideoChildType.
- Preencha o buffer para o qual pChildDescriptor aponta com os dados apropriados, dependendo do valor de VideoChildType.
- Escreva um valor de 32 bits em UId que identifica exclusivamente o dispositivo filho que está sendo enumerado. O driver da porta de vídeo passará esse identificador de volta para o driver de miniporto para operações como gerenciamento de energia.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | video.h (inclua Video.h) |