openDAQ
Open data acquisition platform
IModuleManager Struct Referenceabstract

Loads all available modules in a implementation-defined manner. User can also side-load custom modules via addModule call. More...

+ Inheritance diagram for IModuleManager:
+ Collaboration diagram for IModuleManager:

Detailed Description

Loads all available modules in a implementation-defined manner. User can also side-load custom modules via addModule call.

Public Member Functions

virtual ErrCode INTERFACE_FUNC getModules (IList **modules)=0
 Retrieves all modules known to the manager. Whether they were found or side-loaded. More...
 
virtual ErrCode INTERFACE_FUNC addModule (IModule *module)=0
 Side-load a custom module in run-time from memory that was not found by default. More...
 
virtual ErrCode INTERFACE_FUNC loadModules (IContext *context)=0
 Loads all modules from the directory path specified during manager construction. The Context is passed to all loaded modules for internal use. More...
 
- Public Member Functions inherited from IBaseObject
virtual ErrCode INTERFACE_FUNC borrowInterface (const IntfID &intfID, void **obj) const =0
 Returns another interface which is supported by the object without incrementing the reference count. More...
 
virtual ErrCode INTERFACE_FUNC dispose ()=0
 Disposes all references held by the object. More...
 
virtual ErrCode INTERFACE_FUNC getHashCode (SizeT *hashCode)=0
 Returns hash code of the object. More...
 
virtual ErrCode INTERFACE_FUNC equals (IBaseObject *other, Bool *equal) const =0
 Compares object to another object for equality. More...
 
virtual ErrCode INTERFACE_FUNC toString (CharPtr *str)=0
 Returns a string representation of the object. More...
 
- Public Member Functions inherited from IUnknown
virtual ErrCode INTERFACE_FUNC queryInterface (const IntfID &intfID, void **obj)=0
 Returns another interface which is supported by the object and increments the reference count. More...
 
virtual int INTERFACE_FUNC addRef ()=0
 Increments the reference count for an interface on an object. More...
 
virtual int INTERFACE_FUNC releaseRef ()=0
 Decrements the reference count for an interface on an object. More...
 

Member Function Documentation

◆ addModule()

virtual ErrCode INTERFACE_FUNC addModule ( IModule module)
pure virtual

Side-load a custom module in run-time from memory that was not found by default.

Parameters
moduleThe module to add.
Return values
OPENDAQ_ERR_DUPLICATEITEMWhen an identical module was already added.

◆ getModules()

virtual ErrCode INTERFACE_FUNC getModules ( IList **  modules)
pure virtual

Retrieves all modules known to the manager. Whether they were found or side-loaded.

Parameters
[out]modulesA list of known modules.

◆ loadModules()

virtual ErrCode INTERFACE_FUNC loadModules ( IContext context)
pure virtual

Loads all modules from the directory path specified during manager construction. The Context is passed to all loaded modules for internal use.

Parameters
contextThe Context containing the Logger, Scheduler, Property Object Class Manager and Module Manager