Struktur KSGATE (ks.h)

Struktur KSGATE menjelaskan objek gerbang AVStream.

Sintaks

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

Anggota

Count

Anggota ini menunjukkan hitungan di gerbang. Ketika anggota ini di atas nol, gerbang dianggap dalam status "terbuka" dan memungkinkan pemrosesan. Ketika anggota nol atau di bawahnya, gerbang dianggap dalam status "tertutup" dan tidak mengizinkan pemrosesan. Meskipun struktur KSGATE adalah implementasi gerbang universal di AVStream, secara konseptual, ada gerbang AND dan OR. Untuk gerbang AND, Count adalah satu dikurangi jumlah input off ke gerbang. Untuk gerbang OR, Count adalah jumlah input untuk gerbang. Dengan demikian, secara umum, anggota ini dapat berisi nilai apa pun; namun, untuk gerbang AND, itu hanya dapat berisi nilai satu atau kurang, dan untuk gerbang OR, itu hanya dapat berisi nilai nol atau lebih besar. Klien harus berhati-hati untuk tidak secara khusus mengatur anggota Count ke nilai yang tidak valid untuk gerbang konseptual yang diberikan yang diwakili struktur ini.

NextGate

Penunjuk ke struktur KSGATE berikutnya dalam rantai gerbang. Ada batasan pada penyebaran ini menggunakan fungsi KsGateXxxAnd dan KsGateXxxOr. NextGate untuk gerbang AND harus menunjuk ke gerbang OR, dan untuk gerbang OR harus menunjuk ke gerbang AND. Klien dapat menentukan transisi status secara manual melalui KsGateInitialize alih-alih KsGateInitializeAnd atau KsGateInitializeOr.

Keterangan

Secara konseptual, gerbang kontrol aliran adalah gerbang LOGIS AND dan OR; di AVStream, mereka digunakan sebagai mekanisme kontrol pemrosesan. Untuk informasi selengkapnya, lihat Gerbang Kontrol Alur di AVStream.

Semua manipulasi Count dilakukan menggunakan fungsi yang saling dikunci untuk memberikan perubahan status sinkron. Tidak ada perbedaan apakah KSGATE tertentu mewakili gerbang AND atau gerbang OR. Dengan demikian, klien harus berhati-hati untuk tidak transisi gerbang ke status tidak valid dengan menggunakan KSGATEXxxDan fungsi pada gerbang OR atau fungsi KSGATEXxxAtau pada gerbang AND atau dengan menggunakan fungsi KsGateTurnInputXxx secara tidak valid.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Microsoft Windows XP dan sistem operasi yang lebih baru dan di Microsoft DirectX 8.0 dan versi yang lebih baru.
Header ks.h (termasuk Ks.h)

Lihat juga

KSGATE

KsGateInitialize

KsGateInitializeAnd

KsGateInitializeOr