次の方法で共有


PCEVENT_ITEM構造体 (portcls.h)

PCEVENT_ITEM 構造体は、特定のフィルター、ピン、またはノードでサポートされるイベントを記述するために使用されます。

構文

typedef struct {
  const GUID         *Set;
  ULONG              Id;
  ULONG              Flags;
  PCPFNEVENT_HANDLER Handler;
} PCEVENT_ITEM, *PPCEVENT_ITEM;

メンバーズ

Set

イベント セットを指定します。 このメンバーは、イベント セットを一意に識別する GUID へのポインターです。 Audio Drivers イベント セットのイベント セット GUID の一覧を参照してください。

Id

イベント ID を指定します。 このメンバーは、イベント セット内のイベント 項目を識別します。 イベント セットに N 個の項目が含まれている場合、有効なイベント ID は 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 構造体へのポインターである 1 つの呼び出しパラメーターを渡します。

備考

PCEVENT_ITEM 構造体は、オートメーション テーブル内の特定のイベント項目を指定します。 PCAUTOMATION_TABLE 構造体は、PCEVENT_ITEM 構造体の配列を指します。

WDM オーディオでは、イベント要求のターゲットは、ピン インスタンスまたはピンのノードです。 フィルター インスタンスをイベント要求のターゲットにすることはできません。

必要条件

要件 価値
ヘッダー portcls.h (Portcls.h を含む)

関連項目

PCAUTOMATION_TABLE

PCEVENT_REQUEST