Estrutura KSFILTER (ks.h)
A estrutura KSFILTER descreve um filtro instanciado.
Sintaxe
typedef struct _KSFILTER {
const KSFILTER_DESCRIPTOR *Descriptor;
KSOBJECT_BAG Bag;
PVOID Context;
} KSFILTER, *PKSFILTER;
Membros
Descriptor
Um ponteiro para uma estrutura KSFILTER_DESCRIPTOR que descreve as características desse filtro específico.
Bag
Esse membro especifica o KSOBJECT_BAG (equivalente ao tipo PVOID) associado a essa instância de filtro. object bags são estruturas usadas para associar memória dinâmica a um objeto AVStream específico. Qualquer coisa no recipiente de objeto de filtro é limpa automaticamente quando o filtro é excluído.
Context
Um ponteiro usado pelo cliente para associar informações de contexto à instância de filtro específica. Normalmente, essas informações de contexto são associadas no membro Criar do filtro, conforme definido na tabela KSFILTER_DISPATCH para essa instância de filtro. Todas as informações de contexto alocadas dinamicamente devem ser colocadas no recipiente de objetos com KsAddItemToObjectBag. de Contexto é inicializado para o valor do Context membro do pai KSFILTERFACTORY no momento em que o filtro é criado. Consulte da hierarquia de objetos do AVStream.
Observações
Os drivers que implementam filtros de software normalmente associam o estado do filtro à estrutura KSFILTER. Os filtros de software geralmente processam dados dentro do retorno de chamada especificado pelo Process membro da estrutura de KSFILTER_DISPATCH correspondente.
Os filtros de hardware normalmente não usam KSFILTER porque o foco do driver de hardware é a transição de plataforma: a movimentação de dados entre o host e o hardware externo. Essa transição normalmente é tratada por código associado a um objeto de fila AVStream.
Consulte também de sacos de objeto.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no Microsoft DirectX 8.0 e versões posteriores. |
cabeçalho | ks.h (incluir Ks.h) |