summaryrefslogtreecommitdiff
path: root/src/mbgl/map/raster_tile_data.cpp
blob: b8862e6dd836754b2c33c6121293dccab073f4a3 (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
#include <mbgl/map/map.hpp>
#include <mbgl/map/raster_tile_data.hpp>
#include <mbgl/style/style.hpp>

using namespace mbgl;

RasterTileData::RasterTileData(Tile::ID const &id_, TexturePool &texturePool,
                               const SourceInfo &source_)
    : TileData(id_, source_), bucket(texturePool, layout) {
}

RasterTileData::~RasterTileData() {
}

void RasterTileData::parse() {
    if (state != State::loaded) {
        return;
    }

    if (bucket.setImage(data)) {
        state = State::parsed;
    } else {
        state = State::invalid;
    }
}

void RasterTileData::render(Painter &painter, const StyleLayer &layer_desc, const mat4 &matrix) {
    bucket.render(painter, layer_desc, id, matrix);
}

bool RasterTileData::hasData(StyleLayer const& /*layer_desc*/) const {
    return bucket.hasData();
}