KSFILTER 结构 (ks.h)

KSFILTER 结构描述实例化筛选器。

语法

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

成员

Descriptor

指向描述此特定筛选器特征的 KSFILTER_DESCRIPTOR 结构的指针。

Bag

此成员指定与此筛选器实例关联的KSOBJECT_BAG(等效于类型 PVOID)。 对象包 是用于将动态内存与特定 AVStream 对象关联的结构。 删除筛选器时,将自动清除筛选器对象包中的任何内容。

Context

客户端用来将上下文信息与特定筛选器实例关联的指针。 通常,此类上下文信息与筛选器的 创建 成员(在此筛选器实例的KSFILTER_DISPATCH表中定义)相关联。 任何动态分配的上下文信息都应放置在 KsAddItemToObjectBag的对象包中。 上下文 初始化为创建筛选器时父 KSFILTERFACTORY上下文 成员的值。 请参阅 AVStream 对象层次结构

言论

实现软件筛选器的驱动程序通常将筛选器状态与 KSFILTER 结构相关联。 软件筛选器通常处理由相应 KSFILTER_DISPATCH 结构 进程 成员指定的回调中的数据。

硬件筛选器通常不使用 KSFILTER,因为硬件驱动程序的重点是平台转换:主机与外部硬件之间的数据移动。 此转换通常由与 AVStream 队列对象关联的代码处理。

另请参阅 对象包

要求

要求 价值
最低支持的客户端 在 Microsoft Windows XP 及更高版本的作系统和 Microsoft DirectX 8.0 及更高版本中提供。
标头 ks.h (包括 Ks.h)

另请参阅

KSFILTER_DESCRIPTOR

KSFILTER_DISPATCH

KsAddItemToObjectBag

KsCompletePendingRequest