The RtlFindFirstRunClear routine searches for the initial contiguous range of clear bits within a given bitmap.
NTSYSAPI ULONG RtlFindFirstRunClear( PRTL_BITMAP BitMapHeader, PULONG StartingIndex );
Pointer to a variable in which the starting index of the initial clear run in the bitmap is returned. This is a zero-based value indicating the bit position of the first clear bit in the returned range. Its value is meaningless if RtlFindFirstRunClear cannot find a run of clear bits.
RtlFindFirstRunClear returns either the number of bits in the run beginning at StartingIndex, or zero if it cannot find a run of clear bits within the bitmap.
A returned run can have a single clear bit. That is, once a clear bit is found, RtlFindFirstRunClear continues searching until it finds the next set bit, and then returns the number of clear bits in the run it found.
Callers of RtlFindFirstRunClear must be running at IRQL <= APC_LEVEL if the memory that contains the bitmap variable is pageable or the memory at BitMapHeader is pageable. Otherwise, RtlFindFirstRunClear can be called at any IRQL.
|Minimum supported client||Available starting with Windows 2000.|
|Header||wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)|
|IRQL||<= APC_LEVEL (See Remarks section)|