#include #include #include #include #include #include #include #include namespace mbgl { VectorTileData::VectorTileData(const OverscaledTileID& overscaledTileID, std::string sourceID, const style::UpdateParameters& parameters, const Tileset& tileset) : GeometryTileData(overscaledTileID, sourceID, parameters.style, parameters.mode) { assert(!tileset.tiles.empty()); const auto resource = Resource::tile( tileset.tiles.at(0), parameters.pixelRatio, overscaledTileID.canonical.x, overscaledTileID.canonical.y, overscaledTileID.canonical.z); tileSource = std::make_unique>( *this, resource, parameters.fileSource); } VectorTileData::~VectorTileData() = default; void VectorTileData::setNecessity(Necessity necessity) { tileSource->setNecessity(static_cast(necessity)); } std::unique_ptr VectorTileData::parseData(std::shared_ptr data) { return data ? std::make_unique(data) : nullptr; } } // namespace mbgl