KSEVENT_ITEM structure (ks.h)
La structure KSEVENT_ITEM décrivent la prise en charge d’un minidriver pour un événement spécifique au sein d’un jeu d’événements.
Syntaxe
typedef struct {
ULONG EventId;
ULONG DataInput;
ULONG ExtraEntryData;
PFNKSADDEVENT AddHandler;
PFNKSREMOVEEVENT RemoveHandler;
PFNKSHANDLER SupportHandler;
} KSEVENT_ITEM, *PKSEVENT_ITEM;
Membres
EventId
Spécifie l’ID unique de l’événement dans le jeu d’événements.
DataInput
Spécifie la taille en octets des données d’événement. Les données d’événement commencent par une structure KSEVENTDATA qui décrit comment le client doit être averti quand l’événement se produit, éventuellement suivi de tous les paramètres supplémentaires qui spécifient quand l’événement se produit. Doit être au moins sizeof(KSEVENTDATA).
ExtraEntryData
Spécifie la taille en octets de toute mémoire supplémentaire que le système doit allouer pour chaque demande d’activation de cet événement. Le pilote utilise cette mémoire pour stocker toutes les données dont il a besoin pour effectuer le suivi de la demande d’événement. La mémoire est allouée directement après la structure KSEVENT_ENTRY de la demande d’activation de l’événement.
AddHandler
Pointeur vers une routine de rappel AVStrMiniAddEvent fournie par minidriver. Non utilisé par le pilote de classe de flux. Pour les minidrivers AVStream uniquement.
RemoveHandler
Pointeur vers une routine de rappel AVStrMiniRemoveEvent fournie par minidriver. Non utilisé par le pilote de classe de flux. Pour les minidrivers AVStream uniquement.
SupportHandler
Non utilisé par le pilote de classe de flux.
Remarques
Un minidriver qui spécifie les membres AddHandler et RemoveHandler et ne propre pas correctement les événements peut entraîner une fuite de ressource (mémoire/handle).
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ks.h (inclure Ks.h) |