19concept PluginType = std::derived_from<T, Plugin> && std::constructible_from<T, Runtime&>;
44 void SubscribeHostEvents();
50 void OnClientDisconnected(
int slot);
51 void OnClientFullyConnected(
int slot);
52 void OnClientSettingsChanged(
int slot);
PluginModule(const PluginModule &)=delete
const char * StatusJson() noexcept
PluginModule & operator=(const PluginModule &)=delete
bool Attach(IPluginContext &host, char *error, size_t errorSize) noexcept
PluginModule(PluginFactory factory)
Everything a plugin owns for one load cycle.
Framework services for one load and unload cycle.
Holds the subscriptions an object makes and releases them together, newest first.
std::unique_ptr< Plugin >(*)(Runtime &) PluginFactory
PluginModule MakePluginModule()
static std::string ReadFile(const std::filesystem::path &path)
Opt-in access to raw engine interfaces and typed gamedata bindings.