]> git.localhorst.tv Git - space.git/blob - src/world/Universe.h
controlled entity
[space.git] / src / world / Universe.h
1 #ifndef SPACE_UNIVERSE_H_
2 #define SPACE_UNIVERSE_H_
3
4 #include "../entity/Entity.h"
5 #include "../math/Vector.h"
6
7 #include <list>
8
9
10 namespace space {
11
12 class Sector;
13
14 class Universe {
15
16 public:
17         Universe(Vector<int> size, Vector<int> secSize, Vector<int> areaSize, int numres);
18         ~Universe();
19
20         Universe(const Universe &) = delete;
21         Universe &operator =(const Universe &) = delete;
22
23 public:
24         const Vector<int> size;
25         const Vector<int> secSize;
26         const Vector<int> areaSize;
27
28 public:
29         Entity *AddEntity(const Entity &);
30         const std::list<Entity> &Entities() const { return entities; }
31
32 public:
33         void Update(float deltaT);
34
35 private:
36
37         int numres;
38         int total;
39
40         Sector *sec_begin;
41         Sector *sec_end;
42
43         std::list<Entity> entities;
44
45 };
46
47 }
48
49 #endif