RtlFindClearBits routine
The RtlFindClearBits routine searches for a range of clear bits of a requested size within a bitmap.
Syntax
ULONG RtlFindClearBits( _In_ PRTL_BITMAP BitMapHeader, _In_ ULONG NumberToFind, _In_ ULONG HintIndex );
Parameters
- BitMapHeader [in]
-
A pointer to the RTL_BITMAP structure that describes the bitmap. This structure must have been initialized by the RtlInitializeBitMap routine.
- NumberToFind [in]
-
Specifies how many contiguous clear bits will satisfy this request.
- HintIndex [in]
-
Specifies a zero-based bit position from which to start looking for a clear bit range of the given size.
Return value
RtlFindClearBits either returns the zero-based starting bit index for a clear bit range of at least the requested size, or it returns 0xFFFFFFFF if it cannot find such a range within the given bitmap.
Remarks
For a successful call, the returned bit position is not necessarily equivalent to the given HintIndex. If necessary, RtlFindClearBits searches the whole bitmap to locate a clear bit range of the requested size. However, it starts searching for the requested range from HintIndex, so callers can find such a range more quickly when they can supply appropriate hints about where to start looking.
Callers of RtlFindClearBits 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, RtlFindClearBits can be called at any IRQL.
Requirements
|
Version | Available starting with Windows 2000. |
|---|---|
|
Header |
|
|
Library |
|
|
IRQL | <= APC_LEVEL (See Remarks section) |
See also
- RtlAreBitsClear
- RTL_BITMAP
- RtlFindClearBitsAndSet
- RtlFindFirstRunClear
- RtlFindLongestRunClear
- RtlInitializeBitMap
- RtlNumberOfClearBits
- RtlFindSetBits
Send comments about this topic to Microsoft
Build date: 5/22/2013