CSCI 3081 - Drone Delivery System
entity_system.h
1 #ifndef ENTITY_SYSTEM_H_
2 #define ENTITY_SYSTEM_H_
3 
4 #include "EntityProject/entity.h"
5 #include <vector>
6 
7 namespace entity_project {
8 
11 public:
13  virtual ~IEntitySystem() {}
14 
16 
21  virtual void RunScript(const picojson::array& script, IEntitySystem* system) const = 0;
23  virtual const std::vector<IEntity*>& GetEntities() const = 0;
25  virtual void Update(float dt) = 0;
26 };
27 
28 
29 }
30 
31 #endif // ENTITY_SYSTEM_H_
virtual void Update(float dt)=0
Updates the entity system by a time of dt.
virtual void RunScript(const picojson::array &script, IEntitySystem *system) const =0
Runs a JSON script on an entity system as a set of commands.
virtual ~IEntitySystem()
Destructor.
Definition: entity_system.h:13
An abstract class that represents an entity system that contains entities and updates over time...
Definition: entity_system.h:10
Definition: entity.h:7
virtual const std::vector< IEntity * > & GetEntities() const =0
Returns the list of entities in the system.