All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
BinaryThemeParser.h
1 #pragma once
2 
3 #include "Types.h"
4 #include "CityThemes.h"
5 #include "BinaryParsing.h"
6 #include "ChunkedFileFormat.h"
7 #include "Traffic.h"
8 
9 #include <iostream>
10 #include <vector>
11 
12 namespace Eegeo
13 {
14  namespace Resources
15  {
16  namespace CityThemes
17  {
18  namespace BinaryThemeParsing
19  {
21  {
22  public:
23  BinaryThemeParser(bool parseEmbeddedThemes, const std::string& embeddedThemeTextureRoot);
24 
25  CityThemeData* ParseTheme(
28 
29  private:
30 
31  std::string FullTexturePath(const std::string& textureName) const;
32 
33  void ParsePlaceNameStyles(
34  CityThemeData& theme,
37 
38  void ParseVehicles(
39  CityThemeData& theme,
42 
43  std::vector<Traffic::Config::TrafficSimulationVehicleConfiguration> ParseVehiclesInType(
46 
47  void ParseThemeStates(
48  CityThemeData& theme,
51 
52  void ParseLighting(
53  CityThemeState& state,
56 
57  void ParseTextures(
58  CityThemeState& state,
61 
62  void ParseOverlayData(
63  CityThemeState& state,
66 
67  void ParseLcmTextures(
68  CityThemeState& state,
71 
72  bool m_parseEmbeddedThemes;
73  std::string m_assetRoot;
74  std::string m_extension;
75  };
76  }
77  }
78  }
79 }