Freigeben über


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

Siehe auch

KsPinGetConnectedFilterInterface

KsPinGetConnectedPinInterface

KsPinGetReferenceClockInterface