Интерфейс IPart (devicetopology.h)

Интерфейс IPart представляет часть топологии устройства (соединитель или подсоединие). Клиент получает ссылку на интерфейс IPart путем вызова метода IDeviceTopology::GetPartById или IPartsList::GetPart либо путем вызова метода QueryInterface интерфейса IConnector или ISubunit в объекте части и задания для параметра iid метода значения REFIID IID_IPart.

Объект с интерфейсом IPart может инкапсулировать одну из следующих частей топологии устройства:

  • Соединителя. Это часть, которая подключается к другому устройству для формирования пути данных для передачи аудиопотока между устройствами.
  • Подсоединие. Это часть, которая обрабатывает аудиопоток (например, управление громкости).
Интерфейс IPart соединителя или объекта subunit представляет универсальные функции, общие для всех частей, а интерфейс IConnector или ISubunit объекта представляет функции, относящиеся к соединителю или подъединику. Кроме того, часть может поддерживать один или несколько интерфейсов управления для управления или мониторинга функции части. Например, клиент управляет подсоединием управления томом через интерфейс IAudioVolumeLevel .

Интерфейс IPart предоставляет методы для получения имени, локального идентификатора, глобального идентификатора и типа части соединителя или подсоединения. Кроме того, IPart может активировать интерфейс управления для соединителя или подсоединия.

Примеры кода, использующие интерфейс IPart , см. в реализациях функций GetHardwareDeviceTopology и SelectCaptureDevice в топологиях устройств.

Наследование

Интерфейс IPart наследуется от интерфейса IUnknown . IPart также имеет следующие типы членов:

Методы

Интерфейс IPart содержит следующие методы.

 
IPart::Activate

Метод Activate активирует интерфейс для конкретной функции в соединителе или подсоедините.
IPart::EnumPartsIncoming

Метод EnumPartsIncoming получает список всех входящих частей, то есть частей, которые находятся в путях к данным, вышестоящий из этой части.
IPart::EnumPartsOutgoing

Метод EnumPartsOutgoing извлекает список всех исходящих частей, т. е. частей, которые находятся в путях к данным, которые находятся ниже по этой части.
IPart::GetControlInterface

Метод GetControlInterface получает ссылку на указанный интерфейс элемента управления, если эта часть поддерживает его.
IPart::GetControlInterfaceCount

Метод GetControlInterfaceCount получает количество интерфейсов управления, поддерживаемых этой частью.
IPart::GetGlobalId

Метод GetGlobalId получает глобальный идентификатор этой части.
IPart::GetLocalId

Метод GetLocalId получает локальный идентификатор этой части.
IPart::GetName

Метод GetName получает понятное имя этой части.
IPart::GetPartType

Метод GetPartType получает тип части этой части.
IPart::GetSubType

Метод GetSubType получает подтип части этой части.
IPart::GetTopologyObject

Метод GetTopologyObject получает ссылку на интерфейс IDeviceTopology объекта device-topology, содержащего эту часть.
IPart::RegisterControlChangeCallback

Метод RegisterControlChangeCallback регистрирует интерфейс IControlChangeNotify, который клиент реализует для получения уведомлений об изменениях состояния в этой части.
IPart::UnregisterControlChangeCallback

Метод UnregisterControlChangeCallback удаляет регистрацию интерфейса IControlChangeNotify, который клиент ранее зарегистрировал путем вызова метода IPart::RegisterControlChangeCallback.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header devicetopology.h

См. также раздел

Основные звуковые интерфейсы

DeviceTopology API

Интерфейс IAudioVolumeLevel

Интерфейс IConnector

IDeviceTopology::GetPartById

IPartsList::GetPart

Интерфейс ISubunit