3#include <Engine/RaEngine.hpp>
47 CORE_UNUSED( entity );
74 registerComponent( entity, component );
84 virtual void registerComponent(
const Entity* entity,
Component* component );
92 virtual void unregisterComponent(
const Entity* entity,
Component* component );
99 virtual void unregisterAllComponents(
const Entity* entity );
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.
std::vector< std::pair< const Entity *, Component * > > m_components
List of active components.
virtual void handleAssetLoading(Entity *entity, const Core::Asset::FileData *data)
virtual void generateTasks(Core::TaskQueue *taskQueue, const Engine::FrameInfo &frameInfo)=0
Pure virtual method to be overridden by any system. Must register in taskQueue the operations that mu...
void addComponent(Entity *entity, Component *component)
hepler function to manage enum as underlying types in VariableSet
Structure passed to each system before they fill the task queue.