IServiceSink interface (portcls.h)
The IServiceSink
interface encapsulates handling of a service request. The source of the service request is typically the miniport driver's interrupt service routine. PortCls supports the IServiceSink
interface. An IServiceSink
object is typically a member of a service group that is managed by an IServiceGroup object. IServiceSink
inherits from the IUnknown interface.
IServiceSink
is the base interface for IServiceGroup. This allows an IServiceGroup object to add itself (as an object with an IServiceSink
interface) to another IServiceGroup object's service group.
Although the PortCls system driver provides a PcNewServiceGroup function for creating a service group object, no similar function exists for creating a service sink object. Instead, a driver object that requires a service sink simply implements an IServiceSink
interface in the driver object. For convenience, header file portcls.h includes an IMP_IServiceSink constant for adding the IServiceSink
implementation to the object's class definition. The cost of adding an IServiceSink
interface to an object is small because the interface supports only a single method. A port driver typically adds an IServiceSink
interface to its port object and stream objects so that they can receive notification of interrupts from an audio device.
For more information, see Service Sink and Service Group Objects.
Inheritance
The IServiceSink interface inherits from the IUnknown interface. IServiceSink also has these types of members:
Methods
The IServiceSink interface has these methods.
IServiceSink::RequestService The RequestService method is called to forward a service request to an IServiceSink object. |
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | portcls.h |