Struktur KSFILTER (ks.h)

Struktur KSFILTER menjelaskan filter yang dibuat.

Sintaks

typedef struct _KSFILTER {
  const KSFILTER_DESCRIPTOR *Descriptor;
  KSOBJECT_BAG              Bag;
  PVOID                     Context;
} KSFILTER, *PKSFILTER;

Anggota

Descriptor

Penunjuk ke struktur KSFILTER_DESCRIPTOR yang menjelaskan karakteristik filter khusus ini.

Bag

Anggota ini menentukan KSOBJECT_BAG (setara dengan jenis PVOID) yang terkait dengan instans filter ini. Tas Objek adalah struktur yang digunakan untuk mengaitkan memori dinamis dengan objek AVStream tertentu. Apa pun di tas objek filter secara otomatis dibersihkan ketika filter dihapus.

Context

Pointer yang digunakan oleh klien untuk mengaitkan informasi konteks dengan instans filter tertentu. Biasanya, informasi konteks tersebut dikaitkan dalam anggota Buat filter seperti yang didefinisikan dalam tabel KSFILTER_DISPATCH untuk instans filter ini. Setiap informasi konteks yang dialokasikan secara dinamis harus ditempatkan di tas objek dengan KsAddItemToObjectBag. Konteks diinisialisasi ke nilai anggota Konteksdari KSFILTERFACTORY induk pada saat filter dibuat. Lihat Hierarki Objek AVStream.

Keterangan

Driver yang menerapkan filter perangkat lunak biasanya mengaitkan status filter dengan struktur KSFILTER. Filter perangkat lunak biasanya memproses data dalam panggilan balik yang ditentukan oleh anggota Proses dari struktur KSFILTER_DISPATCH yang sesuai.

Filter perangkat keras biasanya tidak menggunakan KSFILTER karena fokus driver perangkat keras adalah transisi platform: pergerakan data antara host dan perangkat keras eksternal. Transisi ini biasanya ditangani oleh kode yang terkait dengan objek antrean AVStream.

Lihat juga Object Bags.

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

KSFILTER_DESCRIPTOR

KSFILTER_DISPATCH

KsAddItemToObjectBag

KsCompletePendingRequest