Метод IPart::GetSubType (devicetopology.h)
Метод GetSubType получает подтип части этой части.
Синтаксис
HRESULT GetSubType(
[out] GUID *pSubType
);
Параметры
[out] pSubType
Указатель на переменную GUID, в которую метод записывает GUID подтипа для этой части.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, но не ограничиваются ими, значения, показанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Указатель pSubType имеет значение NULL. |
Комментарии
Этот метод обычно извлекает одно из значений GUID KSNODETYPE_Xxx из файла заголовка Ksmedia.h, хотя некоторые пользовательские драйверы могут предоставлять другие значения GUID. Дополнительные сведения о идентификаторах GUID KSNODETYPE_Xxx см. в документации по Windows DDK.
Как описано в интерфейсе IPart, часть может быть соединителем или подсоединием.
Для части, которая является соединителем, этот метод извлекает GUID категории контактов, назначенный драйвером соединителю. Ниже приведены примеры идентификаторов GUID категории контактов.
- KSNODETYPE_ANALOG_CONNECTOR, если соединитель является частью пути данных к аналоговым устройствам, таким как микрофон или динамики, или от нее.
- KSNODETYPE_SPDIF_INTERFACE, если соединитель является частью пути данных к порту S/PDIF или из нее.
Для части, которая является подъединитом, этот метод извлекает GUID подтипа, который указывает функцию потоковой обработки, которую выполняет подсоединие. Например, для подъединицы управления томом метод получает значение GUID KSNODETYPE_VOLUME.
В следующей таблице перечислены некоторые идентификаторы GUID подтипов, которые могут быть получены методом GetSubType для подсоединения.
GUID подтипа | Интерфейс управления | Обязательный или необязательный |
---|---|---|
KSNODETYPE_3D_EFFECTS | IAudioChannelConfig | Необязательно |
KSNODETYPE_AGC | IAudioAutoGainControl | Обязательно |
KSNODETYPE_DAC | IAudioChannelConfig | Необязательно |
KSNODETYPE_DEMUX | IAudioOutputSelector | Обязательно |
KSNODETYPE_DEV_SPECIFIC | IDeviceSpecificProperty | Обязательно |
KSNODETYPE_LOUDNESS | IAudioLoudness | Обязательно |
KSNODETYPE_MUTE | IAudioMute | Обязательно |
KSNODETYPE_MUX | IAudioInputSelector | Обязательно |
KSNODETYPE_PEAKMETER | IAudioPeakMeter | Обязательно |
KSNODETYPE_PROLOGIC_DECODER | IAudioChannelConfig | Необязательно |
KSNODETYPE_TONE | IAudioBass | OptionalOptional Необязательно |
KSNODETYPE_VOLUME | IAudioChannelConfig | OptionalRequired |
В приведенной выше таблице в среднем столбце перечислены интерфейсы элементов управления, поддерживаемые подсоединениями подтипа, указанного в левом столбце. В правом столбце указано, является ли поддержка подсоединием интерфейса элемента управления обязательной или необязательной. Если требуется поддержка, приложение может использовать подъединит указанного подтипа для поддержки интерфейса управления. Если поддержка является необязательной, подъединит указанного подтипа может, но не обязательно, поддерживать интерфейс элемента управления.
Интерфейсы элементов управления в предыдущей таблице обеспечивают удобный доступ к свойствам вложенных элементов. Однако некоторые подъединицы имеют свойства, для которых не существует соответствующих интерфейсов управления. Приложения могут получить доступ к этим свойствам через интерфейс IKsControl . Дополнительные сведения см. в статье Использование интерфейса IKsControl для доступа к свойствам звука.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | devicetopology.h |