MÉTHODE IMFClock ::GetCorrelatedTime (mfidl.h)
Récupère l’heure de la dernière horloge qui a été corrélée à l’heure système.
Syntaxe
HRESULT GetCorrelatedTime(
[in] DWORD dwReserved,
[out] LONGLONG *pllClockTime,
[out] MFTIME *phnsSystemTime
);
Paramètres
[in] dwReserved
Réservé, doit être égal à zéro.
[out] pllClockTime
Reçoit la dernière heure d’horloge connue, en unités de la fréquence de l’horloge.
[out] phnsSystemTime
Reçoit l’heure système qui correspond à l’heure d’horloge retournée dans pllClockTime, en unités de 100 nanosecondes.
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.
Code de retour | Description |
---|---|
|
S_OK |
|
L’horloge n’a pas de source de temps. |
Remarques
À un intervalle fixe, une horloge met en corrélation ses cycles d’horloge internes avec l’heure système. (L’heure système est l’heure retournée par le compteur de performances haute résolution.) Cette méthode retourne :
- Heure d’horloge la plus récente qui a été corrélée à l’heure système.
- Heure système à laquelle la corrélation a été effectuée.
L’heure système est retournée dans le paramètre phnsSystemTime et est toujours exprimée en unités de 100 nanosecondes.
Pour savoir à quelle fréquence l’horloge met en corrélation son heure d’horloge avec l’heure système, appelez GetProperties. L’intervalle de corrélation est indiqué dans le membre qwCorrelationRate de la structure MFCLOCK_PROPERTIES . Si qwCorrelationRate est égal à zéro, cela signifie que l’horloge effectue la corrélation chaque fois que GetCorrelatedTime est appelé. Sinon, vous pouvez calculer l’heure d’horloge actuelle en extrapolant à partir de la dernière heure corrélée.
Certaines horloges prennent en charge les changements de taux via l’interface IMFRateControl . Si c’est le cas, l’heure de l’horloge avance à une vitesse de fréquence × vitesse actuelle. Si une horloge n’expose pas l’interface IMFRateControl , le taux est toujours de 1,0.
Pour l’horloge de présentation, l’heure d’horloge est l’heure de présentation et est toujours relative à l’heure de début spécifiée dans IMFPresentationClock ::Start. Vous pouvez également obtenir l’heure de présentation en appelant IMFPresentationClock ::GetTime.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | mfidl.h |
Bibliothèque | Mfuuid.lib |