diff options
Diffstat (limited to 'src/mbgl/tile/vector_tile_data.cpp')
-rw-r--r-- | src/mbgl/tile/vector_tile_data.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mbgl/tile/vector_tile_data.cpp b/src/mbgl/tile/vector_tile_data.cpp index be56b1abf7..b9cdbc3a99 100644 --- a/src/mbgl/tile/vector_tile_data.cpp +++ b/src/mbgl/tile/vector_tile_data.cpp @@ -1,5 +1,8 @@ #include <mbgl/tile/vector_tile_data.hpp> -#include <mbgl/tile/vector_tile_source.hpp> +#include <mbgl/tile/file_based_tile_source.hpp> +#include <mbgl/tile/file_based_tile_source_impl.hpp> +#include <mbgl/tile/tile_source.hpp> +#include <mbgl/tile/vector_tile.hpp> #include <mbgl/style/update_parameters.hpp> #include <mbgl/util/tileset.hpp> #include <mbgl/util/async_request.hpp> @@ -15,7 +18,8 @@ VectorTileData::VectorTileData(const OverscaledTileID& overscaledTileID, const auto resource = Resource::tile( tileset.tiles.at(0), parameters.pixelRatio, overscaledTileID.canonical.x, overscaledTileID.canonical.y, overscaledTileID.canonical.z); - tileSource = std::make_unique<VectorTileSource>(*this, resource, parameters.fileSource); + tileSource = std::make_unique<FileBasedTileSource<GeometryTileSource, VectorTileData>>( + *this, resource, parameters.fileSource); } VectorTileData::~VectorTileData() = default; @@ -24,4 +28,8 @@ void VectorTileData::setNecessity(Necessity necessity) { tileSource->setNecessity(static_cast<TileSource::Necessity>(necessity)); } +std::unique_ptr<GeometryTile> VectorTileData::parseData(std::shared_ptr<const std::string> data) { + return data ? std::make_unique<VectorTile>(data) : nullptr; +} + } // namespace mbgl |