Функция обратного вызова PFNKSADDEVENT (ks.h)
Подпрограмма AVStrMiniAddEvent minidriver AVStream вызывается, когда клиент регистрируется для уведомления о событии. Эта подпрограмма является необязательной.
Синтаксис
PFNKSADDEVENT Pfnksaddevent;
NTSTATUS Pfnksaddevent(
[in] PIRP Irp,
[in] PKSEVENTDATA EventData,
[in] _KSEVENT_ENTRY *EventEntry
)
{...}
Параметры
[in] Irp
Указывает IRP, описывающий запрос на добавление события.
[in] EventData
Указатель на структуру KSEVENTDATA , описывающую метод уведомления для этого события.
[in] EventEntry
Указатель на структуру KSEVENT_ENTRY , созданную AVStream, которая описывает, как запускается событие.
Возвращаемое значение
AVStrMiniAddEvent должен возвращать STATUS_SUCCESS или ошибку, относящееся к включенному событию.
Комментарии
Если обработчик событий добавления не указан, AVStream добавит событие в список объектов. См. раздел Обработка событий в AVStream.
Часто этот обратный вызов реализует поведение конкретного поставщика, а затем вызывает KsFilterAddEvent или KsPinAddEvent. Мини-диск передает указатель EventEntry , полученный здесь, в вызовах KsFilterAddEvent или KsPinAddEvent.
Мини-driver указывает адрес этой подпрограммы в элементе AddHandlerструктуры KSEVENT_ITEM . Обработка событий в AVStream описывает, как мини-драйвер предоставляет эту структуру драйверу класса.
Если мини-driver AVStream указывает AddHandler как отличное от NULL, AVStream не добавляет элемент в список событий объекта. Если minidriver указывает AddHandler и не добавляет событие в список событий объекта с помощью KsDefaultAddEventHandler() или вызова Ks*AddEvent , мини-диск отвечает за очистку события.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в операционных системах Microsoft Windows XP и более поздних версиях, а также DirectX 8.0 и более поздних версиях. |
Целевая платформа | Персональный компьютер |
Верхняя часть | ks.h (включая Ks.h) |