3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/resource/ResourceInformation.h"
7#include "mc/deps/scripting/reflection/Privilege.h"
8#include "mc/scripting/PluginExecutionGroup.h"
9#include "mc/scripting/modules/FilterResult.h"
20namespace Scripting {
class IRuntime; }
27namespace mce {
class UUID; }
30class ScriptPluginManager {
38 struct PackNameAndWeakScope {
48 PackNameAndWeakScope& operator=(PackNameAndWeakScope
const&);
49 PackNameAndWeakScope(PackNameAndWeakScope
const&);
50 PackNameAndWeakScope();
76 ScriptPluginManager& operator=(ScriptPluginManager
const&);
77 ScriptPluginManager(ScriptPluginManager
const&);
78 ScriptPluginManager();
98 MCNAPI ::ScriptPluginManagerResult createContextAll();
104 ::ResourceInformation::ResourceType moduleType,
106 ::std::vector<::std::function<::ScriptModuleFilters::FilterResult(
111 )>>
const& moduleFilters,
112 ::std::vector<::mce::UUID> excludeModuleIDs,
113 ::std::function<::PluginExecutionGroup(::std::vector<::Scripting::ModuleDescriptor>
const&)>&&
114 pluginExecutionGroupSelector
127 MCNAPI ::std::vector<::ScriptPluginManager::PackNameAndWeakScope>
getPluginScopes()
const;
129 MCNAPI ::std::vector<::std::unique_ptr<::ScriptPlugin>>&
getPlugins();
134 MCNAPI ::ScriptPluginManagerResult runAll();
137 MCNAPI ::ScriptPluginManagerResult
runGroup(::PluginExecutionGroup group);
Definition BaseGameVersion.h:13
Definition IScriptPluginSourceEnumerator.h:10
Definition PackCapability.h:5
Definition PackManifest.h:38
Definition ScriptPluginManagerResult.h:12
MCAPI void forEachPlugin(::std::function< void(::ScriptPlugin &)> func)
MCAPI::ScriptPluginManagerResult createContextsForGroup(::PluginExecutionGroup group)
MCAPI::ScriptPlugin * getPluginByContextId(::Scripting::ContextId const &contextId)
MCAPI void _createPluginContext(::ScriptPlugin &plugin, ::ScriptPluginResult &pluginResult)
MCAPI ScriptPluginManager(::BaseGameVersion const &baseGameVersion, ::Scripting::ScriptEngine &scriptEngine)
MCAPI void _runPlugin(::ScriptPlugin &plugin, ::ScriptPluginResult &pluginResult, ::Scripting::Privilege privilege)
MCAPI ::std::vector<::std::unique_ptr<::ScriptPlugin > > & getPlugins()
MCAPI::ScriptPluginManagerResult discoverPlugins(::ResourceInformation::ResourceType moduleType, ::IScriptPluginSourceEnumerator &pluginEnumerator, ::std::vector<::std::function<::ScriptModuleFilters::FilterResult(::PackManifest const &, ::Scripting::ModuleDescriptor const &, ::Scripting::ModuleDescriptor const &, ::ScriptPluginResult &)> > const &moduleFilters, ::std::vector<::mce::UUID > excludeModuleIDs, ::std::function<::PluginExecutionGroup(::std::vector<::Scripting::ModuleDescriptor > const &)> &&pluginExecutionGroupSelector)
MCAPI::ScriptPlugin * getPluginByModuleUuid(::mce::UUID const &moduleUUID)
MCAPI ::std::vector<::ScriptPluginManager::PackNameAndWeakScope > getPluginScopes() const
MCAPI::Scripting::RuntimeStats collectRuntimeStats() const
MCAPI void * $ctor(::BaseGameVersion const &baseGameVersion, ::Scripting::ScriptEngine &scriptEngine)
MCAPI void setCurrentRuntimeConditions(::Scripting::RuntimeConditions const ¤tRuntimeConditions)
MCAPI ~ScriptPluginManager()
static MCAPI ::PackCapability getPackCapability()
MCAPI void _addContextResultsToPluginResults(::Scripting::ScriptContextResult const &contextResult, ::ScriptPluginResult &pluginResult)
MCAPI ::std::vector<::Scripting::ModuleDescriptor > getPluginModuleDescriptors() const
MCAPI void forEachRuntime(::std::function< void(::Scripting::IRuntime &)> func)
MCAPI::ScriptPluginManagerResult runGroup(::PluginExecutionGroup group)
Definition ScriptPluginResult.h:11
Definition ScriptPlugin.h:27
Definition RuntimeConditions.h:12
Definition ScriptEngine.h:22
Definition ScriptPluginManager.h:38
MCAPI ~PackNameAndWeakScope()
Definition ModuleDescriptor.h:7
Definition RuntimeStats.h:7
Definition ScriptContextResult.h:7