-------------------------------------------------------------------------------
modules.nas - Nasal module helper for Add-ons and re-loadable modules
author: jsb
created: 12/2019
-------------------------------------------------------------------------------
modules.nas allowes to load and unload Nasal modules at runtime (e.g. without
restarting Flightgear as a whole). It implements resource tracking for
setlistener and maketimer to make unloading easier.
-------------------------------------------------------------------------------
Example - generic module load:
if (modules.isAvailable("foo_bar")) {
modules.load("foo_bar");
}
Example - create an aircraft nasal system as module
(e.g. for rapid reload while development)
var my_foo_sys = modules.Module.new("my_aircraft_foo");
my_foo_sys.setDebug(1);
my_foo_sys.setFilePath(getprop("/sim/aircraft-dir")~"/Nasal");
my_foo_sys.setMainFile("foo.nas");
my_foo_sys.load();
-------------------------------------------------------------------------------