IDeviceTopology interface (devicetopology.h)

The IDeviceTopology interface provides access to the topology of an audio device. The topology of an audio adapter device consists of the data paths that lead to and from audio endpoint devices and the control points that lie along the paths. An audio endpoint device also has a topology, but it is trivial, as explained in Device Topologies. A client obtains a reference to the IDeviceTopology interface for an audio endpoint device by following these steps:

  1. By using one of the techniques described in IMMDevice Interface, obtain a reference to the IMMDevice interface for an audio endpoint device.
  2. Call the IMMDevice::Activate method with parameter refiid set to REFIID IID_IDeviceTopology.
After obtaining the IDeviceTopology interface for an audio endpoint device, an application can explore the topologies of the audio adapter devices to which the endpoint device is connected.

For code examples that use the IDeviceTopology interface, see the implementations of the GetHardwareDeviceTopology and SelectCaptureDevice functions in Device Topologies.

Inheritance

The IDeviceTopology interface inherits from the IUnknown interface. IDeviceTopology also has these types of members:

Methods

The IDeviceTopology interface has these methods.

 
IDeviceTopology::GetConnector

The GetConnector method gets the connector that is specified by a connector number.
IDeviceTopology::GetConnectorCount

The GetConnectorCount method gets the number of connectors in the device-topology object.
IDeviceTopology::GetDeviceId

The GetDeviceId method gets the device identifier of the device that is represented by the device-topology object.
IDeviceTopology::GetPartById

The GetPartById method gets a part that is identified by its local ID.
IDeviceTopology::GetSignalPath

The GetSignalPath method gets a list of parts in the signal path that links two parts, if the path exists.
IDeviceTopology::GetSubunit

The GetSubunit method gets the subunit that is specified by a subunit number.
IDeviceTopology::GetSubunitCount

The GetSubunitCount method gets the number of subunits in the device topology.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header devicetopology.h

See also

Core Audio Interfaces

DeviceTopology API

IMMDevice::Activate