All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PlaceNamesPresentationModule.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include "PlaceNames.h"
7 #include "Fonts.h"
8 #include "Camera.h"
9 #include "Rendering.h"
10 #include "CityThemes.h"
11 #include "Modules.h"
12 
13 namespace Eegeo
14 {
15  namespace Modules
16  {
17  namespace Map
18  {
19  namespace Layers
20  {
22  {
23  public:
25  Rendering::EnvironmentFlatteningService& environmentFlatteningService,
26  Rendering::Materials::MaterialIdGenerator& materialIdGenerator,
27  int screenDpi,
28  const Fonts::FontInstance& environmentFont,
29  const Rendering::Shaders::TextShaderSet& textShaderSet,
31 
32 
34 
35  static PlaceNamesPresentationModule* Create(Core::RenderingModule& renderingModule,
36  Map::Layers::PlaceNamesModelModule& placeNamesModelModule,
37  Core::FontsModule& fontsModule,
38  Map::CityThemesModule& cityThemesModule,
39  Rendering::EnvironmentFlatteningService& environmentFlatteningService,
40  int screenDpi);
41 
42  Resources::PlaceNames::PlaceNamesController& GetPlaceNamesController() const;
43  Fonts::FontMaterialSet& GetPlaceNamesFontMaterialSet() const;
44 
45  Resources::PlaceNames::PlaceNamesViewFilter& GetPlaceNamesViewFilter() const;
46 
47  void Update(float dt, const Camera::RenderCamera& renderCamera);
48 
49  private:
50  Resources::PlaceNames::PlaceNamesController* m_pPlaceNamesController;
51  Fonts::FontMaterialSet* m_pPlaceNamesFontMaterialSet;
52  Resources::PlaceNames::PlaceNamesViewFilter* m_pPlaceNamesViewFilter;
54  };
55  }
56  }
57  }
58 }