All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TerrainPresentationModule.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include "Terrain.h"
7 #include "Rendering.h"
8 #include "Streaming.h"
9 #include "Modules.h"
10 #include "Culling.h"
11 
12 namespace Eegeo
13 {
14  namespace Modules
15  {
16  namespace Map
17  {
18  namespace Layers
19  {
21  {
22  public:
25  Rendering::EnvironmentFlatteningService& environmentFlatteningService,
26  Culling::CullingVolumeVisibilityUpdater& cullingVolumeVisibilityUpdater);
27 
29 
30  static TerrainPresentationModule* Create(TerrainModelModule& terrainModelModule,
31  Rendering::EnvironmentFlatteningService& environmentFlatteningService,
32  Culling::CullingVolumeVisibilityUpdater& cullingVolumeVisibilityUpdater);
33 
34  Rendering::Filters::PackedRenderableFilter& GetLcmTerrainRenderableFilter() const;
35  Rendering::Filters::DefaultRenderableFilter& GetRasterTerrainRenderableFilter() const;
36  private:
37  Rendering::Filters::PackedRenderableFilter* m_pLcmPackedRenderableFilter;
38  Rendering::Filters::DefaultRenderableFilter* m_pRasterTerrainRenderableFilter;
39  };
40  }
41  }
42  }
43 }