Filtros KS

Un filtro es un grupo de nodos que encapsula una tarea de procesamiento que se va a realizar en el flujo de datos. Los pins sirven como conductos de entrada y salida en un filtro.

Un filtro simple podría contener una patilla receptora de datos y una patilla de origen de datos. El filtro recibe datos entrantes en el pin del receptor de datos, los procesa internamente y escribe en el pin del origen de datos. En la ilustración siguiente, los pines se muestran como segmentos de línea pesados. Internamente, el filtro conecta el anclaje del receptor de datos a una unidad de procesamiento interna, un nodo, que a su vez está conectado al pin del origen de datos.

diagrama que ilustra un filtro ks simple.

Otro dispositivo puede combinar o dividir flujos de datos entre patillas. Por ejemplo, un mezclador de audio admite varios pines receptores de datos. El mezclador los combina en una sola secuencia y escribe esa secuencia en un pin de origen de datos. En la ilustración siguiente se muestra el flujo de datos.

diagrama que ilustra un mezclador.

En el gráfico se describe la relación interna entre las patillas del filtro. Un filtro más complicado podría encapsular varios nodos que transforman los datos que fluyen a través del filtro.

Los filtros especifican conexiones internas entre patillas y nodos internos mediante el conjunto de propiedades KSPROPSETID_Topology .

La propiedad KSPROPERTY_TOPOLOGY_CONNECTIONS consulta todas las conexiones entre nodos de un filtro KS. Esta propiedad devuelve una matriz de KSTOPOLOGY_CONNECTION. Cada estructura KSTOPOLOGY_CONNECTION representa una única conexión de ruta de acceso de datos dentro de un filtro. En el diagrama de mezclador anterior, la secuencia de estructuras de KSTOPOLOGY_CONNECTION podría ser la siguiente:

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