diff options
Diffstat (limited to 'src/mbgl/style/sources')
-rw-r--r-- | src/mbgl/style/sources/geojson_source.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/style/sources/geojson_source.hpp | 3 | ||||
-rw-r--r-- | src/mbgl/style/sources/raster_source.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/style/sources/raster_source.hpp | 3 | ||||
-rw-r--r-- | src/mbgl/style/sources/vector_source.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/style/sources/vector_source.hpp | 3 |
6 files changed, 27 insertions, 0 deletions
diff --git a/src/mbgl/style/sources/geojson_source.cpp b/src/mbgl/style/sources/geojson_source.cpp index 8a573becfe..caedcffcd5 100644 --- a/src/mbgl/style/sources/geojson_source.cpp +++ b/src/mbgl/style/sources/geojson_source.cpp @@ -1,4 +1,5 @@ #include <mbgl/style/sources/geojson_source.hpp> +#include <mbgl/tile/geojson_tile.hpp> #include <mapbox/geojsonvt.hpp> @@ -14,5 +15,10 @@ GeoJSONSource::GeoJSONSource(std::string id_, geojsonvt = std::move(geojsonvt_); } +std::unique_ptr<Tile> GeoJSONSource::createTile(const OverscaledTileID& tileID, + const UpdateParameters& parameters) { + return std::make_unique<GeoJSONTile>(tileID, id, parameters, geojsonvt.get()); +} + } // namespace style } // namespace mbgl diff --git a/src/mbgl/style/sources/geojson_source.hpp b/src/mbgl/style/sources/geojson_source.hpp index d9f8cb4c62..c9262f22b7 100644 --- a/src/mbgl/style/sources/geojson_source.hpp +++ b/src/mbgl/style/sources/geojson_source.hpp @@ -12,6 +12,9 @@ public: uint16_t tileSize, std::unique_ptr<Tileset>&&, std::unique_ptr<mapbox::geojsonvt::GeoJSONVT>&&); + +private: + std::unique_ptr<Tile> createTile(const OverscaledTileID&, const UpdateParameters&) final; }; } // namespace style diff --git a/src/mbgl/style/sources/raster_source.cpp b/src/mbgl/style/sources/raster_source.cpp index 868d3f7f88..de8b248421 100644 --- a/src/mbgl/style/sources/raster_source.cpp +++ b/src/mbgl/style/sources/raster_source.cpp @@ -1,4 +1,5 @@ #include <mbgl/style/sources/raster_source.hpp> +#include <mbgl/tile/raster_tile.hpp> namespace mbgl { namespace style { @@ -10,5 +11,10 @@ RasterSource::RasterSource(std::string id_, : Source(SourceType::Raster, std::move(id_), std::move(url_), tileSize_, std::move(tileset_)) { } +std::unique_ptr<Tile> RasterSource::createTile(const OverscaledTileID& tileID, + const UpdateParameters& parameters) { + return std::make_unique<RasterTile>(tileID, parameters, *tileset); +} + } // namespace style } // namespace mbgl diff --git a/src/mbgl/style/sources/raster_source.hpp b/src/mbgl/style/sources/raster_source.hpp index 0e062c14f8..abc203e3cb 100644 --- a/src/mbgl/style/sources/raster_source.hpp +++ b/src/mbgl/style/sources/raster_source.hpp @@ -11,6 +11,9 @@ public: std::string url, uint16_t tileSize, std::unique_ptr<Tileset>&&); + +private: + std::unique_ptr<Tile> createTile(const OverscaledTileID&, const UpdateParameters&) final; }; } // namespace style diff --git a/src/mbgl/style/sources/vector_source.cpp b/src/mbgl/style/sources/vector_source.cpp index e6adb9bb9f..5cf0a1e182 100644 --- a/src/mbgl/style/sources/vector_source.cpp +++ b/src/mbgl/style/sources/vector_source.cpp @@ -1,4 +1,5 @@ #include <mbgl/style/sources/vector_source.hpp> +#include <mbgl/tile/vector_tile.hpp> namespace mbgl { namespace style { @@ -9,5 +10,10 @@ VectorSource::VectorSource(std::string id_, : Source(SourceType::Vector, std::move(id_), std::move(url_), util::tileSize, std::move(tileset_)) { } +std::unique_ptr<Tile> VectorSource::createTile(const OverscaledTileID& tileID, + const UpdateParameters& parameters) { + return std::make_unique<VectorTile>(tileID, id, parameters, *tileset); +} + } // namespace style } // namespace mbgl diff --git a/src/mbgl/style/sources/vector_source.hpp b/src/mbgl/style/sources/vector_source.hpp index 08ab9a461e..e98c17ddc1 100644 --- a/src/mbgl/style/sources/vector_source.hpp +++ b/src/mbgl/style/sources/vector_source.hpp @@ -10,6 +10,9 @@ public: VectorSource(std::string id, std::string url, std::unique_ptr<Tileset>&&); + +private: + std::unique_ptr<Tile> createTile(const OverscaledTileID&, const UpdateParameters&) final; }; } // namespace style |