diff --git a/chapters/annotations.tex b/chapters/annotations.tex index 4f890afab..30bc0a533 100644 --- a/chapters/annotations.tex +++ b/chapters/annotations.tex @@ -1744,11 +1744,17 @@ \subsection{Connector Sizing}\label{connector-sizing}\annotationindex{connectorS If \lstinline!connectorSizing = true!, a tool may set the variable value in a modifier automatically, if used as dimension size of a vector of connectors. In that case the value modifier should not be edited directly by the user, and a tool may choose to not display that variable in the dialog or display it with disabled input field. +There shall be exactly one vector of connectors using the dimension size \lstinline!n! for each variable \lstinline!n! with \lstinline!connectorSizing = true!. +Other vectors of connectors that need to have the same size may use a different expression with the same value, such as \lstinline!n + 0!, to avoid that multiple vectors become associated with the \lstinline!connectorSizing! automatic updating of \lstinline!n!. +(Note that non-connector vectors may have size \lstinline!n! without becoming associated.) \begin{nonnormative} The \lstinline!connectorSizing! annotation is used in cases where connections to a vector of connectors shall be made and a new connection requires to resize the vector and to connect to the new index (unary connections). The annotation allows a tool to perform these two actions in many cases automatically. This is, e.g., very useful for state machines and for certain components of fluid libraries. + +If a variable \lstinline!n! with \lstinline!connectorSizing = true! has multiple associated vectors of connectors, some of the graphical operations described below will not work reliably. +If there is no associated vector of connectors, the user may choose to address this by removing the \lstinline!connectorSizing! annotation or the entire variable. \end{nonnormative} \begin{nonnormative}