IPortEvents interface (portcls.h)
The IPortEvents
interface is used by miniport drivers to notify clients of hardware events. In Windows 98/Me and in Windows 2000 and later, all port drivers in portcls.sys implement this interface and expose it to miniport drivers. To determine whether a port driver supports the IPortEvents
interface, the miniport driver calls the IPortXxx object's QueryInterface method with REFIID IID_IPortEvents. IPortEvents
inherits from the IUnknown interface.
Drivers typically use the IPortEvents
interface to notify the system of hardware-generated volume or mute changes, although IPortEvents
can be used for any type of event notification. IPortEvents
interface is an optional lower-edge port driver interface. It can be used, for example, to notify mixer applications of control or mixer-line changes. For information about the mixer API, see the Microsoft Windows SDK documentation.
A miniport driver exposes an event in the same way that it exposes properties: through an automation table (see PCAUTOMATION_TABLE). The following objects, all of which are exposed by the miniport driver, can specify an automation table that contains properties and/or events:
- The filter that the miniport driver implements
- Each pin that the filter exposes
- Each node that the filter exposes
- An event set
- An event within the set
- Flags indicating support options
- A function pointer to the handler for the event
In addition to exposing the event in the automation table, a miniport driver that needs to expose events should query the port driver for its IPortEvents
interface.
This section also describes the following routine for handling event requests:
Inheritance
The IPortEvents interface inherits from the IUnknown interface.
Methods
The IPortEvents interface has these methods.
IPortEvents::AddEventToEventList The AddEventToEventList method adds an event to the port driver's event list. |
IPortEvents::GenerateEventList The GenerateEventList method notifies clients through the port driver's list of event entries that a particular event has occurred. |
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | portcls.h |