Interface provides access to the NetLogo controlling API's report and command methods found in methods independent of App.app and headless.HeadlessWorkspace.
Some simple notes on loading and unloading extensions: - The load method is called when an extension appears in the extensions block when it wasn't there in the last compilation - The unload method is called when an extension is removed from the extensions block
Some simple notes on loading and unloading extensions: - The load method is called when an extension appears in the extensions block when it wasn't there in the last compilation - The unload method is called when an extension is removed from the extensions block
ExtensionManager lifecycle call chart. In [square brackets] are methods called on the extension manager. In {curly braces} are the methods called on the class manager of the extension. Conditions are specified in (parens)
[startFullCompilation] // called by compiler | | (no exts) (ext foo) | | | v | [importExtension(foo)] // called by compiler | | | | (foo loaded) (foo not loaded) | | | | v v | {unload} {runOnce} | | | | v v | +-----{load} | | | // return control to compiler |(foo:bar not used) (foo:bar used) | | | | | v | | [replaceIdentifer(foo:bar)] // foo added to live set | | | | | | v v v [finishFullCompilation] | | | (no ext) (foo live) (foo not live) | | | --- --- v {unload} | ---
Interface provides access to the NetLogo controlling API's report and command methods found in methods independent of App.app and headless.HeadlessWorkspace. This is useful for making java software that can run NetLogo in both GUI and Headless mode.