blob: 87a30dcf957d575c55dac244594cd00b7e0ba369 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#pragma once
#include <mbgl/style/source.hpp>
#include <string>
namespace mbgl {
class RenderSource;
namespace style {
class SourceObserver;
class Source::Impl {
public:
virtual ~Impl() = default;
Impl& operator=(const Impl&) = delete;
virtual optional<std::string> getAttribution() const = 0;
void setPrefetchZoomDelta(optional<uint8_t> delta) noexcept;
optional<uint8_t> getPrefetchZoomDelta() const noexcept;
void setMinimumTileUpdateInterval(Duration interval) { minimumTileUpdateInterval = interval; }
Duration getMinimumTileUpdateInterval() const { return minimumTileUpdateInterval; }
void setMaxOverscaleFactorForParentTiles(optional<uint8_t> overscaleFactor) noexcept;
optional<uint8_t> getMaxOverscaleFactorForParentTiles() const noexcept;
bool isVolatile() const { return volatileFlag; }
void setVolatile(bool set) { volatileFlag = set; }
const SourceType type;
const std::string id;
protected:
optional<uint8_t> prefetchZoomDelta;
optional<uint8_t> maxOverscaleFactor;
Duration minimumTileUpdateInterval{Duration::zero()};
bool volatileFlag = false;
Impl(SourceType, std::string);
Impl(const Impl&) = default;
};
} // namespace style
} // namespace mbgl
|