Freigeben über


KSGATE-Struktur (ks.h)

Die KSGATE-Struktur beschreibt ein AVStream-Gate-Objekt.

Syntax

typedef struct _KSGATE {
  LONG    Count;
  PKSGATE NextGate;
} KSGATE, *PKSGATE;

Angehörige

Count

Dieses Element gibt die Anzahl des Tors an. Wenn dieses Element über Null liegt, wird das Tor als im "offenen" Zustand betrachtet und ermöglicht die Verarbeitung. Wenn das Element null oder darunter liegt, wird das Gate als "geschlossen" betrachtet und lässt die Verarbeitung nicht zu. Obwohl die KSGATE-Struktur die universelle Gate-Implementierung in AVStream ist, gibt es konzeptionell sowohl AND als auch OR Gates. Bei AND-Toren ist Count ein minus die Anzahl der Ausgänge an das Tor. Bei OR-Toren ist Count die Anzahl der Eingaben für das Tor. Daher kann dieses Element im Allgemeinen einen beliebigen Wert enthalten; Für AND-Tore kann sie jedoch nur Werte von mindestens einem toren enthalten, und für OR-Tore kann es nur Werte von Null oder höher enthalten. Clients sollten darauf achten, das Count-Element nicht speziell auf einen ungültigen Wert für das angegebene konzeptionelle Gate festzulegen, das diese Struktur darstellt.

NextGate

Ein Zeiger auf die nächste KSGATE-Struktur in der Gatekette. Es gibt Einschränkungen für diese Verteilung mithilfe der Funktionen KsGateXxxAnd und KsGateXxxOr. NextGate für ein AND-Tor muss auf ein OR-Tor zeigen, und für ein OR-Tor muss auf ein AND-Tor zeigen. Clients können Zustandsübergänge manuell über KsGateInitialize anstelle von KsGateInitializeAnd oder KsGateInitializeOr angeben.

Bemerkungen

Konzeptuell sind Flusssteuerungstore logische UND UND OR-Tore; in AVStream werden sie als Verarbeitungskontrollmechanismus verwendet. Weitere Informationen finden Sie unter Flow Control Gates in AVStream.

Alle Manipulationen von Count werden mithilfe von verriegelten Funktionen durchgeführt, um synchrone Zustandsänderungen bereitzustellen. Es gibt keine Unterscheidung darüber, ob ein gegebener KSGATE ein AND-Tor oder ein OR-Tor darstellt. Daher sollten Clients darauf achten, ein Gate nicht in einen ungültigen Zustand zu übertragen, indem KSGATEXxxUnd Funktionen auf einem OR-Gate oder KSGATEXxxOder Funktionen auf einem AND-Gate oder mithilfe KsGateTurnInputXxx Funktionen ungültig verwendet werden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und in Microsoft DirectX 8.0 und höheren Versionen.
Header- ks.h (enthalten Ks.h)

Siehe auch

KSGATE-

KsGateInitialize-

KsGateInitializeAnd

KsGateInitializeOr