Поделиться через


Функция обратного вызова PFNKSADDEVENT (ks.h)

Подпрограмма AVStream minidriver AVStrMiniAddEvent вызывается, когда клиент регистрирует событие. Эта подпрограмма является необязательной.

Синтаксис

PFNKSADDEVENT Pfnksaddevent;

NTSTATUS Pfnksaddevent(
  [in] PIRP Irp,
  [in] PKSEVENTDATA EventData,
  [in] _KSEVENT_ENTRY *EventEntry
)
{...}

Параметры

[in] Irp

Указывает IRP, описывающий запрос на добавление события.

[in] EventData

Указатель на структуру KSEVENTDATA, описывающую метод уведомления для этого события.

[in] EventEntry

Указатель на структуру, созданную AVStream, KSEVENT_ENTRY, описывающую активацию события.

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

AVStrMiniAddEvent должен возвращать STATUS_SUCCESS или ошибку, относясь к включенному событию.

Замечания

Если вы не предоставляете обработчик событий добавления, AVStream добавляет событие в список объектов. См. обработку событий в AVStream.

Часто этот обратный вызов реализует поведение конкретного поставщика, а затем вызывает KsFilterAddEvent или KsPinAddEvent. Мини-driver передает указатель EventEntry, полученный здесь в вызовах KsFilterAddEvent или KsPinAddEvent.

Мини-driver задает адрес этой процедуры в элементе AddHandler структуры KSEVENT_ITEM. обработка событий в AVStream описывает, как мини-driver предоставляет эту структуру драйверу класса.

Если мини-driver AVStream указывает AddHandler как ненулевое, AVStream не добавляет элемент в список событий объекта. Если мини-driver задает AddHandler и не добавляет событие в список событий объекта через KsDefaultAddEventHandler() или вызов Ks*AddEvent , мини-driver отвечает за очистку события.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Microsoft Windows XP и более поздних операционных системах и версиях DirectX 8.0 и более поздних версий DirectX.
целевая платформа Настольный
заголовка ks.h (include Ks.h)

См. также

AVStrMiniRemoveEvent

KSAUTOMATION_TABLE

KSEVENTDATA

KSEVENT_ENTRY

KSEVENT_ITEM

KsFilterAddEvent

KsFilterErateEvents

KsPinAddEvent

KsPinGenerateEvents