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 in Windows 98/Me and in Windows 2000 and later. 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.
In addition to the methods that
IServiceSink inherits from the IUnknown interface,
IServiceSink supports the following method: