Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
DefaultPluginManager.hpp
1
#pragma once
2
3
#include <map>
4
#include <string>
5
6
#include <Common/Utilities/ModuleLoading.hpp>
7
8
#include "IPluginManager.hpp"
9
#include "Interface.hpp"
10
11
namespace
Grindstone::Plugins {
12
class
Interface
;
13
14
class
DefaultPluginManager
:
public
Grindstone::Plugins::IPluginManager
{
15
public
:
16
virtual
~DefaultPluginManager
();
17
18
virtual
bool
PreprocessPlugins()
override
;
19
virtual
void
LoadPluginsByStage(std::string_view stageName)
override
;
20
virtual
void
UnloadPluginsByStage(std::string_view stageName)
override
;
21
virtual
std::filesystem::path GetLibraryPath(std::string_view pluginName, std::string_view libraryName)
override
;
22
23
protected
:
24
bool
LoadModule(
const
std::string& path);
25
void
UnloadModule(
const
std::string& path);
26
27
std::map<std::string, Utilities::Modules::Handle> pluginModules;
28
};
29
}
Grindstone::Plugins::DefaultPluginManager
Definition
DefaultPluginManager.hpp:14
Grindstone::Plugins::IPluginManager
Definition
IPluginManager.hpp:9
Grindstone::Plugins::Interface
Definition
Interface.hpp:48
sources
code
EngineCore
PluginSystem
DefaultPluginManager.hpp
Generated by
1.17.0