All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TransportStreamingModule.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include <string>
6 
7 #include "Types.h"
8 #include "Roads.h"
9 #include "Fonts.h"
10 #include "TextMeshes.h"
11 #include "CoverageTrees.h"
12 #include "Helpers.h"
13 #include "Rendering.h"
14 #include "Navigation.h"
15 #include "Modules.h"
16 #include "Collision.h"
17 #include "Labels.h"
18 #include "ChunkedFileFormat.h"
19 #include "ISceneElementInGraphObserver.h"
20 #include "Config.h"
21 
22 namespace Eegeo
23 {
24  namespace Modules
25  {
26  namespace Map
27  {
28  namespace Layers
29  {
31  {
32  public:
33 
34  static TransportStreamingModule* Create(Core::RenderingModule& renderingModule,
35  EnvironmentMaterialModule& environmentMaterialModule,
36  TransportModelModule& transportModelModule,
37  TransportPresentationModule& transportPresentationModule,
38  Core::FontsModule& fontsModule,
39  Labels::LabelsModule& labelsModule,
40  ShadowModelModule& shadowModelModule,
42  Rendering::IMeshUploadService* pMeshUploadService,
43  const bool generateCollisionForAllResources,
44  const bool buildLabels,
46  const Config::ResourceBuilderConfigSection& resourceBuilderConfig,
48 
50 
51  Resources::Roads::RoadStreaming& GetRoadStream() const;
52  Resources::Roads::ChunkedRoadBuilder& GetRoadBuilder() const;
53 
54  private:
55 
57  Resources::Roads::RoadNameTransformBuilder* pRoadNameTransformBuilder,
58  Resources::Roads::RoadNameGeometryBuilder* pRoadNameGeometryBuilder,
60  TextMeshes::PreTransformedTextMeshBuilder* pRoadNamesTextMeshBuilder,
61  Resources::Roads::IRoadLabelAnchorCategoryMapper* pRoadLabelAnchorCategoryMapper,
62  Resources::Roads::IRoadNameClassificationPatcher* pRoadNameClassificationPatcher,
63  Resources::Roads::IRoadLabelBuilder* pRoadLabelBuilder,
64 
68 
69 
70  Resources::Roads::RoadStreaming* m_pRoadStream;
71  Resources::Roads::RoadNameTransformBuilder* m_pRoadNameTransformBuilder;
72  Resources::Roads::RoadNameGeometryBuilder* m_pRoadNameGeometryBuilder;
74  TextMeshes::PreTransformedTextMeshBuilder* m_pRoadNamesTextMeshBuilder;
75  Resources::Roads::IRoadLabelAnchorCategoryMapper* m_pRoadLabelAnchorCategoryMapper;
76  Resources::Roads::IRoadNameClassificationPatcher* m_pRoadNameClassificationPatcher;
77  Resources::Roads::IRoadLabelBuilder* m_pRoadLabelBuilder;
78 
82  };
83  }
84  }
85  }
86 }