4#include <Covellite/Expanse/I3DScene.hpp>
5#include "IProduce3DObject.impl.hpp"
34 using Object_t = ::std::pair<size_t, ObjectId_t>;
38 void Add(
const ObjectId_t,
const C3DObject_t &)
override;
39 void Remove(
const ObjectId_t)
override;
43 void Add(
const ObjectId_t)
override;
49 const C3DObject_t &
Get(
const ObjectId_t)
const;
52 struct CombinationLess
54 inline bool operator()(
const Object_t & _Left,
const Object_t & _Right)
const noexcept
56 return _Left.first < _Right.first;
60 ::std::vector<C3DObject_t> m_Renders;
61 ::std::vector<ObjectId_t> m_RenderQueue;
65 C3DScene(
const C3DScene &) =
delete;
66 C3DScene(C3DScene &&) =
delete;
67 C3DScene & operator= (
const C3DScene &) =
delete;
68 C3DScene & operator= (C3DScene &&) =
delete;
69 ~C3DScene(
void) =
default;
72 FRIEND_TEST(C3DScene_test, Test_Produce3DObjects);
Класс входит в проект Covellite.Expanse Класс-контейнер для объектов, которые должны рендеринтся в ...
Definition 3DScene.impl.hpp:33
void Add(const ObjectId_t) override
Функция добавления идентификатора объекта в очередь рендеринга.
const C3DObject_t & Get(const ObjectId_t) const
Функция получения набора рендеров 3D объекта по его идентификатору.
Definition 3DScene.cpp:112
void Add(const ObjectId_t, const C3DObject_t &) override
Функция добавления 3D объекта в 3D сцену.
void Remove(const ObjectId_t) override
Функция удаления 3D объекта из 3D cцены.
Definition 3DScene.cpp:46
Класс входит в проект Covellite.Expanse Интерфейс класса 3D сцены.
Definition I3DScene.hpp:27
Класс входит в проект Covellite.Expanse Интерфейсный класс создания/удаления 3D объектов.
Definition IProduce3DObject.impl.hpp:27