- \item {\bf\emph{BoxExecute}} : Any signal received by this input executes the box
- \item {\bf\emph{BoxProcessMode}}: Sets the processing mode of the box :
- \begin{itemize}
- \item {\bf\emph{Pipeline}}:% bbBackwardUpdate() calls Process() only if Status == MODIFIED \\
- The box executes itself only when an input was changed (normal pipeline processing).
- \item {\bf\emph{Reactive}}: %bbSetModifiedStatus() calls bbUpdate() \\
- Re-processes immediately when \emph{any input} changes.\\
- To be more selective, better use
- '\texttt{connect A.BoxChange B.BoxExecute}'.
- \item {\bf\emph{Always}} :% bbUpdate() always calls Process. \\
- Usefull for 'sources', that must be processed, even when no input changed (e.g.: FileSelector, ColorSelector)\\
- This one is not end user intended (for Package developer only)
- \end{itemize}
-\end{itemize}
-\item And one default output :
-\begin{itemize}
- \item {\bf\emph{BoxChange}} : Signals any modification of the box. This output may be connected if necessary to the \emph{BoxExecute}
- input of an other box : each time the boxes changes (e.g. a Slider is moved) the box it is connected to will be forced to update.
+ \item Inputs:
+ \begin{itemize}
+ \item {\bf\emph{BoxExecute}}: any signal received by this input executes the box.
+ \item {\bf\emph{BoxProcessMode}}: sets the processing mode of the box:
+ \begin{itemize}
+ \item {\bf\emph{Pipeline}}: % bbBackwardUpdate() calls Process() only if Status == MODIFIED \\
+ This is the normal pipeline processing mode, i.e. when an execution of \emph{my\_box} is requested (either by the command '\texttt{exec my\_box}' or because another box dependent on \emph{my\_box}'es output is to be executed), \emph{my\_box} actually executes itself only if at least one of its inputs was changed.
+ \item {\bf\emph{Reactive}}: %bbSetModifiedStatus() calls bbUpdate() \\
+ \emph{my\_box} re-executes itself immediately when \emph{any input} changes.
+ To be more selective, i.e. if you want to re-execute immediately only when one specific input changes, dependent on the change of a particular \emph{other\_box}, better use
+ '\texttt{connect other\_box.BoxChange my\_box.BoxExecute}'.
+ \item {\bf\emph{Always}}: % bbUpdate() always calls Process. \\
+ Useful for 'sources', that must be processed in the pipeline mode despite no input change (e.g.: FileSelector, ColorSelector).
+ This one is not end user intended (for Package developers only).
+ \end{itemize}
+ \end{itemize}
+ \item Output:
+ \begin{itemize}
+ \item {\bf\emph{BoxChange}}: signals any modification of the box. This output may be connected if necessary to the \texttt{BoxExecute}
+ input of another box: each time the box changes (e.g. a Slider is moved) the box it is connected to will be forced to update.
+ \end{itemize}