структура PCEVENT_ITEM (portcls.h)
Структура PCEVENT_ITEM используется для описания события, поддерживаемого определенным фильтром, закреплением или узлом.
Синтаксис
typedef struct {
const GUID *Set;
ULONG Id;
ULONG Flags;
PCPFNEVENT_HANDLER Handler;
} PCEVENT_ITEM, *PPCEVENT_ITEM;
Члены
Set
Указывает набор событий. Этот элемент является указателем на GUID, который однозначно идентифицирует набор событий. Список идентификаторов GUID наборов событий см. в наборов событий звуковых драйверов.
Id
Указывает идентификатор события. Этот элемент определяет элемент события в наборе событий. Если набор событий содержит N-элементы, допустимые идентификаторы событий являются целыми числами в диапазоне от 0 до N-1.
Flags
Указывает тип события. Этот элемент имеет одно из следующих значений:
PCEVENT_ITEM_FLAG_ENABLE
Указывает, что уведомление о событии должно быть включено для этого типа события. Драйвер должен продолжать уведомление о событии, пока клиент явно не отключает его.
PCEVENT_ITEM_FLAG_ONESHOT
Указывает, что уведомление о событии должно быть включено только для следующего вхождения этого события. Клиент не отключает событие после его возникновения.
PCEVENT_ITEM_FLAG_BASICSUPPORT
Если клиент указывает этот флаг, драйвер возвращает STATUS_SUCCESS, если он поддерживает событие и код ошибки, если он не.
Handler
Указатель на подпрограмму обработчика событий мини-порта драйвера. Этот элемент является указателем функции типа PCPFNEVENT_HANDLER, который определяется следующим образом:
typedef NTSTATUS (*PCPFNEVENT_HANDLER)
(
IN PPCEVENT_REQUEST EventRequest
);
При вызове подпрограммы обработчика вызывающий объект передает один параметр вызова, который является указателем на структуру, выделенную вызывающим объектом PCEVENT_REQUEST.
Замечания
Структура PCEVENT_ITEM указывает определенный элемент события в таблице автоматизации. Структура PCAUTOMATION_TABLE указывает на массив PCEVENT_ITEM структур.
В звуковом формате WDM целевой объект для запроса события — это экземпляр пин-кода или узел на закреплении. Экземпляр фильтра не может быть целевым объектом запроса на событие.
Требования
Требование | Ценность |
---|---|
заголовка | portcls.h (include Portcls.h) |