Функция PcNewInterruptSync (portcls.h)
Функция PcNewInterruptSync создает и инициализирует объект прерываний синхронизации.
Синтаксис
PORTCLASSAPI NTSTATUS PcNewInterruptSync(
[out] PINTERRUPTSYNC *OutInterruptSync,
[in, optional] PUNKNOWN OuterUnknown,
[in] PRESOURCELIST ResourceList,
[in] ULONG ResourceIndex,
[in] INTERRUPTSYNCMODE Mode
);
Параметры
[out] OutInterruptSync
Указатель вывода для объекта синхронизации прерываний, созданного этой функцией. Этот параметр указывает на переменную указателя, выделенную вызывающим объектом, в которую функция выводит ссылку на только что созданный объект IInterruptSync. Укажите допустимое, незначение указателя NULL для этого параметра.
[in, optional] OuterUnknown
Указатель на интерфейс IUnknown объекта, который должен агрегировать объект. Если агрегирование не требуется, задайте для этого параметра значение NULL.
[in] ResourceList
Указатель на объект IResourceList, предоставленный драйверу минипорта во время инициализации. Драйвер портов изучит этот список ресурсов, но не изменит его.
[in] ResourceIndex
Указывает индекс ресурса прерывания в списке ресурсов. Если метод IResourceList::NumberOfEntriesOfType возвращает число N для типа CmResourceTypeInterrupt, ResourceIndex должно быть значением в диапазоне от 0 до N-1.
[in] Mode
Указывает способ обработки нескольких isR. Задайте для этого параметра одно из значений перечисления INTERRUPTSYNCMODE. Дополнительные сведения см. в следующем разделе "Примечания".
Возвращаемое значение
PcNewInterruptSync возвращает STATUS_SUCCESS, если вызов выполнен успешно. В противном случае возвращается соответствующий код ошибки.
Замечания
Параметр mode имеет одно из значений перечисления INTERRUPTSYNCMODE в следующей таблице.
Ценность | Значение |
---|---|
ПрерываниеSyncModeNormal | Вызовите каждый isR в списке, пока один из них не возвращает STATUS_SUCCESS. |
ПрерываниеSyncModeAll | Вызовите каждый isR в списке ровно один раз, независимо от кодов возврата различных isR. |
ПрерываниеSyncModeRepeat | Перемещается по всему списку ISR до тех пор, пока не будет выполняться поездка по списку, в котором нет ISR в списке возвращает STATUS_SUCCESS. |
Подробные описания этих трех режимов см. в объектов синхронизации прерываний.
Параметры OutInterruptSync, OuterUnknownи ResourceList соответствуют соглашениям подсчета ссылок для объектов COM.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 2000. |
целевая платформа | Всеобщий |
заголовка | portcls.h (include Portcls.h) |
библиотеки | Portcls.lib |
IRQL | PASSIVE_LEVEL |