StreamClassCallAtNewPriority function (strmini.h)
The StreamClassCallAtNewPriority routine schedules a routine to be called at a different priority.
Syntax
VOID STREAMAPI StreamClassCallAtNewPriority(
[in, optional] PHW_STREAM_OBJECT StreamObject,
[in] PVOID HwDeviceExtension,
[in] STREAM_PRIORITY Priority,
[in] PHW_PRIORITY_ROUTINE PriorityRoutine,
[in] PVOID Context
);
Parameters
[in, optional] StreamObject
Pointer to an HW_STREAM_OBJECT structure specifying the stream is associated with the routine, or NULL if the routine is associated with the device as a whole. There can be only one routine per stream, and only one routine for the device. This parameter is optional.
[in] HwDeviceExtension
Pointer to the minidriver's device extension. The minidriver specifies the size of this buffer in the HW_INITIALIZATION_DATA structure it passes when it registers itself via StreamClassRegisterMinidriver. The class driver then passes pointers to the buffer in the HwDeviceExtension member of the HW_STREAM_REQUEST_BLOCK, HW_STREAM_OBJECT, HW_TIME_CONTEXT, and PORT_CONFIGURATION_INFORMATION structures it passes to the minidriver.
[in] Priority
Specifies one of the values listed in the following table.
Priority | Usage |
---|---|
High | The stream class driver calls the routine at the same priority as the minidriver's StrMiniXxx callbacks. Do not use this setting unless the routine must be synchronized with the minidriver's interrupt service routine. |
Dispatch | The stream class driver calls the routine at DISPATCH_LEVEL. Use this priority if the routine takes less than 1 millisecond to complete. |
Low | The stream class driver calls the routine at PASSIVE_LEVEL. Use this priority if the routine takes less than 1 millisecond to complete. |
LowToHigh | Used to allow a thread called at low priority to return to high priority so that other stream class driver services can be called. |
[in] PriorityRoutine
Pointer to a minidriver-supplied StrMiniPriorityRoutine to be called at the specified priority level.
[in] Context
Specifies the parameter to be passed to the PriorityRoutine.
Return value
None
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | strmini.h (include Strmini.h) |
Library | Stream.lib |
IRQL | (See Parameters section) |