Fonction StreamClassQueryMasterClockSync (strmini.h)
Le minidriver peut appeler la routine StreamClassQueryMasterClockSync pour interroger de manière synchrone l’horloge master d’un flux.
Syntaxe
VOID STREAMAPI StreamClassQueryMasterClockSync(
[in] HANDLE MasterClockHandle,
[in, out] PHW_TIME_CONTEXT TimeContext
);
Paramètres
[in] MasterClockHandle
Spécifie le handle pour l’horloge master en cours de requête. Le pilote de classe transmet cela dans la requête SRB_INDICATE_MASTER_CLOCK à la routine StrMiniReceiveStreamControlPacket du minidriver.
[in, out] TimeContext
Spécifie la structure HW_TIME_CONTEXT que le pilote de classe transmet à la routine StrMiniClock du master horloge. Avant d’appeler cette routine, le minidriver doit renseigner les membres HwDeviceExtension, HwStreamObject et Function de TimeContext. StreamClassQueryMasterClockSync termine les membres Time et SystemTime .
Valeur de retour
None
Remarques
La routine doit être appelée à DISPATCH_LEVEL ou en dessous. Si l’appelant est en cours d’exécution dans un IRQL déclenché, il doit utiliser la version asynchrone , StreamClassQueryMasterClock, à la place.
Le pilote de classe appelle la routine StrMiniClock de l’horloge master pour interroger l’horloge.
Dans de rares occasions, le gestionnaire de graphe bascule l’horloge master. Le pilote de classe expose une condition de course lors de la gestion de la nouvelle horloge master. Si le minidriver appelle une classe de flux master routine d’horloge immédiatement après avoir reçu une nouvelle horloge du pilote de classe, le pilote de classe peut produire des résultats inattendus.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | strmini.h (inclure Strmini.h) |
Bibliothèque | Stream.lib |
IRQL | <=DISPATCH_LEVEL (voir la section Remarques) |