All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
CoverageTreeManifest.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include <string>
6 #include <vector>
7 #include "BlockCoverageTrees.h"
8 
9 namespace Eegeo
10 {
11  namespace Streaming
12  {
13  namespace CoverageTrees
14  {
15  struct InlineKeySet
16  {
17  std::vector<std::string> Keys;
18  int MinLevel;
19  int MaxLevel;
20 
21  InlineKeySet()
22  : MinLevel(0)
23  , MaxLevel(0)
24  {}
25  };
26 
28  {
29  std::string Name;
30  std::string StoreRelativePath;
31  std::string FeatureRelativePath;
32  std::string ResourceName;
33  std::string Extension;
34  int StreamPriority;
35  bool IsCritical;
36 
37  bool HasBaseOverrideUrl;
38  std::string BaseOverrideUrl;
39 
40  bool HasCoverageTreeOverrideUrl;
41  std::string CoverageTreeOverrideUrl;
42 
43  bool HasSpecialisedBuilder;
44  std::string SpecialisedBuilderKey;
45 
46  bool HasInlineKeySet;
47  InlineKeySet KeySet;
48 
49  bool HasCoverageTree;
51 
53  : StreamPriority(0)
54  , IsCritical(false)
55  , HasBaseOverrideUrl(false)
56  , HasCoverageTreeOverrideUrl(false)
57  , HasSpecialisedBuilder(false)
58  , HasInlineKeySet(false)
59  , HasCoverageTree(false)
60  , CoverageTree(NULL)
61  {}
62  };
63 
65  {
66  std::string ResourceStreamComponentName;
67  std::string StoreRelativePath;
68  };
69 
70 
72  {
73  std::string ManifestUrl;
74  std::string BaseUrl;
75 
76  std::vector<CoverageTreeManifestItem> BuildingItems;
77  std::vector<CoverageTreeManifestItem> GroundItems;
78  std::vector<CoverageTreeManifestItem> TransportItems;
79  std::vector<CoverageTreeManifestItem> PlaceNameItems;
80  std::vector<CoverageTreeManifestItem> InteriorsItems;
81  std::vector<StreamComponentToStorePairDto> BuildingFootprintItems;
82  };
83  }
84  }
85 }