17 virtual void Bind(
void) = 0;
35 template <
typename TResource> TResource &
RegisterResource(TResource &&resource);
Core & GetCore()
Get a reference to the core. This can be used to register systems and resources in the Bind method.
Definition APlugin.cpp:6
decltype(auto) RegisterSystems(Systems... systems)
Register systems to a scheduler.
Definition APlugin.ipp:4
APlugin(Core &core)
Constructor for APlugin. It takes a reference to the Core, which is used to register systems and reso...
Definition APlugin.cpp:4
void RequirePlugin()
Add a plugin to the core if it is not already added.
Definition APlugin.ipp:21
TScheduler & RegisterScheduler(Args &&...args)
Register a scheduler in the core.
Definition APlugin.ipp:16
Core & _core
Reference to the core, which is used to register systems and resources in the Bind method.
Definition APlugin.hpp:65
void RequirePlugins()
Add a plugin to the core.
Definition APlugin.ipp:14
virtual void Bind(void)=0
Pure virtual method that must be implemented by derived plugin classes. This method is called when th...
TResource & RegisterResource(TResource &&resource)
Register a resource in the core.
Definition APlugin.ipp:9
The core is the place where all the data of the engine is stored. It contains the registry (entities)...
Definition Core.hpp:33
Interface for plugins that can be added to the engine.
Definition IPlugin.hpp:6