IControlChangeNotify interface

The IControlChangeNotify interface provides notifications when the status of a part (connector or subunit) changes. Unlike the other interfaces in this section, which are implemented by the DeviceTopology API, the IControlChangeNotify interface must be implemented by a client. To receive notifications, the client passes a pointer to its IControlChangeNotify interface instance as a parameter to the IPart::RegisterControlChangeCallback method.

After registering its IControlChangeNotify interface, the client receives event notifications in the form of callbacks through the OnNotify method in the interface.

In implementing the IControlChangeNotify interface, the client should observe these rules to avoid deadlocks and undefined behavior:

  • The methods in the interface must be nonblocking. The client should never wait on a synchronization object during an event callback.
  • The client should never call the IPart::UnregisterControlChangeCallback method during an event callback.
  • The client should never release the final reference on an MMDevice API object during an event callback.

Members

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

Methods

The IControlChangeNotify interface has these methods.

MethodDescription
OnNotify

Notifies the client when the status of a part (connector or subunit) changes.

 

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

Devicetopology.h

See also

Core Audio Interfaces
DeviceTopology API
IPart::RegisterControlChangeCallback
IPart::UnregisterControlChangeCallback

 

 

Show: