Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
PluginMetaData.hpp
1
#pragma once
2
3
#include <filesystem>
4
#include <vector>
5
#include <string>
6
7
namespace
Grindstone::Plugins
{
8
struct
MetaData
{
9
struct
PluginDependency
{
10
std::string pluginName;
11
std::string version;
12
};
13
14
enum class
BinaryBuildType {
15
NoBuild,
16
Cmake,
17
Dotnet,
18
};
19
20
struct
Binary
{
21
std::string name;
22
std::filesystem::path libraryRelativePath;
23
std::string loadStage;
24
BinaryBuildType buildType = BinaryBuildType::NoBuild;
25
std::string buildTarget;
26
std::vector<std::string> dependencies;
27
};
28
29
struct
AssetDirectory
{
30
std::string name;
31
std::filesystem::path assetDirectoryRelativePath;
32
std::string mountPoint;
33
std::string loadStage;
34
std::vector<std::string> dependencies;
35
};
36
37
std::string name;
38
std::string displayName;
39
std::string version;
40
std::string description;
41
std::string author;
42
std::filesystem::path pluginResolvedPath;
43
bool
isRestartRequired =
false
;
44
std::vector<AssetDirectory> assetDirectories;
45
std::vector<PluginDependency> requiresPlugins;
46
std::vector<Binary> binaries;
47
std::filesystem::path cmakePath;
48
};
49
}
Grindstone::Plugins
Definition
EditorPluginInterface.hpp:17
Grindstone::Plugins::MetaData::AssetDirectory
Definition
PluginMetaData.hpp:29
Grindstone::Plugins::MetaData::Binary
Definition
PluginMetaData.hpp:20
Grindstone::Plugins::MetaData::PluginDependency
Definition
PluginMetaData.hpp:9
Grindstone::Plugins::MetaData
Definition
PluginMetaData.hpp:8
sources
code
Editor
PluginSystem
PluginMetaData.hpp
Generated by
1.18.0