4 #include <Covellite/Api/Component.hpp>
30 using Render_t = ::std::function<void(
void)>;
31 using Renders_t = ::std::vector<Render_t>;
32 using Object_t = ::std::vector<ComponentPtr_t>;
33 using Creator_t = ::std::function<Render_t(
const ComponentPtr_t &)>;
34 using Creators_t = ::std::map<Type_t, Creator_t>;
37 Render_t
Obtain(
const ComponentPtr_t &);
38 void Remove(
const ComponentPtr_t &);
41 Creators_t m_Creators;
42 ::std::map<Id_t, ::std::pair<size_t, Render_t>> m_AllExistingRenders;
44 ::std::size_t m_MaxRendersCount = 10;
47 explicit Renders(
const Creators_t &);