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
);
呼叫 Handler 例程時,呼叫端會傳入單一呼叫參數,這是呼叫端配置 PCEVENT_REQUEST 結構的指標。
備註
PCEVENT_ITEM 結構會指定自動化數據表中的特定事件專案。 PCAUTOMATION_TABLE 結構指向PCEVENT_ITEM結構的陣列。
在WDM音訊中,事件要求的目標為釘選實例或釘選上的節點。 篩選實例不能是事件要求的目標。
規格需求
需求 | 值 |
---|---|
標頭 | portcls.h (包括 Portcls.h) |