Functional Connections
When creating a new functional connection, you define:
- A flow
- The function emitting that flow
- The function consuming it.
You also create a link in the 2D view
between these functions to visualize the exchange.
A functional connection is an explicit representation of the flow exchange
between two functions. This exchange is defined as soon as the flow associations are
defined on the functions (even if the functional connection is not created).
Using Create Functional Connection , you can create a new functional connection. The connection can be made between functions that have the
flow emission/consumption specified (using the
Associate Existing Flow option) or with new flow (
Associate New Flow option).
With the Create Functional Connection , you can create a functional connection:
- Between the functions from the same level (sibling case)
- Where the
connection links a flow emission to a consumption of the same
flow.
- Between a function and one of its subfunctions (parent-child case)
- Where the connection links two emissions or two consumptions of the
same flow.
- Between two functions from different branches or levels
In such cases, the command creates as many connections
as necessary.
You can connect automatically flow associations (functional ports) that are still not connected, provided that
they have identical flows and compatible directions. See Autoconnecting Interfaces or Ports
For a manual connection, see Creating Functional Connection.
You can also connect automatically subfunctions together and generate the
interface of the parent function (flows emitted and consumed by the
function).
See Creating Connection with Functional Connection Wizard.
Functional Connections with Wizard
The Functional Connection Wizard
works on a function selected before or after executing the command. It
works in two ways:
- Connect existing flow association together:
Connection between subfunctions (or MUX/DEMUX) or between the function and the subfunctions (or MUX/DEMUX) manipulating the same flow (with compatible direction) are created automatically - if not already existing.
- Update Parent function signature based on
unconnected children flow associations. For each subfunction with unconnected flow
associations:
-
A flow association (same direction, linked to the
same flow) is automatically created on the parent function – if not already existing.
-
A connection is automatically created between the
subfunction (or MUX/DEMUX) and the parent function flow
associations.
- If a flow is associated to the function and subfunctions
- A
connection is created between the subfunctions and the function
flow associations:
- If several subfunctions are consuming a flow
emitted by another subfunction
- They are all automatically
connected by the wizard:
- If several subfunctions are consuming a flow not emitted by
another subfunction
- They are all automatically connected by the
wizard to a single flow consumption at the parent level:
- If all the subfunctions ports are already connected together or
with the function port
- The Functional Connection Wizard
command does not create anything:
- If functions are connected with MUX/DEMUX
- MUX/DEMUX objects are managed like a subfunction. The input and
output ports are connected to the other subfunctions or to the
parent function: