summaryrefslogtreecommitdiff
path: root/src/mbgl/style/layer.cpp
blob: 342699a2c9b219518f1ae18ef431cac249c67f86 (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
46
47
48
49
50
#include <mbgl/style/layer.hpp>
#include <mbgl/style/layer_impl.hpp>

namespace mbgl {
namespace style {

Layer::Layer(Type type_, std::unique_ptr<Impl> baseImpl_)
    : baseImpl(std::move(baseImpl_)), type(type_) {
}

Layer::~Layer() = default;

const std::string& Layer::getID() const {
    return baseImpl->id;
}

VisibilityType Layer::getVisibility() const {
    return baseImpl->visibility;
}

void Layer::setVisibility(VisibilityType value) {
    baseImpl->visibility = value;
}

float Layer::getMinZoom() const {
    return baseImpl->minZoom;
}

void Layer::setMinZoom(float minZoom) const {
    baseImpl->minZoom = minZoom;
}

float Layer::getMaxZoom() const {
    return baseImpl->maxZoom;
}

void Layer::setMaxZoom(float maxZoom) const {
    baseImpl->maxZoom = maxZoom;
}

std::unique_ptr<Layer> Layer::copy(const std::string& id,
                                   const std::string& ref) const {
    std::unique_ptr<Layer> result = baseImpl->clone();
    result->baseImpl->id = id;
    result->baseImpl->ref = ref;
    return result;
}

} // namespace style
} // namespace mbgl