Функция RtlFindClearRuns (wdm.h)

Подпрограмма RtlFindClearRuns находит указанное количество выполнений четких битов в пределах заданного растрового изображения.

Синтаксис

NTSYSAPI ULONG RtlFindClearRuns(
  [in]  PRTL_BITMAP     BitMapHeader,
  [out] PRTL_BITMAP_RUN RunArray,
  [in]  ULONG           SizeOfRunArray,
  [in]  BOOLEAN         LocateLongestRuns
);

Параметры

[in] BitMapHeader

Указатель на структуру RTL_BITMAP , описывающую растровое изображение. Эта структура должна быть инициализирована подпрограммой RtlInitializeBitMap .

[out] RunArray

Указатель на первый элемент в массиве, выделенном вызывающим объектом, для битовой позиции и длины каждого четкого выполнения, найденного в заданной переменной растрового изображения.

[in] SizeOfRunArray

Указывает максимальное количество запусков очистки для удовлетворения этого запроса.

[in] LocateLongestRuns

Если задано значение TRUE, это указывает, что подпрограмма выполняет поиск по всему растровом рисунку для наиболее длинных доступных ему выполнений. В противном случае подпрограмма прекращает поиск, когда обнаруживает количество явных выполнений, заданное параметром SizeOfRunArray.

Возвращаемое значение

RtlFindClearRuns возвращает количество обнаруженных явных выполнений.

Комментарии

Если параметр LocateLongestRuns имеет значение TRUE, явные запуски, указанные в RunArray , сортируются от самого длинного к самому короткому. Четкое выполнение может состоять из одного бита.

Вызывающие элементы RtlFindClearRuns должны выполняться в среде IRQL <= APC_LEVEL если память, содержащая переменную растрового изображения, доступна для страниц или память BitMapHeader является страничной. В противном случае RtlFindClearRuns можно вызвать в любом IRQL.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL (см. раздел "Примечания")

См. также раздел

RTL_BITMAP

RtlAreBitsClear

RtlFindClearBits

RtlFindFirstRunClear

RtlFindLastBackwardRunClear

RtlFindLongestRunClear

RtlFindNextForwardRunClear

RtlInitializeBitMap