|
Botcraft 1.21.10
|
#include "protocolCraft/Utilities/Plugins/PluginLoader.hpp"#include "protocolCraft/Utilities/Plugins/PluginObject.hpp"#include <filesystem>#include <functional>#include <unordered_map>#include <string_view>#include <dlfcn.h>Go to the source code of this file.
Classes | |
| class | ProtocolCraft::Internal::PluginLoader |
Namespaces | |
| namespace | ProtocolCraft |
| namespace | ProtocolCraft::Internal |
Macros | |
| #define | GetKnownProcAddress(plugins_map, plugin_name, func) GetKnownProcAddressImpl(plugins_map[plugin_name], plugin_name.c_str(), #func, func); |
Functions | |
| template<typename F > | |
| F | ProtocolCraft::Internal::GetKnownProcAddressImpl (void *hmod, const char *module_name, const char *name, F) |
| std::shared_ptr< PluginObject > | ProtocolCraft::CreateObjectFromPlugin (const char *identifier) |
| Create an abstract PluginObject using a runtime loaded plugin (dll/so) | |
Variables | |
| constexpr std::string_view | ProtocolCraft::Internal::plugins_folder = "protocolcraft_plugins" |
| Folder in which the protocolCraft plugins will be searched for. | |
| PluginObject *(* | ProtocolCraft::Internal::GetPluginObject )(const char *identifier)=0 |
| void(* | ProtocolCraft::Internal::DestroyPluginObject )(PluginObject *object)=0 |
| #define GetKnownProcAddress | ( | plugins_map, | |
| plugin_name, | |||
| func | |||
| ) | GetKnownProcAddressImpl(plugins_map[plugin_name], plugin_name.c_str(), #func, func); |
Definition at line 47 of file PluginLoader.cpp.