X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmodel%2FSkeletons.hpp;h=131bf0cfd1218258b56eecbe6eb64a53301e034a;hb=957b1df87d9a692c517a269221da81227100240e;hp=c91abe1c3ef015fa3817b00e717533cab982de9c;hpb=43820582217f7e4b707d98f2e69d969eb77fc7c3;p=blank.git diff --git a/src/model/Skeletons.hpp b/src/model/Skeletons.hpp index c91abe1..131bf0c 100644 --- a/src/model/Skeletons.hpp +++ b/src/model/Skeletons.hpp @@ -1,6 +1,7 @@ #ifndef BLANK_MODEL_SKELETONS_HPP_ #define BLANK_MODEL_SKELETONS_HPP_ +#include #include #include @@ -12,6 +13,11 @@ class EntityModel; class Skeletons { +public: + using size_type = std::size_t; + using reference = CompositeModel &; + using const_reference = const CompositeModel &; + public: Skeletons(); ~Skeletons(); @@ -19,10 +25,13 @@ public: void LoadHeadless(); void Load(); - std::size_t Size() const noexcept { return skeletons.size(); } + size_type size() const noexcept { return skeletons.size(); } + + reference operator[](size_type i) noexcept { return *skeletons[i]; } + const_reference operator[](size_type i) const noexcept { return *skeletons[i]; } - CompositeModel &operator[](std::size_t i) noexcept { return *skeletons[i]; } - const CompositeModel &operator[](std::size_t i) const noexcept { return *skeletons[i]; } + CompositeModel *ByID(std::uint16_t) noexcept; + const CompositeModel *ByID(std::uint16_t) const noexcept; private: std::vector> skeletons;