virtual ~Component()=default
virtual void onPostStateChange()
virtual void onSetEnabled(bool oldValue, bool newValue)
virtual void initializeComponentData()=0
virtual bool enabled() const
virtual void cloneFrom(const Component *source)
Component(IComponentSystem *system, Entity *entity)
virtual void setEnabled(bool value)
IComponentSystem * system() const
ECS entity — a GraphNode that hosts components defining its behavior.
ComponentTypeID componentTypeID()
std::size_t ComponentTypeID
ComponentTypeID nextComponentTypeID()