Abstract plugin class that add some utility functions to make it easier to register systems and resources.
More...
|
| | APlugin (Core &core) |
| | Constructor for APlugin. It takes a reference to the Core, which is used to register systems and resources in the Bind method.
|
| virtual void | Bind (void)=0 |
| | Pure virtual method that must be implemented by derived plugin classes. This method is called when the plugin is added to the engine, and is where the plugin should register its systems, resources, and any other functionality it provides to the engine.
|
| template<CScheduler TScheduler, typename... Systems> |
| decltype(auto) | RegisterSystems (Systems... systems) |
| | Register systems to a scheduler.
|
| template<typename TResource> |
| TResource & | RegisterResource (TResource &&resource) |
| | Register a resource in the core.
|
| template<CPlugin... TPlugins> |
| void | RequirePlugins () |
| | Add a plugin to the core.
|
| template<CScheduler TScheduler, typename... Args> |
| TScheduler & | RegisterScheduler (Args &&...args) |
| | Register a scheduler in the core.
|
| Core & | GetCore () |
| | Get a reference to the core. This can be used to register systems and resources in the Bind method.
|
| virtual | ~IPlugin ()=default |
| | Virtual destructor for IPlugin.
|
Abstract plugin class that add some utility functions to make it easier to register systems and resources.
| virtual void Engine::APlugin::Bind |
( |
void | | ) |
|
|
pure virtual |
Pure virtual method that must be implemented by derived plugin classes. This method is called when the plugin is added to the engine, and is where the plugin should register its systems, resources, and any other functionality it provides to the engine.
- See also
- Engine::Core
-
Engine::APlugin
Implements Engine::IPlugin.
Implemented in CameraMovement::Plugin, DefaultPipeline::Plugin, Event::Plugin, Graphic::Plugin, Input::Plugin, NativeScripting::Plugin, Physics::Plugin, PluginTestA, PluginTestB, RenderingPipeline::Plugin, Rmlui::Plugin, Scene::Plugin, Sound::Plugin, and Window::Plugin.