Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Modules
Map
Layers
BuildingStreamingModule.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "Types.h"
6
#include "Buildings.h"
7
#include "Modules.h"
8
#include "Rendering.h"
9
#include "Collision.h"
10
#include "CityThemes.h"
11
#include "AsyncTexturing.h"
12
#include "LandmarkToRenderableRepository.h"
13
#include "ChunkedFileFormat.h"
14
#include "Resources.h"
15
#include "Config.h"
16
17
namespace
Eegeo
18
{
19
namespace
Modules
20
{
21
namespace
Map
22
{
23
namespace
Layers
24
{
25
class
BuildingStreamingModule
:
protected
Eegeo::NonCopyable
26
{
27
public
:
28
BuildingStreamingModule
(
Rendering::VertexLayouts::VertexBindingPool
& vertexBindingPool,
29
Rendering::IMaterialProvider
& materialProvider,
30
Resources::CityThemes::ICityThemesService
& cityThemeService,
31
IO::ChunkedFileFormat::QuantizedMeshSetChunkReader::IQuantizedMeshSetChunkReaderMeshFactory
& packedDiffuseReadMeshFactory,
32
Rendering::IMeshUploadService
* pMeshUploadService,
33
Rendering::Scene::SceneElementRepository<Rendering::Renderables::PackedRenderable>
& buildingSceneElementRepository,
34
Rendering::Scene::SceneElementRepository<Rendering::Renderables::PackedRenderable>
& shadowSceneElementRepository,
35
Eegeo::Collision::CollisionMeshResourceRepository
& collisionMeshResourceRepository,
36
Resources::Buildings::ILandmarkTextureLoader
& landmarkTextureLoader,
37
Resources::Buildings::ILandmarkRenderableFactory
& landmarkRenderableFactory,
38
Rendering::Scene::ISceneElementInGraphObserver<Rendering::Renderables::PackedRenderable>
& landmarkSceneGraphObserver,
39
const
Config::ResourceBuilderConfigSection
& resourceBuilderConfig,
40
const
bool
generateCollision,
41
Rendering::Scene::ISceneElementInGraphObserver<Rendering::Renderables::PackedRenderable>
* pSceneGraphObserver,
42
IO::ChunkedFileFormat::QuantizedMeshSetChunkReader::QCMSChunkReader
& qcmsChunkReader
43
);
44
45
~
BuildingStreamingModule
();
46
47
static
BuildingStreamingModule
* Create(
Core::RenderingModule
& renderingModule,
48
Resources::Buildings::ILandmarkTextureLoader
& landmarkTextureLoader,
49
Resources::Buildings::ILandmarkRenderableFactory
& landmarkRenderableFactory,
50
EnvironmentMaterialModule
& environmentMaterialModule,
51
BuildingModelModule
& buildingModelModule,
52
CityThemesModule
& cityThemesModule,
53
ShadowModelModule
& shadowModelModule,
54
IO::ChunkedFileFormat::QuantizedMeshSetChunkReader::IQuantizedMeshSetChunkReaderMeshFactory
& packedDiffuseReadMeshFactory,
55
Rendering::IMeshUploadService
* pMeshUploadService,
56
const
Config::ResourceBuilderConfigSection
& resourceBuilderConfig,
57
const
bool
generateCollision,
58
Rendering::Scene::ISceneElementInGraphObserver<Rendering::Renderables::PackedRenderable>
& landmarkSceneGraphObserver,
59
Rendering::Scene::ISceneElementInGraphObserver<Rendering::Renderables::PackedRenderable>
* pSceneGraphObserver,
60
IO::ChunkedFileFormat::QuantizedMeshSetChunkReader::QCMSChunkReader
& qcmsChunkReader);
61
62
Resources::Buildings::ChunkedBuildingBuilder
& GetBuildingBuilder()
const
;
63
Resources::Buildings::BuildingStreaming
& GetBuildingStream()
const
;
64
private
:
65
Resources::Buildings::ChunkedBuildingBuilder
* m_pBuildingBuilder;
66
Resources::Buildings::BuildingStreaming
* m_pBuildingStream;
67
};
68
}
69
}
70
}
71
}
Generated on Sat Jun 10 2023 02:00:31 for eeGeo Platform SDK by
1.8.3.1