|
Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
|
Abstract interface for plugin loading. More...
#include <plugin_loader.h>


Public Member Functions | |
| virtual | ~plugin_loader ()=default |
| virtual auto | load_plugin (std::string_view path) -> std::unique_ptr< collector_plugin >=0 |
| Load a plugin from a shared library. | |
| virtual auto | unload_plugin (std::string_view plugin_name) -> bool=0 |
| Unload a previously loaded plugin. | |
| virtual auto | get_last_error () const -> plugin_load_error=0 |
| Get the last error that occurred. | |
| virtual auto | get_last_error_message () const -> std::string=0 |
| Get detailed error message for the last error. | |
| virtual auto | is_plugin_loaded (std::string_view plugin_name) const -> bool=0 |
| Check if a plugin is currently loaded. | |
| virtual auto | get_loaded_plugins () const -> std::vector< std::string >=0 |
| Get list of loaded plugin names. | |
Abstract interface for plugin loading.
This interface defines the contract for loading and unloading plugins. Concrete implementations provide platform-specific loading mechanisms.
Definition at line 77 of file plugin_loader.h.
|
virtualdefault |
|
pure virtual |
Get the last error that occurred.
Implemented in kcenon::monitoring::dynamic_plugin_loader.
|
pure virtual |
Get detailed error message for the last error.
Implemented in kcenon::monitoring::dynamic_plugin_loader.
|
pure virtual |
Get list of loaded plugin names.
Implemented in kcenon::monitoring::dynamic_plugin_loader.
|
pure virtual |
Check if a plugin is currently loaded.
| plugin_name | Name of the plugin |
Implemented in kcenon::monitoring::dynamic_plugin_loader.
|
pure virtual |
Load a plugin from a shared library.
| path | Path to the plugin library (.so/.dylib/.dll) |
The loader will:
On failure, check get_last_error() for details.
Implemented in kcenon::monitoring::dynamic_plugin_loader.
|
pure virtual |
Unload a previously loaded plugin.
| plugin_name | Name of the plugin to unload |
This will:
The plugin instance must have been destroyed before calling this.
Implemented in kcenon::monitoring::dynamic_plugin_loader.