![]() |
Botcraft 1.21.4
|
#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.