VOID STREAMAPI
StrMiniReceiveStreamControlPacket(
IN OUT PHW_STREAM_REQUEST_BLOCK pSRB
);
None
Declared in strmini.h. Include strmini.h.
The stream class driver calls the minidriver's StrMiniReceiveStreamControlPacket routine to handle I/O requests for a specific stream (except read and write requests, which the class driver passes to the StrMiniReceiveStreamDataPacket routine).
The minidriver registers its StrMiniReceiveStreamControlPacket routine as follows: When the class driver opens the stream, it passes an SRB_OPEN_STREAM request block to the minidriver's StrMiniReceiveDevicePacket routine. The StreamObject member of the request packet points to an HW_STREAM_OBJECT. The minidriver sets the ReceiveControlPacket member of the structure pointed to by StreamObject to the minidriver's StrMiniReceiveControlPacket routine.
Upon completion of its handling of the request, the minidriver passes the structure back to the class driver by calling StreamClassStreamNotification(StreamRequestComplete, pSRB->StreamObject, pSRB).
See information on relevant SRB codes in Stream Class SRB Reference.
When the minidriver finishes its processing of the request, it enters the return status of the operation in pSRB->Status. The minidriver should enter STATUS_SUCCESS for normal successful processing. If the minidriver does not support that Command value, it should set pSRB->Status to STATUS_NOT_IMPLEMENTED. If there is a device hardware error that prevents the minidriver from completing the request, it should set pSRB->Status to STATUS_IO_DEVICE_ERROR. Other error codes the routine uses in specific circumstances are listed above with the specific Command code.