All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
InteriorHighlightOutlineChunkDto.h
1 #pragma once
2 
3 #include "Interiors.h"
4 
5 #include "Types.h"
6 
7 #include <vector>
8 #include <string>
9 #include <unordered_map>
10 
11 namespace Eegeo
12 {
13  namespace Resources
14  {
15  namespace Interiors
16  {
17  namespace Builder
18  {
20  {
21  static InteriorHighlightOutlineChunkDto CreateEmpty();
22 
24  const u32 highlightMeshCount,
25  const std::unordered_map<std::string, int>& entityToPolygonLookup,
26  const std::vector<int>& contoursCountPerPolygon,
27  const std::vector<int>& vertexCountPerContour,
28  const std::vector<double>& originRelativeLatLngDegrees
29  );
30 
31  const u32& HighlightMeshCount() const { return m_highlightMeshCount; }
32 
33  // dictionary<EntityId, index into ContoursCountPerPolygon>
34  const std::unordered_map<std::string, int>& EntityToPolygonLookup() const { return m_entityToPolygonLookup; }
35  const std::vector<int>& ContoursCountPerPolygon() const { return m_contoursCountPerPolygon; }
36  const std::vector<int>& VertexCountPerContour() const { return m_vertexCountPerContour; }
37  const std::vector<double>& OriginRelativeLatLngDegrees() const { return m_originRelativeLatLngDegrees; }
38 
39  private:
40  const u32 m_highlightMeshCount;
41  const std::unordered_map<std::string, int> m_entityToPolygonLookup;
42  const std::vector<int> m_contoursCountPerPolygon;
43  const std::vector<int> m_vertexCountPerContour;
44  const std::vector<double> m_originRelativeLatLngDegrees;
45  };
46  }
47  }
48  }
49 }