libes
0.5.3
an Entity System library for C++
|
A system. More...
#include <es/System.h>
Public Member Functions | |
System (int priority, std::set< ComponentType > needed, Manager *manager) | |
A system constructor. More... | |
virtual | ~System () |
int | getPriority () const |
Get the priority of the system. More... | |
std::set< ComponentType > | getNeededComponents () const |
Get the needed component types. More... | |
Manager * | getManager () |
Get the manager. More... | |
virtual bool | addEntity (Entity e)=0 |
Add an entity in the system. More... | |
virtual bool | removeEntity (Entity e)=0 |
Removes an entity from the system. More... | |
virtual void | init () |
Initialize the system. More... | |
virtual void | preUpdate (float delta) |
Do something before the individual update of each entity. More... | |
virtual void | postUpdate (float delta) |
Do something after the individual update of each entity. More... | |
virtual void | update (float delta) |
Update all the entities in the current time step. More... | |
A system.
A system handles a set of entities that share the same components.
|
inline |
A system constructor.
priority | the priority of the system (small priority will be executed first) |
needed | the set of needed component types that an entity must have to be handled properly by this system |
manager | the manager (that is saved in the system so that the system can easily access the manager) |
|
virtual |
|
pure virtual |
Add an entity in the system.
The entity must have the needed components (this is not verified by the library). The order in which the entity are added is not saved.
e | the entity |
Implemented in es::GlobalSystem, es::CustomSystem, and es::SingleSystem.
|
inline |
Get the manager.
|
inline |
Get the needed component types.
|
inline |
Get the priority of the system.
|
virtual |
Initialize the system.
By default, does nothing
|
virtual |
Do something after the individual update of each entity.
This function is called at every step. By default, do nothing.
|
virtual |
Do something before the individual update of each entity.
This function is called at every step. By default, do nothing.
|
pure virtual |
Removes an entity from the system.
e | the entity |
Implemented in es::GlobalSystem, es::CustomSystem, and es::SingleSystem.
|
virtual |
Update all the entities in the current time step.
delta | the time (in second) since the last update |
Reimplemented in es::LocalSystem, and es::GlobalSystem.