KSGATE-Struktur (ks.h)

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

Syntax

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

Member

Count

Dieses Element gibt die Anzahl für das Gate an. Wenn dieses Element über 0 0 liegt, wird das Gate als "offen" betrachtet und lässt die Verarbeitung zu. Wenn das Element null oder darunter ist, wird das Gate als "geschlossen" betrachtet und lässt die Verarbeitung nicht zu. Obwohl die KSGATE-Struktur die universelle Gateimplementierung in AVStream ist, gibt es konzeptionell sowohl AND- als auch OR-Gates. Für AND-Gates ist Count eins abzüglich der Anzahl der Ausgänge zum Gate. Für OR-Gates ist Count die Anzahl von Eingängen für das Gate. Daher kann dieser Member im Allgemeinen einen beliebigen Wert enthalten. Für AND-Gates kann es jedoch nur Werte von mindestens einem und für OR-Gates nur Werte von 0 oder mehr enthalten. Clients sollten darauf achten, den Count-Member nicht speziell auf einen ungültigen Wert für das von dieser Struktur dargestellte konzeptionelle Gate festzulegen.

NextGate

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

Hinweise

Konzeptionell sind Flusssteuerungsgates logische UND- oder OR-Gates; in AVStream werden sie als Verarbeitungssteuerungsmechanismus verwendet. Weitere Informationen finden Sie unter Flow Control Gates in AVStream.

Alle Bearbeitungen von Count werden mithilfe von ineinandergreifenden Funktionen durchgeführt, um synchrone Zustandsänderungen bereitzustellen. Es gibt keinen Unterschied, ob ein bestimmtes KSGATE ein AND-Gate oder ein OR-Gate darstellt. Daher sollten Clients darauf achten, ein Gate nicht in einen ungültigen Zustand zu überstellen, indem sie KSGATEXxxAnd-Funktionen auf einem OR-Gate oder KSGATEXxxOr-Funktionen auf einem AND-Gate oder die Verwendung von KsGateTurnInputXxx-Funktionen ungültig verwenden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows XP und höheren Betriebssystemen sowie in Microsoft DirectX 8.0 und höheren Versionen.
Kopfzeile ks.h (einschließlich Ks.h)

Weitere Informationen

KSGATE

KsGateInitialize

KsGateInitializeAnd

KsGateInitializeOr