Modules

From Armagetron

Modules, Scripts, whatever you call them. Stuff you can load and unload at will.

Overview

Two main classes:

tModule

Each module/script/flying piece of spaghetti has one. Main items include path to what's being loaded, canonical name and loader object(see tModuleLoader). They are mapped to their name in st_tModules

tModuleLoader

You have one sub-class and it's single instance for each "type" of module. Each type of module is loaded in a different manner. Libraries use dlopen and it's MS variant and python uses a python interpreter. They are mapped to their nickname in st_tModuleLoaders.

Included modules from <data-dir>/scripts/<loader>/ are cataloged in st_Modules at application's start. Might change to catalog known/previousely-known modules from resource.