3#include <Engine/RaEngine.hpp>
4#include <Engine/Scene/LightStorage.hpp>
5#include <Engine/Scene/System.hpp>
51 virtual size_t count()
const;
60 void handleAssetLoading(
Entity* entity,
const Core::Asset::FileData* data )
override;
65 void registerComponent(
const Entity* entity,
Component* component )
final;
69 void unregisterComponent(
const Entity* entity,
Component* component )
final;
73 void unregisterAllComponents(
const Entity* entity )
final;
This class allows tasks to be registered and then executed in parallel on separate threads.
A component is an element that can be updated by a system. It is also linked to some other components...
An entity is an scene element. It ties together components with a transform.
virtual void addLight(const Scene::Light *li)=0
LightManager()=default
Constructor.
~LightManager() override
Virtual destructor.
virtual const Scene::Light * getLight(size_t li) const =0
Get a pointer to the li-th Light.
hepler function to manage enum as underlying types in VariableSet
Structure passed to each system before they fill the task queue.