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 de Extensões de Dispositivo.
[in] ChildEnumInfo
É uma estrutura VIDEO_CHILD_ENUM_INFO que descreve o dispositivo 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:
Value | significado |
---|---|
Monitor | O dispositivo filho é um monitor. Se o driver de miniporto detectar que o monitor tem uma estrutura de EDID compatível com DDC2 associada a ele, o driver de miniporto deverá extrair as informações edid do monitor e devolvê-la no buffer para o qual o pChildDescriptor aponta. O driver de miniporto 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 miniporto deve retornar esse tipo quando ChildEnumInfo.ChildIndex estiver DISPLAY_ADAPTER_HW_ID. O driver de miniporto não deve retornar nada no pChildDescriptor. |
Outros | O dispositivo filho tem um driver de dispositivo separado associado a ele. O driver de miniporto deve retornar o identificador de hardware PnP do dispositivo como uma cadeia de caracteres Unicode no buffer para o qual o 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 ChildDescriptorSize membro do VIDEO_CHILD_ENUM_INFO.
[out] UId
Ponteiro para o local em que o driver de miniporto retorna uma ID exclusiva de dispositivo de 32 bits para este dispositivo. O driver de miniporto deve definir UId para ser 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.
Valor de retorno
HwVidGetVideoChildDescriptor retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
VIDEO_ENUM_INVALID_DEVICE | Ligue novamente. O driver de miniporto não pôde enumerar o dispositivo filho identificado no 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 | Não foi possível enumerar o dispositivo filho identificado no ChildEnumInfo. Pare a enumeração. Não há mais dispositivos a serem enumerados. |
Observações
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 AllowEarlyEnumeration membro do VIDEO_HW_INITIALIZATION_DATA. Quando AllowEarlyEnumeration é definido, HwVidGetVideoChildDescriptor pode 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 ao qual pChildDescriptor pontos com os dados apropriados, dependendo do valor de VideoChildType.
- Escreva um valor de 32 bits em UId que identifica exclusivamente o dispositivo filho sendo enumerado. O driver de porta de vídeo passará esse identificador de volta para o driver de miniporto para operações como gerenciamento de energia.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | video.h (inclua Video.h) |