Freigeben über


IKsReferenceClock-Schnittstelle (ks.h)

Die IKsReferenceClock-Schnittstelle ist eine SCHNITTSTELLE im COM-Stil, die von AVStream für alle Pins bereitgestellt wird. Der Pin übergibt die Anforderung an die master Uhr.

Vererbung

Die IKsReferenceClock-Schnittstelle erbt von der IUnknown-Schnittstelle .

Methoden

Die IKsReferenceClock-Schnittstelle verfügt über diese Methoden.

 
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 Streamzeit 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 zugeordnete Referenzuhr nach ihrer Auflösung ab.
IKsReferenceClock::GetState

Die IKsReferenceClock::GetState-Methode fragt die zugeordnete Referenzuhr nach ihrem aktuellen Streamingstatus ab.
IKsReferenceClock::GetTime

Die IKsReferenceClock::GetTime-Methode fragt die zugeordnete Referenzuhr für die aktuelle Zeit ab.

Hinweise

Der Minidriver kann eine IKsReferenceClock-Schnittstelle abrufen, indem KsPinGetReferenceClockInterface aufgerufen wird. Da es sich um eine Schnittstelle im COM-Stil handelt, ruft KsPinGetReferenceClockInterfaceQueryInterface auf, wodurch wiederum AddRef aufgerufen wird, um den Schnittstellenzeiger zu erhöhen. Dies bedeutet, dass der Minidriver, wenn der Minidriver mit der IKsReferenceClock-Schnittstelle fertig ist, ihn durch Aufrufen von Release freigeben muss.

Clients, die in C geschrieben sind, sehen die IKsReferenceClock-Schnittstelle als Struktur, die einen Zeiger auf eine Tabelle von Funktionen anstelle einer abstrakten C++-Basisklasse enthält. Ein Client, der in C++ geschrieben ist, kann die folgenden Aktionen ausführen:

PIKSREFERENCECLOCK RefClock;

if (NT_SUCCESS (
  KsPinGetReferenceClockInterface (
    Pin,
    &RefClock)
) {
    ... RefClock -> GetCorrelatedTime (...);
    RefClock -> Release ();
}

Ein Client, der in C geschrieben ist, würde stattdessen Folgendes tun:

PIKSREFERENCECLOCK RefClock;

If (NT_SUCCESS (
  KsPinGetReferenceClockInterface (
    Pin,
    &RefClock)
) {
  ... RefClock -> lpVtbl -> GetCorrelatedTime (...);
  RefClock -> lpVtbl -> Release ();
}

Weitere Informationen finden Sie unter ÜBERSICHT ÜBER AVStream.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile ks.h

Weitere Informationen

KsPinGetConnectedFilterInterface

KsPinGetConnectedPinInterface

KsPinGetReferenceClockInterface