Método IPart::GetSubType (devicetopology.h)
O método GetSubType obtém o subtipo de parte desta parte.
Sintaxe
HRESULT GetSubType(
[out] GUID *pSubType
);
Parâmetros
[out] pSubType
Ponteiro para uma variável GUID na qual o método grava o GUID do subtipo para essa parte.
Valor retornado
Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O ponteiro pSubType é NULL. |
Comentários
Esse método normalmente recupera um dos valores de GUID KSNODETYPE_Xxx do arquivo de cabeçalho Ksmedia.h, embora alguns drivers personalizados possam fornecer outros valores guid. Para obter mais informações sobre guids KSNODETYPE_Xxx , consulte a documentação do DDK do Windows.
Conforme explicado na Interface IPart, uma parte pode ser um conector ou uma subunidade.
Para uma parte que é um conector, esse método recupera o GUID de categoria de pino que o driver atribuiu ao conector. Veja a seguir exemplos de GUIDs de categoria de pino:
- KSNODETYPE_ANALOG_CONNECTOR, se o conector fizer parte do caminho de dados de ou para um dispositivo analógico, como um microfone ou alto-falantes.
- KSNODETYPE_SPDIF_INTERFACE, se o conector fizer parte do caminho de dados de ou para uma porta S/PDIF.
Para uma parte que é uma subunidade, esse método recupera um GUID de subtipo que indica a função de processamento de fluxo que a subunidade executa. Por exemplo, para uma subunidade de controle de volume, o método recupera o valor guid KSNODETYPE_VOLUME.
A tabela a seguir lista alguns dos GUIDs de subtipo que podem ser recuperados pelo método GetSubType para uma subunidade.
GUID de subtipo | Interface de controle | Obrigatório ou opcional |
---|---|---|
KSNODETYPE_3D_EFFECTS | IAudioChannelConfig | Opcional |
KSNODETYPE_AGC | IAudioAutoGainControl | Obrigatório |
KSNODETYPE_DAC | IAudioChannelConfig | Opcional |
KSNODETYPE_DEMUX | IAudioOutputSelector | Obrigatório |
KSNODETYPE_DEV_SPECIFIC | IDeviceSpecificProperty | Obrigatório |
KSNODETYPE_LOUDNESS | IAudioLoudness | Obrigatório |
KSNODETYPE_MUTE | IAudioMute | Obrigatório |
KSNODETYPE_MUX | IAudioInputSelector | Obrigatório |
KSNODETYPE_PEAKMETER | IAudioPeakMeter | Obrigatório |
KSNODETYPE_PROLOGIC_DECODER | IAudioChannelConfig | Opcional |
KSNODETYPE_TONE | IAudioBass | OptionalOptional Opcional |
KSNODETYPE_VOLUME | IAudioChannelConfig | OptionalRequired |
Na tabela anterior, a coluna intermediária lista as interfaces de controle compatíveis com subunidades do subtipo especificado na coluna esquerda. A coluna à direita indica se o suporte da subunidade para uma interface de controle é obrigatório ou opcional. Se o suporte for necessário, um aplicativo poderá contar com uma subunidade do subtipo especificado para dar suporte à interface de controle. Se o suporte for opcional, uma subunidade do subtipo especificado poderá, mas não necessariamente, dar suporte à interface de controle.
As interfaces de controle na tabela anterior fornecem acesso conveniente às propriedades de subunidades. No entanto, algumas subunidades têm propriedades para as quais não existem interfaces de controle correspondentes. Os aplicativos podem acessar essas propriedades por meio da interface IKsControl . Para obter mais informações, consulte Usando a interface IKsControl para acessar propriedades de áudio.
Requisitos
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | devicetopology.h |