When data is modified on the distributed shared memory map on one Viz Engine through a script or through a plug-in, the data change gets reflected on the other Viz Engines automatically if they are configured to listen to the same shared memory map key. A use case could be a touch screen scene which modifies data, which is also used for HD-SDI Viz Engines or Viz Engines driving a Video Wall.
This synchronization uses Graphic Hub as a relay. Therefore, it is important that all Viz Engines which are to receive the data are connected to the same Graphic Hub, which use the same user or at least the same group.
Example
sub onInit()
VizCommunication.Map.RegisterChangedCallback(
"game"
)
end sub
sub OnSharedMemoryVariableChanged(map As SharedMemory, mapKey As String)
if
mapKey=
"game"
then
dim val = VizCommunication.map[
"game"
]
println
"new value:"
+val
end
if
end sub
If you now change the value of "game" on any of the connected clients running a scene with the above script, all engines should print the new value into the console window.