]> git.localhorst.tv Git - blank.git/blob - src/model/Skeletons.hpp
split graphics stuff from AI spawner
[blank.git] / src / model / Skeletons.hpp
1 #ifndef BLANK_MODEL_SKELETONS_HPP_
2 #define BLANK_MODEL_SKELETONS_HPP_
3
4 #include <memory>
5 #include <vector>
6
7
8 namespace blank {
9
10 class CompositeModel;
11 class EntityModel;
12
13 class Skeletons {
14
15 public:
16         Skeletons();
17         ~Skeletons();
18
19         void LoadHeadless();
20         void Load();
21
22         std::size_t Size() const noexcept { return skeletons.size(); }
23
24         CompositeModel &operator[](std::size_t i) noexcept { return *skeletons[i]; }
25         const CompositeModel &operator[](std::size_t i) const noexcept { return *skeletons[i]; }
26
27 private:
28         std::vector<std::unique_ptr<CompositeModel>> skeletons;
29         std::vector<EntityModel> models;
30
31 };
32
33 }
34
35 #endif