KsGateInitialize - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ks.h

void KsGateInitialize(
  [in]           PKSGATE Gate,
  [in]           LONG    InitialCount,
  [in, optional] PKSGATE NextGate,
  [in]           BOOLEAN StateToPropagate
);

View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-ks-ksgateinitialize)

KsGateInitialize function

Description

The KsGateInitialize function initializes a gate for use.

Parameters

Gate [in]

A pointer to the KSGATE structure to initialize.

InitialCount [in]

This parameter specifies the initial count to place on the gate. Fills in Gate -> Count. For a new AND gate, this should be 1 (1 − 0 off inputs), and for a new OR gate, this should be 0 (0 on inputs). For more information, see Flow Control Gates in AVStream.

NextGate [in, optional]

A pointer to a KSGATE structure to which Gate should attach its output for state transitions. If this optional parameter is unspecified, Gate is not be attached to a subsequent gate.

StateToPropagate [in]

This parameter specifies whether to propagate ON transitions or OFF transitions. For an OR gate, set to TRUE; for an AND gate, set to FALSE.

Remarks

Minidrivers should not call KsGateInitialize directly, but should instead use KsGateInitializeAnd or KsGateInitializeOr.

AND and OR gates are conceptualizations of the gating mechanism. AVStream does not distinguish between them in the implementation of the common gate functions. The gate functions specific to AND and OR gates are inline calls to the common gate functions.

To learn more about the gate construct in AVStream, see Flow Control Gates in AVStream, KSGATE.

See also

KsGateInitializeAnd

KsGateInitializeOr

KsGateTerminateAnd

KsGateTerminateOr