All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ShapesModule.h
1 #pragma once
2 
3 #include "Types.h"
4 #include "PolygonShapes.h"
5 #include "PolylineShapes.h"
6 #include "HeatmapShapes.h"
7 #include "Modules.h"
8 
9 
10 namespace Eegeo
11 {
12  namespace Shapes
13  {
15  {
16  public:
17  static ShapesModule* Create(
18  Modules::Core::RenderingModule& renderingModule,
19  Modules::Map::MapModule& mapModule);
20 
21  virtual ~ShapesModule();
22 
23  virtual void Update(float dt);
24 
25  Polygons::PolygonShapesModule& GetPolygonShapesModule() const { return *m_pPolygonShapesModule; }
26  Polylines::PolylineShapesModule& GetPolylineShapesModule() const { return *m_pPolylineShapesModule; }
27  Heatmaps::HeatmapShapesModule& GetHeatmapShapesModule() const { return *m_pHeatmapShapesModule; }
28 
29  private:
31  Polygons::PolygonShapesModule* pPolygonShapesModule,
32  Polylines::PolylineShapesModule* pPolylineShapesModule,
33  Heatmaps::HeatmapShapesModule* pHeatmapShapesModule
34  );
35 
36  Polygons::PolygonShapesModule* const m_pPolygonShapesModule;
37  Polylines::PolylineShapesModule* const m_pPolylineShapesModule;
38  Heatmaps::HeatmapShapesModule* const m_pHeatmapShapesModule;
39  };
40  }
41 }