Modules
Modules are both class and library. A library loaded from autoload.ini will automatically instantiate the module main class.
The module generator - see the SDK section - creates a class that will be understood by the broker: load a module, see module function API...
ALModule
| Function | Description | 
|---|---|
| virtual void init(void); | This virtual reset function is automatically called when loading a module. | 
| ALPtr<AL::ALProxy> getProxy(const std::string& pModuleName); | Get access to another module. | 
| inline ALPtr<ALBroker> getParentBroker () | Get parent broker pointer/smart pointer. See broker | 
| virtual void dataChanged (const std::string& pDataName, const AL::ALValue& pValue, const std::string& pMessage)=0; | Default callback name when a variable from ALMemory changes | 
| bool ping( void ); | Ping a module | 
| virtual void exit( ); | Exit a module. If you redefine it, always call ALModule::exit() or the module won't be destroyed properly. | 
| std::string getName() | Get module name | 
| inline ALPtr<ALModuleInfo> getModuleInfo (){ return fModuleInfo;}; | Get module information | 
| virtual std::string httpGet () const{ return "";}; | Module information displayed on the web page. | 
ALModule API creation
| Function | Description | 
|---|---|
| #define BIND_METHOD( x ) | Add method x in module API. API (bound function) can be called locally or remotely | 
| void functionName ( const std::string& pName, const std::string& pClass, const std::string& pFunctionDescription ); | Used to define the bound method name. | 
| void addParam (const std::string& pName, const std::string& pDesc); | Help to describe a method's parameter. | 
| virtual AL::ALValue getMethodHelp ( const std::string& pMethodName ); | Get methodName description | 
| AL::ALValue moduleHelp(); | Get Module description | 

