Bagikan melalui


Struktur KSFILTER (ks.h)

Struktur KSFILTER menjelaskan filter yang dibuat.

Sintaksis

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. Object Bags 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 buat anggota 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. Context diinisialisasi ke nilai Context anggota induk KSFILTERFACTORY pada saat filter dibuat. Lihat Hierarki Objek AVStream.

Komentar

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 Proses anggota 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

Syarat 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