Base class for extensions, typically added as external DLL's that can modify or enhance the behavior of the software.
More...
|
|
String | activation_id |
| | Identifier used for license activation checks.
|
|
bool | allow_deferred_loading = false |
| | Whether this module can be loaded asynchronously as a WASM side module.
|
|
bool | allow_user_toggle_active = false |
| | Whether the user is allowed to enable or disable this module.
|
|
TranslatedString | description |
| | User-facing description of the module.
|
|
TranslatedString | display_name |
| | User-facing display name of the module.
|
|
String | icon |
| | Name or path of the icon associated with this module.
|
|
bool | is_active = true |
| | Whether the module is currently active.
|
|
File | library |
| | Path to the dynamic library file for this module.
|
|
String | license_agreement |
| | License agreement text for the module.
|
|
Dictionary< String, void * > | loaded_functions |
| | Cached map of hook function names to their resolved addresses.
|
|
String | name |
| | Internal identifier for the module.
|
|
ModuleType | type = ModuleType::e_undefined |
| | The role category of this module.
|
|
String | version |
| | Version string of the module.
|
|
String | website |
| | URL to the module's website or documentation.
|
|
|
void * | module_ptr = nullptr |
| | Opaque pointer to the loaded dynamic library handle.
|
Base class for extensions, typically added as external DLL's that can modify or enhance the behavior of the software.
Definition at line 72 of file ModuleManager.h.
◆ ModuleType
Categorizes the role a module plays within the application.
| Enumerator |
|---|
| e_application | Module serves as an application entry-point.
|
| e_utility | Module provides utility or tool functionality.
|
| e_library_dependency | Module wraps a third-party library dependency.
|
| e_undefined | Module type has not been specified.
|
Definition at line 77 of file ModuleManager.h.
◆ Module() [1/2]
Constructs a Module with the given name.
- Parameters
-
| [in] | name | The internal identifier for the module. |
References name.
◆ Module() [2/2]
Constructs a Module with the given name and library file.
- Parameters
-
| [in] | name | The internal identifier for the module. |
| [in] | library | The dynamic library file to load for this module. |
References library, and name.
◆ callModuleFunction() [1/2]
| void Module::callModuleFunction |
( |
const StringView & | function | ) |
const |
Invokes a named hook function within this module.
- Parameters
-
| [in] | function | The name of the hook function to call. |
◆ callModuleFunction() [2/2]
Invokes a named UI hook function within this module, passing the model and window managers.
- Parameters
-
| [in] | function | The name of the hook function to call. |
| [in] | model_manager | The application model manager. |
| [in] | window_manager | The application window manager. |
◆ defineModuleResources()
Asks the module to declare its required resources via the given resource manager.
- Parameters
-
| [in] | resources | The resource manager to populate with module dependencies. |
◆ isValid()
| bool Module::isValid |
( |
| ) |
const |
Checks whether this module has a valid loaded library.
- Returns
- True if the module is valid and usable, false otherwise.
The documentation for this struct was generated from the following file: