IServiceSink

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 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:

IServiceSink::RequestService

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft