Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Streaming
BlockCoverageTrees
PrioritisedBlockCoverageTreeList.h
1
// Copyright (c) 2015 eeGeo. All rights reserved.
2
#pragma once
3
4
#include "Streaming.h"
5
#include "BlockCoverageTree.h"
6
#include "CoverageTreeMinMaxLevel.h"
7
#include <vector>
8
9
10
namespace
Eegeo
11
{
12
namespace
Streaming
13
{
14
namespace
BlockCoverageTrees
15
{
16
struct
StoreCoverageEntry
17
{
18
BlockCoverageTree
* coverageTree;
19
ResourceStreamComponent
* resourceStreamComponent;
20
21
StoreCoverageEntry
(
BlockCoverageTree
* tree,
ResourceStreamComponent
* stream)
22
: coverageTree(tree)
23
, resourceStreamComponent(stream) {}
24
};
25
26
class
PrioritisedBlockCoverageTreeList
:
protected
Eegeo::NonCopyable
27
{
28
public
:
29
PrioritisedBlockCoverageTreeList
();
30
31
~
PrioritisedBlockCoverageTreeList
();
32
33
bool
HasCoverageFor(
const
MortonKey
& mortonKey,
ResourceStreamComponent
*& out_resourceStream)
const
;
34
35
bool
HasCoverageFor(
const
MortonKey
& mortonKey)
const
;
36
37
void
InsertCoverageTree(
BlockCoverageTrees::BlockCoverageTree
* coverageTree,
ResourceStreamComponent
* stream);
38
39
const
CoverageTrees::CoverageTreeMinMaxLevel
GetCoverageTreeMinMaxLevels()
const
;
40
41
const
bool
IsEmpty()
const
;
42
43
private
:
44
45
int
m_lowestLevel;
46
int
m_highestLevel;
47
48
std::vector<StoreCoverageEntry> m_storeCoverageEntries;
49
};
50
}
51
}
52
}
Generated on Sat Jun 10 2023 02:00:34 for eeGeo Platform SDK by
1.8.3.1