Covellite++  Version: 2.3.0 Revision: 2580 Platform: x64 Build: 15:23 16.10.2020
Кроссплатформенный фреймворк для разработки приложений на С++
IGameWorld.hpp
1 
2 #pragma once
3 #include "Defines.hpp"
4 #include "IGameObject.hpp"
5 
6 class SoundDevice;
7 
8 namespace basement
9 {
10 
11 namespace model
12 {
13 
14 class CubeCoords;
15 class PointLights;
16 class IDbComponents;
17 
34 {
35 public:
36  virtual GameScenePtr_t CreateGameScene(void) = 0;
37  virtual float GetLandscapeHeight(const CubeCoords &) const = 0;
38  virtual IGameObject::Landscape::Value GetGameObjectType(const CubeCoords &) const = 0;
39  virtual const PointLights & GetPointLights(void) const = 0;
40  virtual SoundDevice & GetSoundDevice(void) = 0;
41  virtual const IDbComponents & GetDbComponents(void) const = 0;
42 
43 public:
44  virtual ~IGameWorld(void) = default;
45 };
46 
47 } // namespace model
48 
49 } // namespace basement
basement::model::PointLights
Класс входит в проект Example Класс набора точечных источников света сцены.
Definition: PointLights.hpp:29
basement
Definition: Common.hpp:10
basement::model::IGameWorld
Класс входит в проект Example Интерфейсный класс игрового мира.
Definition: IGameWorld.hpp:34
basement::model::CubeCoords
Класс входит в проект Example Класс манипуляции кубическими координатами.
Definition: CubeCoords.hpp:26
basement::model::IDbComponents
Класс входит в проект Example Интерфейсный класс базы данных компонентов.
Definition: IDbComponents.hpp:29