Partilhar via


Filtros KS

Um filtro é um grupo de nós que encapsula uma tarefa de processamento a ser executada no fluxo de dados. Os pinos servem como condutas de entrada e saída num filtro.

Um filtro simples pode conter um pino do coletor de dados e um pino da fonte de dados. O filtro recebe dados de entrada no pino do coletor de dados, processa-os internamente e grava no pino da fonte de dados. Na figura a seguir, os pinos são mostrados como segmentos de linha pesada. Internamente, o filtro conecta o pino coletor de dados a uma unidade de processamento interna, um , que, por sua vez, é conectado ao pino de origem de dados.

Diagrama ilustrando um filtro KS simples.

Outro dispositivo pode combinar ou dividir fluxos de dados entre pinos. Por exemplo, um mixer de áudio suporta vários pinos de coletor de dados. O misturador combina-os num único fluxo e grava esse fluxo num pin da fonte de dados. A ilustração seguinte mostra o fluxo de dados.

diagrama ilustrando um misturador.

O gráfico descreve a relação interna entre os pinos do filtro. Um filtro mais complicado pode encapsular vários nós que transformam os dados que fluem através do filtro.

Os filtros especificam conexões internas entre pinos e nós internos usando o conjunto de propriedades KSPROPSETID_Topology .

A propriedade KSPROPERTY_TOPOLOGY_CONNECTIONS consulta todas as conexões entre nós de um filtro KS. Esta propriedade retorna uma matriz de KSTOPOLOGY_CONNECTION. Cada estrutura KSTOPOLOGY_CONNECTION representa uma única conexão de caminho de dados dentro de um filtro. No diagrama acima do misturador, a sequência das estruturas KSTOPOLOGY_CONNECTION pode ser a seguinte:

//    FromNode,       FromNodePin,     ToNode,        ToNodePin,
{
 {  KSFILTER_NODE,        0,            0,               0     },
 {       0,               1,       KSFILTER_NODE,        1     }
}