diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-13 13:18:55 +0200 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-13 13:28:42 +0200 |
commit | 8709587c716fdd0cb04e0b0547cd63e92baf33a4 (patch) | |
tree | 0d6dd168b04569e54e2e4e7cc7051507688d5a7f | |
parent | f66532534827ea3f68e93e381a58bd0d02ab7f79 (diff) | |
download | qtlocation-mapboxgl-upstream/renderer-ctor-no-filesource.tar.gz |
[core] Renderer::Impl receives FileSource via UpdateParametersupstream/renderer-ctor-no-filesource
40 files changed, 60 insertions, 93 deletions
diff --git a/benchmark/api/query.benchmark.cpp b/benchmark/api/query.benchmark.cpp index 275a79372c..47eba7a9fe 100644 --- a/benchmark/api/query.benchmark.cpp +++ b/benchmark/api/query.benchmark.cpp @@ -34,7 +34,7 @@ public: util::RunLoop loop; DefaultFileSource fileSource{ "benchmark/fixtures/api/cache.db", "." }; ThreadPool threadPool{ 4 }; - HeadlessFrontend frontend { { 1000, 1000 }, 1, fileSource, threadPool }; + HeadlessFrontend frontend { { 1000, 1000 }, 1, threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), 1, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static) }; ScreenBox box{{ 0, 0 }, { 1000, 1000 }}; diff --git a/benchmark/api/render.benchmark.cpp b/benchmark/api/render.benchmark.cpp index 8709f18d9c..ec2fe931fc 100644 --- a/benchmark/api/render.benchmark.cpp +++ b/benchmark/api/render.benchmark.cpp @@ -41,7 +41,7 @@ static void prepare(Map& map, optional<std::string> json = {}) { static void API_renderStill_reuse_map(::benchmark::State& state) { RenderBenchmark bench; - HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.fileSource, bench.threadPool }; + HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), 1, bench.fileSource, bench.threadPool, MapOptions().withMapMode(MapMode::Static) }; prepare(map); @@ -53,7 +53,7 @@ static void API_renderStill_reuse_map(::benchmark::State& state) { static void API_renderStill_reuse_map_switch_styles(::benchmark::State& state) { RenderBenchmark bench; - HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.fileSource, bench.threadPool }; + HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), 1, bench.fileSource, bench.threadPool, MapOptions().withMapMode(MapMode::Static) }; @@ -69,7 +69,7 @@ static void API_renderStill_recreate_map(::benchmark::State& state) { RenderBenchmark bench; while (state.KeepRunning()) { - HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.fileSource, bench.threadPool }; + HeadlessFrontend frontend { { 1000, 1000 }, 1, bench.threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), 1, bench.fileSource, bench.threadPool, MapOptions().withMapMode(MapMode::Static) }; prepare(map); diff --git a/bin/render.cpp b/bin/render.cpp index fbf32f9a40..87a1e670b9 100644 --- a/bin/render.cpp +++ b/bin/render.cpp @@ -84,7 +84,7 @@ int main(int argc, char *argv[]) { } ThreadPool threadPool(4); - HeadlessFrontend frontend({ width, height }, pixelRatio, fileSource, threadPool); + HeadlessFrontend frontend({ width, height }, pixelRatio, threadPool); Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)); diff --git a/include/mbgl/renderer/renderer.hpp b/include/mbgl/renderer/renderer.hpp index 644dd0fcf9..721a070cab 100644 --- a/include/mbgl/renderer/renderer.hpp +++ b/include/mbgl/renderer/renderer.hpp @@ -13,7 +13,6 @@ namespace mbgl { -class FileSource; class RendererBackend; class RendererObserver; class RenderedQueryOptions; @@ -23,10 +22,9 @@ class UpdateParameters; class Renderer { public: - Renderer(RendererBackend&, float pixelRatio_, FileSource&, Scheduler&, + Renderer(RendererBackend&, float pixelRatio_, Scheduler&, GLContextMode = GLContextMode::Unique, - const optional<std::string> programCacheDir = {}, - const optional<std::string> localFontFamily = {}); + const optional<std::string> programCacheDir = {}); ~Renderer(); void markContextLost(); diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index 8600b73744..46086aa91a 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -276,12 +276,11 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback { } private void initialiseDrawingSurface(MapboxMapOptions options) { - String localFontFamily = options.getLocalIdeographFontFamily(); if (options.getTextureMode()) { TextureView textureView = new TextureView(getContext()); boolean translucentSurface = options.getTranslucentTextureSurface(); mapRenderer = new TextureViewMapRenderer(getContext(), - textureView, localFontFamily, translucentSurface) { + textureView, translucentSurface) { @Override protected void onSurfaceCreated(GL10 gl, EGLConfig config) { MapView.this.onSurfaceCreated(); @@ -293,7 +292,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback { } else { GLSurfaceView glSurfaceView = new GLSurfaceView(getContext()); glSurfaceView.setZOrderMediaOverlay(mapboxMapOptions.getRenderSurfaceOnTop()); - mapRenderer = new GLSurfaceViewMapRenderer(getContext(), glSurfaceView, localFontFamily) { + mapRenderer = new GLSurfaceViewMapRenderer(getContext(), glSurfaceView) { @Override public void onSurfaceCreated(GL10 gl, EGLConfig config) { MapView.this.onSurfaceCreated(); diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java index 3eeb72f5ad..c7d94defdf 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java @@ -30,13 +30,12 @@ public abstract class MapRenderer implements MapRendererScheduler { private double expectedRenderTime = 0; private MapboxMap.OnFpsChangedListener onFpsChangedListener; - public MapRenderer(@NonNull Context context, String localIdeographFontFamily) { - FileSource fileSource = FileSource.getInstance(context); + public MapRenderer(@NonNull Context context) { float pixelRatio = context.getResources().getDisplayMetrics().density; String programCacheDir = FileSource.getInternalCachePath(context); // Initialise native peer - nativeInitialize(this, fileSource, pixelRatio, programCacheDir, localIdeographFontFamily); + nativeInitialize(this, pixelRatio, programCacheDir); } public void onStart() { @@ -115,10 +114,8 @@ public abstract class MapRenderer implements MapRendererScheduler { } private native void nativeInitialize(MapRenderer self, - FileSource fileSource, float pixelRatio, - String programCacheDir, - String localIdeographFontFamily); + String programCacheDir); @CallSuper @Override diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java index 9d9a7bd2d4..21b0274c2b 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java @@ -28,9 +28,8 @@ public class GLSurfaceViewMapRenderer extends MapRenderer implements GLSurfaceVi private boolean requestDestroy; public GLSurfaceViewMapRenderer(Context context, - GLSurfaceView glSurfaceView, - String localIdeographFontFamily) { - super(context, localIdeographFontFamily); + GLSurfaceView glSurfaceView) { + super(context); this.glSurfaceView = glSurfaceView; glSurfaceView.setEGLContextClientVersion(2); glSurfaceView.setEGLConfigChooser(new EGLConfigChooser()); diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewMapRenderer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewMapRenderer.java index 46e6463fe8..34f3004b1d 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewMapRenderer.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewMapRenderer.java @@ -24,14 +24,12 @@ public class TextureViewMapRenderer extends MapRenderer { * * @param context the current Context * @param textureView the TextureView - * @param localIdeographFontFamily the local font family * @param translucentSurface the translucency flag */ public TextureViewMapRenderer(@NonNull Context context, @NonNull TextureView textureView, - String localIdeographFontFamily, boolean translucentSurface) { - super(context, localIdeographFontFamily); + super(context); this.translucentSurface = translucentSurface; renderThread = new TextureViewRenderThread(textureView, this); renderThread.start(); diff --git a/platform/android/src/android_renderer_frontend.cpp b/platform/android/src/android_renderer_frontend.cpp index 295ed1766b..21e8da6a21 100644 --- a/platform/android/src/android_renderer_frontend.cpp +++ b/platform/android/src/android_renderer_frontend.cpp @@ -3,7 +3,6 @@ #include <mbgl/actor/scheduler.hpp> #include <mbgl/renderer/renderer.hpp> #include <mbgl/renderer/renderer_observer.hpp> -#include <mbgl/storage/file_source.hpp> #include <mbgl/util/async_task.hpp> #include <mbgl/util/thread.hpp> #include <mbgl/util/run_loop.hpp> diff --git a/platform/android/src/map_renderer.cpp b/platform/android/src/map_renderer.cpp index cd8953e4cf..5b4efc1e14 100644 --- a/platform/android/src/map_renderer.cpp +++ b/platform/android/src/map_renderer.cpp @@ -9,22 +9,17 @@ #include "attach_env.hpp" #include "android_renderer_backend.hpp" #include "map_renderer_runnable.hpp" -#include "file_source.hpp" namespace mbgl { namespace android { MapRenderer::MapRenderer(jni::JNIEnv& _env, const jni::Object<MapRenderer>& obj, - const jni::Object<FileSource>& _fileSource, jni::jfloat pixelRatio_, - const jni::String& programCacheDir_, - const jni::String& localIdeographFontFamily_) + const jni::String& programCacheDir_) : javaPeer(_env, obj) , pixelRatio(pixelRatio_) - , fileSource(FileSource::getDefaultFileSource(_env, _fileSource)) , programCacheDir(jni::Make<std::string>(_env, programCacheDir_)) - , localIdeographFontFamily(localIdeographFontFamily_ ? jni::Make<std::string>(_env, localIdeographFontFamily_) : optional<std::string>{}) , threadPool(sharedThreadPool()) , mailbox(std::make_shared<Mailbox>(*this)) { } @@ -174,8 +169,7 @@ void MapRenderer::onSurfaceCreated(JNIEnv&) { // Create the new backend and renderer backend = std::make_unique<AndroidRendererBackend>(); - renderer = std::make_unique<Renderer>(*backend, pixelRatio, fileSource, *threadPool, - GLContextMode::Unique, programCacheDir, localIdeographFontFamily); + renderer = std::make_unique<Renderer>(*backend, pixelRatio, *threadPool, GLContextMode::Unique, programCacheDir); rendererRef = std::make_unique<ActorRef<Renderer>>(*renderer, mailbox); // Set the observer on the new Renderer implementation @@ -211,7 +205,7 @@ void MapRenderer::registerNative(jni::JNIEnv& env) { // Register the peer jni::RegisterNativePeer<MapRenderer>(env, javaClass, "nativePtr", - jni::MakePeer<MapRenderer, const jni::Object<MapRenderer>&, const jni::Object<FileSource>&, jni::jfloat, const jni::String&, const jni::String&>, + jni::MakePeer<MapRenderer, const jni::Object<MapRenderer>&, jni::jfloat, const jni::String&>, "nativeInitialize", "finalize", METHOD(&MapRenderer::render, "nativeRender"), METHOD(&MapRenderer::onSurfaceCreated, diff --git a/platform/android/src/map_renderer.hpp b/platform/android/src/map_renderer.hpp index fdc3600d02..f8f27ee60b 100644 --- a/platform/android/src/map_renderer.hpp +++ b/platform/android/src/map_renderer.hpp @@ -23,7 +23,6 @@ class UpdateParameters; namespace android { class AndroidRendererBackend; -class FileSource; /** * The MapRenderer is a peer class that encapsulates the actions @@ -42,10 +41,8 @@ public: MapRenderer(jni::JNIEnv& _env, const jni::Object<MapRenderer>&, - const jni::Object<FileSource>&, jni::jfloat pixelRatio, - const jni::String& programCacheDir, - const jni::String& localIdeographFontFamily); + const jni::String& programCacheDir); ~MapRenderer() override; @@ -103,7 +100,6 @@ private: jni::WeakReference<jni::Object<MapRenderer>, jni::EnvAttachingDeleter> javaPeer; float pixelRatio; - DefaultFileSource& fileSource; std::string programCacheDir; optional<std::string> localIdeographFontFamily; diff --git a/platform/default/include/mbgl/gl/headless_frontend.hpp b/platform/default/include/mbgl/gl/headless_frontend.hpp index 18f0cfa537..fe6fe9f179 100644 --- a/platform/default/include/mbgl/gl/headless_frontend.hpp +++ b/platform/default/include/mbgl/gl/headless_frontend.hpp @@ -11,7 +11,6 @@ namespace mbgl { -class FileSource; class Scheduler; class Renderer; class RendererBackend; @@ -20,8 +19,8 @@ class TransformState; class HeadlessFrontend : public RendererFrontend { public: - HeadlessFrontend(float pixelRatio_, FileSource&, Scheduler&, const optional<std::string> programCacheDir = {}, GLContextMode mode = GLContextMode::Unique, const optional<std::string> localFontFamily = {}); - HeadlessFrontend(Size, float pixelRatio_, FileSource&, Scheduler&, const optional<std::string> programCacheDir = {}, GLContextMode mode = GLContextMode::Unique, const optional<std::string> localFontFamily = {}); + HeadlessFrontend(float pixelRatio_, Scheduler&, const optional<std::string> programCacheDir = {}, GLContextMode mode = GLContextMode::Unique); + HeadlessFrontend(Size, float pixelRatio_, Scheduler&, const optional<std::string> programCacheDir = {}, GLContextMode mode = GLContextMode::Unique); ~HeadlessFrontend() override; void reset() override; diff --git a/platform/default/src/mbgl/gl/headless_frontend.cpp b/platform/default/src/mbgl/gl/headless_frontend.cpp index 37b0f91f32..3200bbf874 100644 --- a/platform/default/src/mbgl/gl/headless_frontend.cpp +++ b/platform/default/src/mbgl/gl/headless_frontend.cpp @@ -8,11 +8,11 @@ namespace mbgl { -HeadlessFrontend::HeadlessFrontend(float pixelRatio_, FileSource& fileSource, Scheduler& scheduler, const optional<std::string> programCacheDir, GLContextMode mode, const optional<std::string> localFontFamily) - : HeadlessFrontend({ 256, 256 }, pixelRatio_, fileSource, scheduler, programCacheDir, mode, localFontFamily) { +HeadlessFrontend::HeadlessFrontend(float pixelRatio_, Scheduler& scheduler, const optional<std::string> programCacheDir, GLContextMode mode) + : HeadlessFrontend({ 256, 256 }, pixelRatio_, scheduler, programCacheDir, mode) { } -HeadlessFrontend::HeadlessFrontend(Size size_, float pixelRatio_, FileSource& fileSource, Scheduler& scheduler, const optional<std::string> programCacheDir, GLContextMode mode, const optional<std::string> localFontFamily) +HeadlessFrontend::HeadlessFrontend(Size size_, float pixelRatio_, Scheduler& scheduler, const optional<std::string> programCacheDir, GLContextMode mode) : size(size_), pixelRatio(pixelRatio_), backend({ static_cast<uint32_t>(size.width * pixelRatio), @@ -23,7 +23,7 @@ HeadlessFrontend::HeadlessFrontend(Size size_, float pixelRatio_, FileSource& fi renderer->render(*updateParameters); } }), - renderer(std::make_unique<Renderer>(backend, pixelRatio, fileSource, scheduler, mode, programCacheDir, localFontFamily)) { + renderer(std::make_unique<Renderer>(backend, pixelRatio, scheduler, mode, programCacheDir)) { } HeadlessFrontend::~HeadlessFrontend() = default; diff --git a/platform/default/src/mbgl/map/map_snapshotter.cpp b/platform/default/src/mbgl/map/map_snapshotter.cpp index 9b4df1e1cc..f4954a7f5f 100644 --- a/platform/default/src/mbgl/map/map_snapshotter.cpp +++ b/platform/default/src/mbgl/map/map_snapshotter.cpp @@ -57,7 +57,7 @@ MapSnapshotter::Impl::Impl(FileSource* fileSource, const optional<std::string> programCacheDir, const optional<std::string> localFontFamily) : scheduler(std::move(scheduler_)) - , frontend(size, pixelRatio, *fileSource, *scheduler, programCacheDir, GLContextMode::Unique, localFontFamily) + , frontend(size, pixelRatio, *scheduler, programCacheDir, GLContextMode::Unique) , map(frontend, MapObserver::nullObserver(), size, pixelRatio, *fileSource, *scheduler, [&localFontFamily]() -> MapOptions { MapOptions options = MapOptions().withMapMode(MapMode::Static); diff --git a/platform/glfw/main.cpp b/platform/glfw/main.cpp index 8e6905f948..38a41cbf18 100644 --- a/platform/glfw/main.cpp +++ b/platform/glfw/main.cpp @@ -108,7 +108,7 @@ int main(int argc, char *argv[]) { } mbgl::ThreadPool threadPool(4); - GLFWRendererFrontend rendererFrontend { std::make_unique<mbgl::Renderer>(backend, view->getPixelRatio(), fileSource, threadPool), backend }; + GLFWRendererFrontend rendererFrontend { std::make_unique<mbgl::Renderer>(backend, view->getPixelRatio(), threadPool), backend }; mbgl::Map map(rendererFrontend, backend, view->getSize(), view->getPixelRatio(), fileSource, threadPool, mbgl::MapOptions()); backend.setMap(&map); diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index 366cffc8c0..a7dcc3f752 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -473,7 +473,7 @@ public: MGLRendererConfiguration *config = [MGLRendererConfiguration currentConfiguration]; _mbglThreadPool = mbgl::sharedThreadPool(); - auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, config.scaleFactor, *config.fileSource, *_mbglThreadPool, config.contextMode, config.cacheDir, config.localFontFamilyName); + auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, config.scaleFactor, *_mbglThreadPool, config.contextMode, config.cacheDir); BOOL enableCrossSourceCollisions = !config.perSourceCollisions; _rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView); diff --git a/platform/macos/src/MGLMapView.mm b/platform/macos/src/MGLMapView.mm index 51be79e876..041ac64160 100644 --- a/platform/macos/src/MGLMapView.mm +++ b/platform/macos/src/MGLMapView.mm @@ -286,7 +286,7 @@ public: _mbglThreadPool = mbgl::sharedThreadPool(); MGLRendererConfiguration *config = [MGLRendererConfiguration currentConfiguration]; - auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, config.scaleFactor, *config.fileSource, *_mbglThreadPool, config.contextMode, config.cacheDir, config.localFontFamilyName); + auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, config.scaleFactor, *_mbglThreadPool, config.contextMode, config.cacheDir); BOOL enableCrossSourceCollisions = !config.perSourceCollisions; _rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView, true); diff --git a/platform/node/src/node_map.cpp b/platform/node/src/node_map.cpp index 2beab1833f..0d69e606c1 100644 --- a/platform/node/src/node_map.cpp +++ b/platform/node/src/node_map.cpp @@ -620,7 +620,7 @@ void NodeMap::cancel() { reinterpret_cast<NodeMap *>(h->data)->renderFinished(); }); - frontend = std::make_unique<mbgl::HeadlessFrontend>(mbgl::Size{ 256, 256 }, pixelRatio, fileSource, threadpool); + frontend = std::make_unique<mbgl::HeadlessFrontend>(mbgl::Size{ 256, 256 }, pixelRatio, threadpool); mbgl::MapOptions options; options.withMapMode(mode) .withConstrainMode(mbgl::ConstrainMode::HeightOnly) @@ -1206,7 +1206,7 @@ NodeMap::NodeMap(v8::Local<v8::Object> options) }()) , mapObserver(NodeMapObserver()) , fileSource(this) - , frontend(std::make_unique<mbgl::HeadlessFrontend>(mbgl::Size { 256, 256 }, pixelRatio, fileSource, threadpool)) + , frontend(std::make_unique<mbgl::HeadlessFrontend>(mbgl::Size { 256, 256 }, pixelRatio, threadpool)) , map(std::make_unique<mbgl::Map>(*frontend, mapObserver, frontend->getSize(), diff --git a/platform/qt/src/qmapboxgl.cpp b/platform/qt/src/qmapboxgl.cpp index 2b5f8965ce..a108241f24 100644 --- a/platform/qt/src/qmapboxgl.cpp +++ b/platform/qt/src/qmapboxgl.cpp @@ -1832,10 +1832,8 @@ void QMapboxGLPrivate::createRenderer() m_mapRenderer = std::make_unique<QMapboxGLMapRenderer>( m_pixelRatio, - *m_fileSourceObj, *m_threadPool, - m_mode, - m_localFontFamily + m_mode ); connect(m_mapRenderer.get(), SIGNAL(needsRendering()), this, SLOT(requestRendering())); diff --git a/platform/qt/src/qmapboxgl_map_renderer.cpp b/platform/qt/src/qmapboxgl_map_renderer.cpp index 31b518e6d0..82ab24bfb9 100644 --- a/platform/qt/src/qmapboxgl_map_renderer.cpp +++ b/platform/qt/src/qmapboxgl_map_renderer.cpp @@ -24,10 +24,8 @@ static auto *getScheduler() { return scheduler.localData().get(); }; -QMapboxGLMapRenderer::QMapboxGLMapRenderer(qreal pixelRatio, - mbgl::DefaultFileSource &fs, mbgl::ThreadPool &tp, QMapboxGLSettings::GLContextMode mode, const QString &localFontFamily) - : m_renderer(std::make_unique<mbgl::Renderer>(m_backend, pixelRatio, fs, tp, static_cast<mbgl::GLContextMode>(mode), mbgl::optional<std::string> {}, - localFontFamily.isEmpty() ? mbgl::nullopt : mbgl::optional<std::string> { localFontFamily.toStdString() })) +QMapboxGLMapRenderer::QMapboxGLMapRenderer(qreal pixelRatio, mbgl::ThreadPool &tp, QMapboxGLSettings::GLContextMode mode) + : m_renderer(std::make_unique<mbgl::Renderer>(m_backend, pixelRatio, tp, static_cast<mbgl::GLContextMode>(mode), mbgl::optional<std::string> {})) , m_forceScheduler(needsToForceScheduler()) { // If we don't have a Scheduler on this thread, which diff --git a/platform/qt/src/qmapboxgl_map_renderer.hpp b/platform/qt/src/qmapboxgl_map_renderer.hpp index a59cf74997..dbb279ed5d 100644 --- a/platform/qt/src/qmapboxgl_map_renderer.hpp +++ b/platform/qt/src/qmapboxgl_map_renderer.hpp @@ -6,7 +6,6 @@ #include <mbgl/renderer/renderer.hpp> #include <mbgl/renderer/renderer_backend.hpp> #include <mbgl/renderer/renderer_observer.hpp> -#include <mbgl/storage/default_file_source.hpp> #include <mbgl/util/shared_thread_pool.hpp> #include <mbgl/util/util.hpp> @@ -27,9 +26,7 @@ class QMapboxGLMapRenderer : public QObject Q_OBJECT public: - QMapboxGLMapRenderer(qreal pixelRatio, mbgl::DefaultFileSource &, - mbgl::ThreadPool &, QMapboxGLSettings::GLContextMode, - const QString &localFontFamily); + QMapboxGLMapRenderer(qreal pixelRatio, mbgl::ThreadPool &, QMapboxGLSettings::GLContextMode); virtual ~QMapboxGLMapRenderer(); void render(); diff --git a/platform/qt/src/qmapboxgl_renderer_backend.hpp b/platform/qt/src/qmapboxgl_renderer_backend.hpp index de66b035fc..476b3502c1 100644 --- a/platform/qt/src/qmapboxgl_renderer_backend.hpp +++ b/platform/qt/src/qmapboxgl_renderer_backend.hpp @@ -3,7 +3,6 @@ #include "qmapboxgl.hpp" #include <mbgl/renderer/renderer_backend.hpp> -#include <mbgl/storage/default_file_source.hpp> #include <mbgl/util/shared_thread_pool.hpp> class QMapboxGLRendererBackend : public mbgl::RendererBackend diff --git a/src/mbgl/annotation/annotation_tile.cpp b/src/mbgl/annotation/annotation_tile.cpp index e5e3b68dff..7ece03c78a 100644 --- a/src/mbgl/annotation/annotation_tile.cpp +++ b/src/mbgl/annotation/annotation_tile.cpp @@ -1,7 +1,6 @@ #include <mbgl/annotation/annotation_tile.hpp> #include <mbgl/annotation/annotation_manager.hpp> #include <mbgl/util/constants.hpp> -#include <mbgl/storage/file_source.hpp> #include <mbgl/renderer/tile_parameters.hpp> #include <utility> diff --git a/src/mbgl/map/map_impl.cpp b/src/mbgl/map/map_impl.cpp index 95ac24d2d6..898ac2f239 100644 --- a/src/mbgl/map/map_impl.cpp +++ b/src/mbgl/map/map_impl.cpp @@ -80,6 +80,7 @@ void Map::Impl::onUpdate() { annotationManager, glyphManager, imageManager, + fileSource, prefetchZoomDelta, bool(stillImageRequest), crossSourceCollisions diff --git a/src/mbgl/map/map_options.cpp b/src/mbgl/map/map_options.cpp index 97d997fa55..3d9a7f1b49 100644 --- a/src/mbgl/map/map_options.cpp +++ b/src/mbgl/map/map_options.cpp @@ -83,8 +83,8 @@ bool MapOptions::crossSourceCollisions() const { return impl_->crossSourceCollisions; } -MapOptions& MapOptions::withLocalFontFamily(std::string localFontFamily) { - impl_->localFontFamily = std::move(localFontFamily); +MapOptions& MapOptions::withLocalFontFamily(std::string localFontFamily_) { + impl_->localFontFamily = std::move(localFontFamily_); return *this; } diff --git a/src/mbgl/renderer/renderer.cpp b/src/mbgl/renderer/renderer.cpp index 5a92a675c5..02673eeefb 100644 --- a/src/mbgl/renderer/renderer.cpp +++ b/src/mbgl/renderer/renderer.cpp @@ -9,13 +9,11 @@ namespace mbgl { Renderer::Renderer(RendererBackend& backend, float pixelRatio_, - FileSource& fileSource_, Scheduler& scheduler_, GLContextMode contextMode_, - const optional<std::string> programCacheDir_, - const optional<std::string> localFontFamily_) - : impl(std::make_unique<Impl>(backend, pixelRatio_, fileSource_, scheduler_, - contextMode_, std::move(programCacheDir_), std::move(localFontFamily_))) { + const optional<std::string> programCacheDir_) + : impl(std::make_unique<Impl>(backend, pixelRatio_, scheduler_, + contextMode_, std::move(programCacheDir_))) { } Renderer::~Renderer() { diff --git a/src/mbgl/renderer/renderer_impl.cpp b/src/mbgl/renderer/renderer_impl.cpp index 34e314ba79..fef5af5196 100644 --- a/src/mbgl/renderer/renderer_impl.cpp +++ b/src/mbgl/renderer/renderer_impl.cpp @@ -37,13 +37,11 @@ static RendererObserver& nullObserver() { Renderer::Impl::Impl(RendererBackend& backend_, float pixelRatio_, - FileSource& fileSource_, Scheduler& scheduler_, GLContextMode contextMode_, const optional<std::string> programCacheDir_) : backend(backend_) , scheduler(scheduler_) - , fileSource(fileSource_) , observer(&nullObserver()) , contextMode(contextMode_) , pixelRatio(pixelRatio_) @@ -108,7 +106,7 @@ void Renderer::Impl::render(const UpdateParameters& updateParameters) { updateParameters.debugOptions, updateParameters.transformState, scheduler, - fileSource, + updateParameters.fileSource, updateParameters.mode, updateParameters.annotationManager, updateParameters.imageManager, diff --git a/src/mbgl/renderer/renderer_impl.hpp b/src/mbgl/renderer/renderer_impl.hpp index 20ef5ddd3a..1787d0780b 100644 --- a/src/mbgl/renderer/renderer_impl.hpp +++ b/src/mbgl/renderer/renderer_impl.hpp @@ -26,14 +26,13 @@ class UpdateParameters; class RenderStaticData; class RenderedQueryOptions; class SourceQueryOptions; -class FileSource; class Scheduler; class LineAtlas; class CrossTileSymbolIndex; class Renderer::Impl : public RenderSourceObserver { public: - Impl(RendererBackend&, float pixelRatio_, FileSource&, Scheduler&, GLContextMode, + Impl(RendererBackend&, float pixelRatio_, Scheduler&, GLContextMode, const optional<std::string> programCacheDir); ~Impl() final; @@ -84,7 +83,6 @@ private: RendererBackend& backend; Scheduler& scheduler; - FileSource& fileSource; RendererObserver* observer; diff --git a/src/mbgl/renderer/update_parameters.hpp b/src/mbgl/renderer/update_parameters.hpp index d8a36047fb..d44b54d4ae 100644 --- a/src/mbgl/renderer/update_parameters.hpp +++ b/src/mbgl/renderer/update_parameters.hpp @@ -16,6 +16,7 @@ namespace mbgl { class AnnotationManager; class GlyphManager; class ImageManager; +class FileSource; class UpdateParameters { public: @@ -37,6 +38,7 @@ public: AnnotationManager& annotationManager; GlyphManager& glyphManager; ImageManager& imageManager; + FileSource& fileSource; const uint8_t prefetchZoomDelta; diff --git a/test/api/annotations.test.cpp b/test/api/annotations.test.cpp index a81d9ff990..89ce357d84 100644 --- a/test/api/annotations.test.cpp +++ b/test/api/annotations.test.cpp @@ -31,7 +31,7 @@ public: StubFileSource fileSource; ThreadPool threadPool { 4 }; float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool }; + HeadlessFrontend frontend { pixelRatio, threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)}; diff --git a/test/api/api_misuse.test.cpp b/test/api/api_misuse.test.cpp index 8899173071..2ccfb0a7ff 100644 --- a/test/api/api_misuse.test.cpp +++ b/test/api/api_misuse.test.cpp @@ -25,7 +25,7 @@ TEST(API, RenderWithoutCallback) { StubFileSource fileSource; ThreadPool threadPool(4); float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool }; + HeadlessFrontend frontend { pixelRatio, threadPool }; auto map = std::make_unique<Map>(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, diff --git a/test/api/custom_geometry_source.test.cpp b/test/api/custom_geometry_source.test.cpp index 4eeca9104b..6959a36f15 100644 --- a/test/api/custom_geometry_source.test.cpp +++ b/test/api/custom_geometry_source.test.cpp @@ -23,7 +23,7 @@ TEST(CustomGeometrySource, Grid) { DefaultFileSource fileSource(":memory:", "test/fixtures/api/assets"); auto threadPool = sharedThreadPool(); float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, *threadPool }; + HeadlessFrontend frontend { pixelRatio, *threadPool }; Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, *threadPool, MapOptions().withMapMode(MapMode::Static)); map.getStyle().loadJSON(util::read_file("test/fixtures/api/water.json")); diff --git a/test/api/custom_layer.test.cpp b/test/api/custom_layer.test.cpp index d840925206..18c6dc1692 100644 --- a/test/api/custom_layer.test.cpp +++ b/test/api/custom_layer.test.cpp @@ -93,7 +93,7 @@ TEST(CustomLayer, Basic) { DefaultFileSource fileSource(":memory:", "test/fixtures/api/assets"); ThreadPool threadPool(4); float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool }; + HeadlessFrontend frontend { pixelRatio, threadPool }; Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)); map.getStyle().loadJSON(util::read_file("test/fixtures/api/water.json")); diff --git a/test/api/query.test.cpp b/test/api/query.test.cpp index b9fc3a4a62..5567eabc73 100644 --- a/test/api/query.test.cpp +++ b/test/api/query.test.cpp @@ -36,7 +36,7 @@ public: StubFileSource fileSource; ThreadPool threadPool { 4 }; float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool }; + HeadlessFrontend frontend { pixelRatio, threadPool }; Map map { frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)}; }; diff --git a/test/api/recycle_map.cpp b/test/api/recycle_map.cpp index 0883241274..db576b4cf6 100644 --- a/test/api/recycle_map.cpp +++ b/test/api/recycle_map.cpp @@ -28,7 +28,7 @@ TEST(API, RecycleMapUpdateImages) { ThreadPool threadPool(4); float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool }; + HeadlessFrontend frontend { pixelRatio, threadPool }; auto map = std::make_unique<Map>(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)); diff --git a/test/gl/context.test.cpp b/test/gl/context.test.cpp index f260555f55..3c055c2ce0 100644 --- a/test/gl/context.test.cpp +++ b/test/gl/context.test.cpp @@ -90,7 +90,7 @@ TEST(GLContextMode, Shared) { ThreadPool threadPool(4); float pixelRatio { 1 }; - HeadlessFrontend frontend { pixelRatio, fileSource, threadPool, {}, GLContextMode::Shared }; + HeadlessFrontend frontend { pixelRatio, threadPool, {}, GLContextMode::Shared }; Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(MapMode::Static)); diff --git a/test/map/map.test.cpp b/test/map/map.test.cpp index f45c728944..0197202a9d 100644 --- a/test/map/map.test.cpp +++ b/test/map/map.test.cpp @@ -38,7 +38,7 @@ public: Map map; MapTest(float pixelRatio = 1, MapMode mode = MapMode::Static) - : frontend(pixelRatio, fileSource, threadPool) + : frontend(pixelRatio, threadPool) , map(frontend, observer, frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(mode)) { } @@ -48,7 +48,7 @@ public: float pixelRatio = 1, MapMode mode = MapMode::Static, typename std::enable_if<std::is_same<T, DefaultFileSource>::value>::type* = 0) : fileSource { cachePath, assetRoot } - , frontend(pixelRatio, fileSource, threadPool) + , frontend(pixelRatio, threadPool) , map(frontend, observer, frontend.getSize(), pixelRatio, fileSource, threadPool, MapOptions().withMapMode(mode)) { } @@ -685,7 +685,7 @@ TEST(Map, TEST_DISABLED_ON_CI(ContinuousRendering)) { util::Timer timer; - HeadlessFrontend frontend(pixelRatio, fileSource, threadPool); + HeadlessFrontend frontend(pixelRatio, threadPool); StubMapObserver observer; observer.didFinishRenderingFrameCallback = [&] (MapObserver::RenderMode) { diff --git a/test/map/prefetch.test.cpp b/test/map/prefetch.test.cpp index 9b7d620739..dfde3a779b 100644 --- a/test/map/prefetch.test.cpp +++ b/test/map/prefetch.test.cpp @@ -37,7 +37,7 @@ TEST(Map, PrefetchTiles) { runLoop.stop(); }; - HeadlessFrontend frontend { { 512, 512 }, 1, fileSource, threadPool }; + HeadlessFrontend frontend { { 512, 512 }, 1, threadPool }; Map map(frontend, observer, frontend.getSize(), 1, fileSource, threadPool, MapOptions().withMapMode(MapMode::Continuous)); diff --git a/test/text/local_glyph_rasterizer.test.cpp b/test/text/local_glyph_rasterizer.test.cpp index d630690a60..e690b87c53 100644 --- a/test/text/local_glyph_rasterizer.test.cpp +++ b/test/text/local_glyph_rasterizer.test.cpp @@ -40,7 +40,7 @@ public: Map map; LocalGlyphRasterizerTest(const optional<std::string> font) - : frontend(pixelRatio, fileSource, threadPool, optional<std::string>(), GLContextMode::Unique, font) + : frontend(pixelRatio, threadPool, optional<std::string>(), GLContextMode::Unique) , map(frontend, MapObserver::nullObserver(), frontend.getSize(), pixelRatio, fileSource, threadPool, [&font]() { MapOptions o; o.withMapMode(MapMode::Static); return font ? o.withLocalFontFamily(*font) : o; }()) {} diff --git a/test/util/memory.test.cpp b/test/util/memory.test.cpp index a0e64a6704..36bed57ab5 100644 --- a/test/util/memory.test.cpp +++ b/test/util/memory.test.cpp @@ -71,7 +71,7 @@ TEST(Memory, Vector) { MemoryTest test; float ratio { 2 }; - HeadlessFrontend frontend { { 256, 256 }, ratio, test.fileSource, test.threadPool }; + HeadlessFrontend frontend { { 256, 256 }, ratio, test.threadPool }; Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), ratio, test.fileSource, test.threadPool, MapOptions().withMapMode(MapMode::Static)); map.jumpTo(CameraOptions().withZoom(16)); @@ -84,7 +84,7 @@ TEST(Memory, Raster) { MemoryTest test; float ratio { 2 }; - HeadlessFrontend frontend { { 256, 256 }, ratio, test.fileSource, test.threadPool }; + HeadlessFrontend frontend { { 256, 256 }, ratio, test.threadPool }; Map map(frontend, MapObserver::nullObserver(), frontend.getSize(), ratio, test.fileSource, test.threadPool, MapOptions().withMapMode(MapMode::Static)); map.getStyle().loadURL("mapbox://satellite"); @@ -122,7 +122,7 @@ TEST(Memory, Footprint) { class FrontendAndMap { public: FrontendAndMap(MemoryTest& test_, const char* style) - : frontend(Size{ 256, 256 }, 2, test_.fileSource, test_.threadPool) + : frontend(Size{ 256, 256 }, 2, test_.threadPool) , map(frontend, MapObserver::nullObserver(), frontend.getSize(), 2, test_.fileSource , test_.threadPool, MapOptions().withMapMode(MapMode::Static)) { map.jumpTo(CameraOptions().withZoom(16)); |