SIMION 8.0 Issues/Bugs/Enhancements

Filter issues by query:

IssueI431 [80,batch,defect,resolved]
Lua _G table wasn't shared between batch mode program and workbench
program in non-GUI mode.
The global table, _G, can be useful for communicating information
between a Lua workbench user program and a Lua batch mode
program call that flies the workbench. For example,
-- batch.lua (batch mode program)
simion.command("fly test.iob")
print(_G.result) -- print result of Fly'm
-- file: test.lua (workbench program attached to test.iob)
simion.workbench_program()
function segment.terminate()
_G.result = ion_py_mm -- return Fly'm result
end
Prior to SIMION 8.0.4-TEST11, this would only work if you ran the
batch mode program via the SIMION GUI ("Run Lua Program" button").
If you ran it from the command-line, the data will not get passed.
The reason for this was that SIMION was actually creating two
isolated Lua states for the batch mode and workbench programs
(easily confirming by doing print(_G) in both programs).
As of 8.0.4-TEST11, SIMION only creates a single Lua state, so you
can use the above idiom. In fact, the "geometry_optimize" example
has been updated to use this new style (rather than passing data via
a file).
Resolved in 8.0.4-TEST11.