Estructura KSGATE (ks.h)

La estructura KSGATE describe un objeto de puerta AVStream.

Sintaxis

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

Miembros

Count

Este miembro indica el recuento en la puerta. Cuando este miembro está por encima de cero, la puerta se considera que está en el estado "abierto" y permite el procesamiento. Cuando el miembro es cero o inferior, se considera que la puerta está en estado "cerrado" y no permite el procesamiento. Aunque la estructura KSGATE es la implementación de puerta universal en AVStream, conceptualmente, hay puertas AND y OR. Para las puertas AND, Count es uno menos el número de entradas off a la puerta. Para las puertas OR, Count es el número de entradas de la puerta. Por lo tanto, en general, este miembro puede contener cualquier valor; sin embargo, para las puertas AND, solo puede contener valores de uno o menos, y para puertas OR, solo puede contener valores de cero o mayor. Los clientes deben tener cuidado de no establecer específicamente el miembro Count en un valor no válido para la puerta conceptual especificada que representa esta estructura.

NextGate

Puntero a la siguiente estructura KSGATE de la cadena de puerta. Hay restricciones en esta propagación mediante las funciones KsGateXxxAnd y KsGateXxxOr. NextGate para una puerta AND debe apuntar a una puerta OR y para una puerta OR debe apuntar a una puerta AND. Los clientes pueden especificar manualmente las transiciones de estado a través de KsGateInitialize en lugar de KsGateInitializeAnd o KsGateInitializeOr.

Comentarios

Conceptualmente, las puertas de control de flujo son puertas AND y OR lógicas; en AVStream, se usan como mecanismo de control de procesamiento. Para obtener más información, vea Puertas de control de flujo en AVStream.

Todas las manipulaciones de Count se realizan mediante funciones interbloqueadas para proporcionar cambios de estado sincrónicos. No hay distinción en cuanto a si un KSGATE determinado representa una puerta AND o una puerta OR. Por lo tanto, los clientes deben tener cuidado de no realizar la transición de una puerta a un estado no válido mediante las funciones KSGATEXxxy Xxx en una puerta OR o KSGATEXxxo mediante las funciones KsGateTurnInputXxx de forma no válida.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Microsoft Windows XP y sistemas operativos posteriores y en Microsoft DirectX 8.0 y versiones posteriores.
Encabezado ks.h (incluya Ks.h)

Consulte también

KSGATE

KsGateInitialize

KsGateInitializeAnd

KsGateInitializeOr