Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Modules
Core
RenderingModule.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "Types.h"
6
#include "Rendering.h"
7
#include "GLState.h"
8
9
namespace
Eegeo
10
{
11
namespace
Modules
12
{
13
namespace
Core
14
{
15
class
RenderingModule
:
protected
Eegeo::NonCopyable
16
{
17
public
:
18
RenderingModule
(
const
bool
bufferPoolingEnabled);
19
~
RenderingModule
();
20
static
RenderingModule
* Create(
const
bool
bufferPoolingEnabled);
21
22
Rendering::GlBufferPool
& GetGlBufferPool()
const
;
23
Rendering::VertexLayouts::VertexLayoutPool
& GetVertexLayoutPool()
const
;
24
Rendering::VertexLayouts::VertexBindingPool
& GetVertexBindingPool()
const
;
25
Rendering::RenderQueue
& GetRenderQueue()
const
;
26
Rendering::RenderableFilters
& GetRenderableFilters()
const
;
27
Rendering::Shaders::ShaderIdGenerator
& GetShaderIdGenerator()
const
;
28
Rendering::Materials::MaterialIdGenerator
& GetMaterialIdGenerator()
const
;
29
Rendering::Materials::NullMaterialFactory
& GetNullMaterialFactory()
const
;
30
Rendering::Filters::RenderableRepository
& GetRenderableRepository()
const
;
31
Rendering::MeshFactories::TextMeshFactory
& GetTextMeshFactory()
const
;
32
Rendering::MeshFactories::DiffuseMeshFactory
& GetDiffuseMeshFactory()
const
;
33
Rendering::MeshFactories::PackedTwoTextureDiffuseMeshFactory
& GetPackedTwoTextureDiffuseMeshFactory()
const
;
34
Rendering::MeshFactories::PositionMeshFactory
& GetPositionMeshFactory()
const
;
35
Rendering::Shaders::ColorShader
& GetColorShader()
const
;
36
Rendering::StencilLayersController
& GetStencilLayersController()
const
;
37
Rendering::RenderOptionsModel
& GetRenderOptionsModel()
const
;
38
Rendering::IRenderingService
& GetRenderingService()
const
;
39
42
Rendering::Materials::NullMaterial
&
GetNullMaterial
()
const
;
43
private
:
44
Rendering::GlBufferPool
* m_pGlBufferPool;
45
Rendering::VertexLayouts::VertexLayoutPool
* m_pVertexLayoutPool;
46
Rendering::VertexLayouts::VertexBindingPool
* m_pVertexBindingPool;
47
Rendering::RenderQueue
* m_pRenderQueue;
48
Rendering::RenderableFilters
* m_pRenderableFilters;
49
Rendering::Shaders::ShaderIdGenerator
* m_pShaderIdGenerator;
50
Rendering::Materials::MaterialIdGenerator
* m_pMaterialIdGenerator;
51
Rendering::Materials::NullMaterialFactory
* m_pNullMaterialFactory;
52
Rendering::Shaders::NullShader
* m_pNullShader;
53
Rendering::Materials::NullMaterial
* m_pSingletonNullMaterialDeprecated;
54
Rendering::MeshFactories::PackedTwoTextureDiffuseMeshFactory
* m_pPackedTwoTextureDiffuseMeshFactory;
55
Rendering::MeshFactories::DiffuseMeshFactory
* m_pDiffuseMeshFactory;
56
Rendering::MeshFactories::TextMeshFactory
* m_pTextMeshFactory;
57
Rendering::MeshFactories::PositionMeshFactory
* m_pPositionMeshFactory;
58
Rendering::Filters::RenderableRepository
* m_pRenderableRepository;
59
Rendering::Shaders::ColorShader
* m_pColorShader;
60
Rendering::StencilLayersController
* m_pStencilLayersController;
61
Rendering::RenderOptionsModel
* m_pRenderOptionsModel;
62
Rendering::IRenderingService
* m_pRenderingService;
63
};
64
}
65
}
66
}
Generated on Sat Jun 10 2023 02:00:31 for eeGeo Platform SDK by
1.8.3.1