![]() | Data Portal Sender | Sends data without a direct binding to a Data Portal Receiver node within Runtime |
![]() | Data Portal Receiver | Receives data from a Data Portal Sender node |
The Data Portal Nodes exchange data unidirectionally between each other without the typical Ventuz binding. It is possible to send data from any place to another within a single Runtime. Next to all standard data types like float, strings and arrays, the Data Portals can send textures, JSON objects and events. The connection between the Sender node and the Receiver is 1 to n. So multiple Receiver nodes can access the same Sender. Internally, the Sender Data Portal writes to the memory and is available to any Receiver Data Portal(s) to read the data. Receiver nodes can also navigate to its Sender node via the button on the bottom of the properties window.
It is not possible to write with multiple Sender nodes to the same Receiver address.
The Scope of the nodes acts as part of the address. Both the Sender and Receiver must to use the same Scope to transmit data.
The Output Data properties of the Receiver are updated when the Input Data channels of the Sender are added or deleted. The Outputs are always the same as the Inputs in terms of type and name. Be aware, deleting the Input channel will also un-bind any and all bindings on any and all Data Portal Receivers with its address. If the node is not connected to a Sender, the output properties are not updated. Via the MissingSenderBehaviour property on the Receiver node you can define what happens with the outputs if the specified sender is missing:
KeepLastValues | The Receiver node keeps the last output values and does not change anything. |
ResetOnlyOnLoad | The Receiver node only resets its output to the default values if the Sender is missing when the scene was loaded. Once the receiver is connected and then again loses its sender the outputs do not reset anymore. |
ResetAlways | The outputs are reset every time the sender changes on the receiver node and cannot be found. |
Changing the Receiver to a non-existing node, will not delete the output properties. When changing a Receiver to another existing Sender, the outputs of the Receiver, and bindings, will be affected depending on the value of the AutoCleanUp property. You can manually perform a cleanup by pressing the CleanUp button at the bottom of the PropertyEditor. On the Receiver node you additionally have the Go to Sender button to navigate to the selected Sender node.