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
E_POINTER
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 obter mais informações, consulte a discussão sobre a propriedade pin-category, KSPROPERTY_PIN_CATEGORY, na documentação do DDK do Windows.

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

IAudioMidrange

IAudioTreble

OptionalOptional

Opcional

KSNODETYPE_VOLUME IAudioChannelConfig

IAudioVolumeLevel

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

Confira também

IPart Interface