IKsReferenceClock-Schnittstelle (ks.h)
Die IKsReferenceClock Schnittstelle ist eine COM-Formatschnittstelle, die von AVStream auf allen Pins bereitgestellt wird. Der Pin übergibt die Anforderung an die Masteruhr.
Erbschaft
Die IKsReferenceClock Schnittstelle erbt von der IUnknown Schnittstelle.
Methodik
Die IKsReferenceClock Schnittstelle weist diese Methoden auf.
IKsReferenceClock::GetCorrelatedPhysicalTime Die IKsReferenceClock::GetCorrelatedPhysicalTime-Methode fragt die zugeordnete Referenzuhr für die aktuelle physische Zeit ab und ruft die korrelierte Systemzeit ab. |
IKsReferenceClock::GetCorrelatedTime Die IKsReferenceClock::GetCorrelatedTime-Methode fragt die zugeordnete Referenzuhr für die aktuelle Datenstromzeit ab und ruft die korrelierte Systemzeit ab. |
IKsReferenceClock::GetPhysicalTime Die IKsReferenceClock::GetPhysicalTime-Methode fragt die zugeordnete Referenzuhr für die aktuelle physische Zeit ab. |
IKsReferenceClock::GetResolution Die IKsReferenceClock::GetResolution-Methode fragt die zugehörige Referenzuhr für die Auflösung ab. |
IKsReferenceClock::GetState Die IKsReferenceClock::GetState-Methode fragt die zugeordnete Referenzuhr für den aktuellen Streamingstatus ab. |
IKsReferenceClock::GetTime Die IKsReferenceClock::GetTime-Methode fragt die zugeordnete Referenzuhr für die aktuelle Uhrzeit ab. |
Bemerkungen
Der Minidriver kann eine IKsReferenceClock- Schnittstelle abrufen, indem KsPinGetReferenceClockInterfaceaufgerufen wird. Da es sich um eine COM-Schnittstelle handelt, ruft KsPinGetReferenceClockInterfaceQueryInterface-auf, wodurch wiederum AddRef- aufgerufen wird, um den Schnittstellenzeiger zu erhöhen. Dies bedeutet: Wenn der Minidriver mit dem IKsReferenceClock Schnittstelle fertig ist, muss der Minidriver ihn freigeben, indem er Releaseaufruft.
Clients, die in C geschrieben wurden, sehen die IKsReferenceClock Schnittstelle als Struktur, die einen Zeiger auf eine Tabelle mit Funktionen anstelle einer abstrakten C++-Basisklasse enthält. Ein Client, der in C++ geschrieben wurde, kann folgende Aktionen ausführen:
PIKSREFERENCECLOCK RefClock;
if (NT_SUCCESS (
KsPinGetReferenceClockInterface (
Pin,
&RefClock)
) {
... RefClock -> GetCorrelatedTime (...);
RefClock -> Release ();
}
Ein Client, der in C geschrieben ist, würde jedoch folgendes tun:
PIKSREFERENCECLOCK RefClock;
If (NT_SUCCESS (
KsPinGetReferenceClockInterface (
Pin,
&RefClock)
) {
... RefClock -> lpVtbl -> GetCorrelatedTime (...);
RefClock -> lpVtbl -> Release ();
}
Weitere Informationen finden Sie unter AVStream Overview.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Fenster |
Header- | ks.h |