Partager via


structure PCEVENT_ITEM (portcls.h)

La structure PCEVENT_ITEM est utilisée pour décrire un événement pris en charge par un filtre, une broche ou un nœud particulier.

Syntaxe

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

Membres

Set

Spécifie le jeu d’événements. Ce membre est un pointeur vers un GUID qui identifie de façon unique le jeu d’événements. Consultez la liste des GUID de jeu d’événements dans Les ensembles d’événements de pilotes audio.

Id

Spécifie l’ID d’événement. Ce membre identifie un élément d’événement dans le jeu d’événements. Si le jeu d’événements contient N éléments, les ID d’événement valides sont des entiers compris entre 0 et N-1.

Flags

Spécifie le type d’événement. Ce membre est défini sur l’une des valeurs suivantes :

PCEVENT_ITEM_FLAG_ENABLE

Indique que la notification d’événement doit être activée pour ce type d’événement. Le pilote doit continuer la notification d’événement jusqu’à ce que le client la désactive explicitement.

PCEVENT_ITEM_FLAG_ONESHOT

Indique que la notification d’événement doit être activée pour l’occurrence suivante de cet événement uniquement. Le client ne désactive pas (et ne doit pas) désactiver l’événement une fois qu’il s’est produit.

PCEVENT_ITEM_FLAG_BASICSUPPORT

Si le client spécifie cet indicateur, le pilote retourne STATUS_SUCCESS s’il prend en charge l’événement et un code d’erreur s’il ne le fait pas.

Handler

Pointeur vers la routine du gestionnaire d’événements du pilote miniport. Ce membre est un pointeur de fonction de type PCPFNEVENT_HANDLER, qui est défini comme suit :

  typedef NTSTATUS (*PCPFNEVENT_HANDLER)
  (
      IN PPCEVENT_REQUEST  EventRequest
  );

Lors de l’appel de la routine de gestionnaire , l’appelant passe un seul paramètre d’appel, qui est un pointeur vers une structure de PCEVENT_REQUEST allouée à l’appelant.

Remarques

La structure PCEVENT_ITEM spécifie un élément d’événement particulier dans une table Automation. La structure PCAUTOMATION_TABLE pointe vers un tableau de structures PCEVENT_ITEM .

Dans l’audio WDM, la cible d’une demande d’événement est une broche instance ou un nœud sur une broche. Un filtre instance ne peut pas être la cible d’une demande d’événement.

Configuration requise

Condition requise Valeur
En-tête portcls.h (include Portcls.h)

Voir aussi

PCAUTOMATION_TABLE

PCEVENT_REQUEST