Connectors and connection rules
Overview
A connector symbolizes a channel bus, which means means that one connector line represents one or more data channels between two operators.The connector may indicate problems or special behavior by changing its color or line thickness.
Details
If a connector contains more than one channel (the line is thicker), mathematical operations that are connected, perform their operation on all channels at once. The reason for that is, that electro physiological measurements are often multi-channel recordings, where many channels require the same, synchronized operations.It is possible to split a channel bus connection into one or more channel selections, using the Channel Terminal ("Channel Terminal"), the Channel Splitter ("Channel Splitter") or Channel Name Splitter ("Channel Name Splitter"). Also, it is possible to merge different channel buses into one new bus connection, using the Channel Merger ("Channel Merger").
If a channel bus does not contain any channels, then the connector will be thick and have a red color.
If more than one data sources are available in one measurement configuration, then connections that stem from the different sources will have different colors. It is then more easy to see if an operation is allowed to be performed on two connections (see also synchronizing multiple data sources: "Synchronizer").
In the figure below the different connector appearances are shown. Note that different data sources have different colors. The constant data source is black.
Connection rules
1. An input can only connect to one output.2. An output can connect to one or more inputs.
3. Except for special cases, one operator cannot connect to two or more different data sources (indicated by different connector colors).
4. An operator can connect to a data source and one or more different constant data sources (a constant has no sample frequency). A connection from a constant data source is always black.
5. An input that expects one specific type of data cannot connect to an output of another type of data. Some inputs accept all data type connections.
6. A connector always flows from left to right, or from bottom to top.
7. A connection may be invisible and link operators on different pages, by using Connection Labels ("Connection Label").
Connection problems
If a connection fails, then Polybench reports this. The following failure reports may be given:Already connected
An input can only accept one connection. This error indicates that an input is already connected, so that no new connection is accepted.
Unequal data sources
The connection is refused, because the operator already has a connection to another data source (via another input). The data sources have not been synchronized; they should both pass the same Synchronizer operator ("Synchronizer") before this connection can be made.
Operator refuses connection
The operator the connection is going to (sink operator) refuses the connection, because of unspecified reasons. Refer to the documentation of that operator to find out more, or check if the operator has issued a warning (written below its symbol).
Incompatible data processors
Connection is refused, because the connected operators do a different kind of data processing.
For example, one operator is doing streaming data analysis, while the other is doing only static data processing.
Incompatible sample types
Connection is refused, because the operator ports that are to be connected both expect different sample types. For example, an input for floating point data samples cannot be connected to a port that puts out color samples.