diff --git a/include/mbgl/renderer/renderer.hpp b/include/mbgl/renderer/renderer.hpp index 787f9dcee..f1800dbfb 100644 --- a/include/mbgl/renderer/renderer.hpp +++ b/include/mbgl/renderer/renderer.hpp @@ -24,7 +24,6 @@ class RendererBackend; class Renderer { public: Renderer(gfx::RendererBackend&, float pixelRatio_, - const optional programCacheDir = {}, const optional localFontFamily = {}); ~Renderer(); 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 833a875a0..947ed3555 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 @@ -8,7 +8,6 @@ import android.support.annotation.NonNull; import com.mapbox.mapboxsdk.LibraryLoader; import com.mapbox.mapboxsdk.log.Logger; import com.mapbox.mapboxsdk.maps.MapboxMap; -import com.mapbox.mapboxsdk.storage.FileSource; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL10; @@ -36,10 +35,9 @@ public abstract class MapRenderer implements MapRendererScheduler { public MapRenderer(@NonNull Context context, String localIdeographFontFamily) { float pixelRatio = context.getResources().getDisplayMetrics().density; - String programCacheDir = FileSource.getInternalCachePath(context); // Initialise native peer - nativeInitialize(this, pixelRatio, programCacheDir, localIdeographFontFamily); + nativeInitialize(this, pixelRatio, localIdeographFontFamily); } public void onStart() { @@ -119,7 +117,6 @@ public abstract class MapRenderer implements MapRendererScheduler { private native void nativeInitialize(MapRenderer self, float pixelRatio, - String programCacheDir, String localIdeographFontFamily); @CallSuper diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/snapshotter/MapSnapshotter.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/snapshotter/MapSnapshotter.java index 4c70d13b1..1e0069c25 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/snapshotter/MapSnapshotter.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/snapshotter/MapSnapshotter.java @@ -339,11 +339,9 @@ public class MapSnapshotter { fileSource.setApiBaseUrl(apiBaseUrl); } - String programCacheDir = FileSource.getInternalCachePath(context); - nativeInitialize(this, fileSource, options.pixelRatio, options.width, options.height, options.styleUri, options.styleJson, options.region, options.cameraPosition, - options.showLogo, programCacheDir, options.localIdeographFontFamily); + options.showLogo, options.localIdeographFontFamily); } /** @@ -625,8 +623,7 @@ public class MapSnapshotter { FileSource fileSource, float pixelRatio, int width, int height, String styleUrl, String styleJson, LatLngBounds region, CameraPosition position, - boolean showLogo, String programCacheDir, - String localIdeographFontFamily); + boolean showLogo, String localIdeographFontFamily); @Keep protected native void nativeStart(); diff --git a/platform/android/src/map_renderer.cpp b/platform/android/src/map_renderer.cpp index 92444c404..6be708b99 100644 --- a/platform/android/src/map_renderer.cpp +++ b/platform/android/src/map_renderer.cpp @@ -16,11 +16,9 @@ namespace android { MapRenderer::MapRenderer(jni::JNIEnv& _env, const jni::Object& obj, jni::jfloat pixelRatio_, - const jni::String& programCacheDir_, const jni::String& localIdeographFontFamily_) : javaPeer(_env, obj) , pixelRatio(pixelRatio_) - , programCacheDir(jni::Make(_env, programCacheDir_)) , localIdeographFontFamily(localIdeographFontFamily_ ? jni::Make(_env, localIdeographFontFamily_) : optional{}) , mailbox(std::make_shared(*this)) { } @@ -173,7 +171,7 @@ void MapRenderer::onSurfaceCreated(JNIEnv&) { // Create the new backend and renderer backend = std::make_unique(); - renderer = std::make_unique(*backend, pixelRatio, programCacheDir, localIdeographFontFamily); + renderer = std::make_unique(*backend, pixelRatio, localIdeographFontFamily); rendererRef = std::make_unique>(*renderer, mailbox); // Set the observer on the new Renderer implementation @@ -214,7 +212,7 @@ void MapRenderer::registerNative(jni::JNIEnv& env) { // Register the peer jni::RegisterNativePeer(env, javaClass, "nativePtr", - jni::MakePeer&, jni::jfloat, const jni::String&, const jni::String&>, + jni::MakePeer&, jni::jfloat, const jni::String&>, "nativeInitialize", "finalize", METHOD(&MapRenderer::render, "nativeRender"), METHOD(&MapRenderer::onRendererReset, "nativeReset"), diff --git a/platform/android/src/map_renderer.hpp b/platform/android/src/map_renderer.hpp index efbe55af7..5a8ddeeb9 100644 --- a/platform/android/src/map_renderer.hpp +++ b/platform/android/src/map_renderer.hpp @@ -44,7 +44,6 @@ public: MapRenderer(jni::JNIEnv& _env, const jni::Object&, jni::jfloat pixelRatio, - const jni::String& programCacheDir, const jni::String& localIdeographFontFamily); ~MapRenderer() override; @@ -104,7 +103,6 @@ private: jni::WeakReference, jni::EnvAttachingDeleter> javaPeer; float pixelRatio; - std::string programCacheDir; optional localIdeographFontFamily; std::shared_ptr threadPool; diff --git a/platform/android/src/snapshotter/map_snapshotter.cpp b/platform/android/src/snapshotter/map_snapshotter.cpp index 2eca6595e..2d3771060 100644 --- a/platform/android/src/snapshotter/map_snapshotter.cpp +++ b/platform/android/src/snapshotter/map_snapshotter.cpp @@ -23,7 +23,6 @@ MapSnapshotter::MapSnapshotter(jni::JNIEnv& _env, const jni::Object& region, const jni::Object& position, jni::jboolean _showLogo, - const jni::String& _programCacheDir, const jni::String& _localIdeographFontFamily) : javaPeer(_env, _obj) , pixelRatio(_pixelRatio) { @@ -61,7 +60,6 @@ MapSnapshotter::MapSnapshotter(jni::JNIEnv& _env, pixelRatio, cameraOptions, bounds, - jni::Make(_env, _programCacheDir), _localIdeographFontFamily ? jni::Make(_env, _localIdeographFontFamily) : optional{}, @@ -161,7 +159,7 @@ void MapSnapshotter::registerNative(jni::JNIEnv& env) { // Register the peer jni::RegisterNativePeer(env, javaClass, "nativePtr", - jni::MakePeer&, const jni::Object&, jni::jfloat, jni::jint, jni::jint, const jni::String&, const jni::String&, const jni::Object&, const jni::Object&, jni::jboolean, const jni::String&, const jni::String&>, + jni::MakePeer&, const jni::Object&, jni::jfloat, jni::jint, jni::jint, const jni::String&, const jni::String&, const jni::Object&, const jni::Object&, jni::jboolean, const jni::String&>, "nativeInitialize", "finalize", METHOD(&MapSnapshotter::setStyleUrl, "setStyleUrl"), diff --git a/platform/android/src/snapshotter/map_snapshotter.hpp b/platform/android/src/snapshotter/map_snapshotter.hpp index 791aa61d6..608a4c855 100644 --- a/platform/android/src/snapshotter/map_snapshotter.hpp +++ b/platform/android/src/snapshotter/map_snapshotter.hpp @@ -34,7 +34,6 @@ public: const jni::Object& region, const jni::Object& position, jni::jboolean showLogo, - const jni::String& programCacheDir, const jni::String& localIdeographFontFamily); ~MapSnapshotter(); diff --git a/platform/darwin/src/MGLMapSnapshotter.mm b/platform/darwin/src/MGLMapSnapshotter.mm index 65bed2cf4..0001ebcb8 100644 --- a/platform/darwin/src/MGLMapSnapshotter.mm +++ b/platform/darwin/src/MGLMapSnapshotter.mm @@ -624,7 +624,7 @@ const CGFloat MGLSnapshotterMinimumPixelSize = 64; // Create the snapshotter _mbglMapSnapshotter = std::make_unique( - style, size, pixelRatio, cameraOptions, coordinateBounds, config.cacheDir, config.localFontFamilyName, resourceOptions); + style, size, pixelRatio, cameraOptions, coordinateBounds, config.localFontFamilyName, resourceOptions); } @end diff --git a/platform/darwin/src/MGLRendererConfiguration.h b/platform/darwin/src/MGLRendererConfiguration.h index bfe88b720..0c539f86f 100644 --- a/platform/darwin/src/MGLRendererConfiguration.h +++ b/platform/darwin/src/MGLRendererConfiguration.h @@ -20,9 +20,6 @@ MGL_EXPORT Based on the native scale where available, otherwise the standard screen scale. */ @property (nonatomic, readonly) const float scaleFactor; -/** The cache dir to use. */ -@property (nonatomic, readonly) mbgl::optional cacheDir; - /** The name of the font family to use for client-side text rendering of CJK ideographs. Set MGLIdeographicFontFamilyName in your containing application's Info.plist to diff --git a/platform/darwin/src/MGLRendererConfiguration.mm b/platform/darwin/src/MGLRendererConfiguration.mm index 54bdcaa69..136dc929a 100644 --- a/platform/darwin/src/MGLRendererConfiguration.mm +++ b/platform/darwin/src/MGLRendererConfiguration.mm @@ -66,10 +66,6 @@ static NSString * const MGLIdeographicFontFamilyNameKey = @"MGLIdeographicFontFa #endif } -- (mbgl::optional)cacheDir { - return mbgl::optional(); -} - - (mbgl::optional)localFontFamilyName { return [self _localFontFamilyNameWithPropertyDictionary:[[NSBundle mainBundle] infoDictionary]]; } diff --git a/platform/default/include/mbgl/gfx/headless_frontend.hpp b/platform/default/include/mbgl/gfx/headless_frontend.hpp index 7f937b34b..8f7a7bf20 100644 --- a/platform/default/include/mbgl/gfx/headless_frontend.hpp +++ b/platform/default/include/mbgl/gfx/headless_frontend.hpp @@ -17,12 +17,10 @@ class TransformState; class HeadlessFrontend : public RendererFrontend { public: HeadlessFrontend(float pixelRatio_, - const optional programCacheDir = {}, gfx::ContextMode mode = gfx::ContextMode::Unique, const optional localFontFamily = {}); HeadlessFrontend(Size, float pixelRatio_, - const optional programCacheDir = {}, gfx::ContextMode mode = gfx::ContextMode::Unique, const optional localFontFamily = {}); ~HeadlessFrontend() override; diff --git a/platform/default/include/mbgl/map/map_snapshotter.hpp b/platform/default/include/mbgl/map/map_snapshotter.hpp index db1ba1f26..c1544c36a 100644 --- a/platform/default/include/mbgl/map/map_snapshotter.hpp +++ b/platform/default/include/mbgl/map/map_snapshotter.hpp @@ -31,7 +31,6 @@ public: const float pixelRatio, const optional cameraOptions, const optional region, - const optional cacheDir, const optional localFontFamily, const ResourceOptions&); diff --git a/platform/default/src/mbgl/gfx/headless_frontend.cpp b/platform/default/src/mbgl/gfx/headless_frontend.cpp index f5e6b7f48..287567adb 100644 --- a/platform/default/src/mbgl/gfx/headless_frontend.cpp +++ b/platform/default/src/mbgl/gfx/headless_frontend.cpp @@ -10,16 +10,14 @@ namespace mbgl { HeadlessFrontend::HeadlessFrontend(float pixelRatio_, - const optional programCacheDir, const gfx::ContextMode contextMode, const optional localFontFamily) : HeadlessFrontend( - { 256, 256 }, pixelRatio_, programCacheDir, contextMode, localFontFamily) { + { 256, 256 }, pixelRatio_, contextMode, localFontFamily) { } HeadlessFrontend::HeadlessFrontend(Size size_, float pixelRatio_, - const optional programCacheDir, const gfx::ContextMode contextMode, const optional localFontFamily) : size(size_), @@ -38,7 +36,7 @@ HeadlessFrontend::HeadlessFrontend(Size size_, renderer->render(*updateParameters_); } }), - renderer(std::make_unique(*getBackend(), pixelRatio, programCacheDir, localFontFamily)) { + renderer(std::make_unique(*getBackend(), pixelRatio, localFontFamily)) { } HeadlessFrontend::~HeadlessFrontend() = default; diff --git a/platform/default/src/mbgl/map/map_snapshotter.cpp b/platform/default/src/mbgl/map/map_snapshotter.cpp index f0b107e77..5f4060e3f 100644 --- a/platform/default/src/mbgl/map/map_snapshotter.cpp +++ b/platform/default/src/mbgl/map/map_snapshotter.cpp @@ -19,7 +19,6 @@ public: const float pixelRatio, const optional cameraOptions, const optional region, - const optional programCacheDir, const optional localFontFamily, const ResourceOptions& resourceOptions); @@ -50,11 +49,10 @@ MapSnapshotter::Impl::Impl(const std::pair style, const float pixelRatio, const optional cameraOptions, const optional region, - const optional programCacheDir, const optional localFontFamily, const ResourceOptions& resourceOptions) : frontend( - size, pixelRatio, programCacheDir, gfx::ContextMode::Unique, localFontFamily), + size, pixelRatio, gfx::ContextMode::Unique, localFontFamily), map(frontend, MapObserver::nullObserver(), MapOptions().withMapMode(MapMode::Static).withSize(size).withPixelRatio(pixelRatio), @@ -168,12 +166,11 @@ MapSnapshotter::MapSnapshotter(const std::pair style, const float pixelRatio, const optional cameraOptions, const optional region, - const optional programCacheDir, const optional localFontFamily, const ResourceOptions& resourceOptions) : impl(std::make_unique>( "Map Snapshotter", style, size, pixelRatio, cameraOptions, - region, programCacheDir, localFontFamily, resourceOptions.clone())) {} + region, localFontFamily, resourceOptions.clone())) {} MapSnapshotter::~MapSnapshotter() = default; diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index 6d466bf2c..2eafea1dd 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -471,7 +471,7 @@ public: // setup mbgl map MGLRendererConfiguration *config = [MGLRendererConfiguration currentConfiguration]; - auto renderer = std::make_unique(_mbglView->getRendererBackend(), config.scaleFactor, config.cacheDir, config.localFontFamilyName); + auto renderer = std::make_unique(_mbglView->getRendererBackend(), config.scaleFactor, config.localFontFamilyName); BOOL enableCrossSourceCollisions = !config.perSourceCollisions; _rendererFrontend = std::make_unique(std::move(renderer), self, _mbglView->getRendererBackend()); diff --git a/platform/macos/src/MGLMapView.mm b/platform/macos/src/MGLMapView.mm index 3c9647571..9a7cb437e 100644 --- a/platform/macos/src/MGLMapView.mm +++ b/platform/macos/src/MGLMapView.mm @@ -276,7 +276,7 @@ public: MGLRendererConfiguration *config = [MGLRendererConfiguration currentConfiguration]; - auto renderer = std::make_unique(_mbglView->getRendererBackend(), config.scaleFactor, config.cacheDir, config.localFontFamilyName); + auto renderer = std::make_unique(_mbglView->getRendererBackend(), config.scaleFactor, config.localFontFamilyName); BOOL enableCrossSourceCollisions = !config.perSourceCollisions; _rendererFrontend = std::make_unique(std::move(renderer), self, _mbglView->getRendererBackend(), true); diff --git a/platform/qt/src/qmapboxgl_map_renderer.cpp b/platform/qt/src/qmapboxgl_map_renderer.cpp index eba50af6b..842347032 100644 --- a/platform/qt/src/qmapboxgl_map_renderer.cpp +++ b/platform/qt/src/qmapboxgl_map_renderer.cpp @@ -28,7 +28,7 @@ static auto *getScheduler() { QMapboxGLMapRenderer::QMapboxGLMapRenderer(qreal pixelRatio, QMapboxGLSettings::GLContextMode mode, const QString &localFontFamily) : m_backend(static_cast(mode)), - m_renderer(std::make_unique(m_backend, pixelRatio, mbgl::optional {}, + m_renderer(std::make_unique(m_backend, pixelRatio, localFontFamily.isEmpty() ? mbgl::nullopt : mbgl::optional { localFontFamily.toStdString() })) , m_forceScheduler(needsToForceScheduler()) { diff --git a/src/mbgl/programs/program_parameters.cpp b/src/mbgl/programs/program_parameters.cpp index a49dc2bc8..95d2d0f66 100644 --- a/src/mbgl/programs/program_parameters.cpp +++ b/src/mbgl/programs/program_parameters.cpp @@ -4,8 +4,7 @@ namespace mbgl { ProgramParameters::ProgramParameters(const float pixelRatio, - const bool overdraw, - optional cacheDir_) + const bool overdraw) : defines([&] { std::string result; result.reserve(32); @@ -16,28 +15,11 @@ ProgramParameters::ProgramParameters(const float pixelRatio, result += "#define OVERDRAW_INSPECTOR\n"; } return result; - }()), - cacheDir(std::move(cacheDir_)) { + }()) { } const std::string& ProgramParameters::getDefines() const { return defines; } -optional ProgramParameters::cachePath(const char* name) const { - if (!cacheDir) { - return {}; - } else { - std::string result; - result.reserve(cacheDir->length() + 64); - result += *cacheDir; - result += "/com.mapbox.gl.shader."; - result += name; - result += '.'; - result += util::toHex(static_cast(std::hash()(defines))); - result += ".pbf"; - return result; - } -} - } // namespace mbgl diff --git a/src/mbgl/programs/program_parameters.hpp b/src/mbgl/programs/program_parameters.hpp index 71ad45439..8af7ab50c 100644 --- a/src/mbgl/programs/program_parameters.hpp +++ b/src/mbgl/programs/program_parameters.hpp @@ -8,14 +8,12 @@ namespace mbgl { class ProgramParameters { public: - ProgramParameters(float pixelRatio, bool overdraw, optional cacheDir); + ProgramParameters(float pixelRatio, bool overdraw); const std::string& getDefines() const; - optional cachePath(const char* name) const; private: std::string defines; - optional cacheDir; }; } // namespace mbgl diff --git a/src/mbgl/renderer/render_static_data.cpp b/src/mbgl/renderer/render_static_data.cpp index 9090ef657..6378ad998 100644 --- a/src/mbgl/renderer/render_static_data.cpp +++ b/src/mbgl/renderer/render_static_data.cpp @@ -49,10 +49,10 @@ static gfx::VertexVector heatmapTextureVertices() { return result; } -RenderStaticData::RenderStaticData(gfx::Context& context, float pixelRatio, const optional& programCacheDir) - : programs(context, ProgramParameters { pixelRatio, false, programCacheDir }) +RenderStaticData::RenderStaticData(gfx::Context& context, float pixelRatio) + : programs(context, ProgramParameters { pixelRatio, false }) #ifndef NDEBUG - , overdrawPrograms(context, ProgramParameters { pixelRatio, true, programCacheDir }) + , overdrawPrograms(context, ProgramParameters { pixelRatio, true }) #endif { tileTriangleSegments.emplace_back(0, 0, 4, 6); diff --git a/src/mbgl/renderer/render_static_data.hpp b/src/mbgl/renderer/render_static_data.hpp index 5b409933a..6bf2c846f 100644 --- a/src/mbgl/renderer/render_static_data.hpp +++ b/src/mbgl/renderer/render_static_data.hpp @@ -19,7 +19,7 @@ class UploadPass; class RenderStaticData { public: - RenderStaticData(gfx::Context&, float pixelRatio, const optional& programCacheDir); + RenderStaticData(gfx::Context&, float pixelRatio); void upload(gfx::UploadPass&); diff --git a/src/mbgl/renderer/renderer.cpp b/src/mbgl/renderer/renderer.cpp index dd715bd3b..52cd7a435 100644 --- a/src/mbgl/renderer/renderer.cpp +++ b/src/mbgl/renderer/renderer.cpp @@ -10,11 +10,9 @@ namespace mbgl { Renderer::Renderer(gfx::RendererBackend& backend, float pixelRatio_, - const optional programCacheDir_, const optional localFontFamily_) : impl(std::make_unique(backend, pixelRatio_, - std::move(programCacheDir_), std::move(localFontFamily_))) { } diff --git a/src/mbgl/renderer/renderer_impl.cpp b/src/mbgl/renderer/renderer_impl.cpp index c12f12c06..113840d05 100644 --- a/src/mbgl/renderer/renderer_impl.cpp +++ b/src/mbgl/renderer/renderer_impl.cpp @@ -26,13 +26,11 @@ static RendererObserver& nullObserver() { Renderer::Impl::Impl(gfx::RendererBackend& backend_, float pixelRatio_, - optional programCacheDir_, optional localFontFamily_) : orchestrator(!backend_.contextIsShared(), std::move(localFontFamily_)) , backend(backend_) , observer(&nullObserver()) - , pixelRatio(pixelRatio_) - , programCacheDir(std::move(programCacheDir_)) { + , pixelRatio(pixelRatio_) { } @@ -53,7 +51,7 @@ void Renderer::Impl::render(const RenderTree& renderTree) { const auto& renderTreeParameters = renderTree.getParameters(); if (!staticData) { - staticData = std::make_unique(backend.getContext(), pixelRatio, programCacheDir); + staticData = std::make_unique(backend.getContext(), pixelRatio); } staticData->has3D = renderTreeParameters.has3D; diff --git a/src/mbgl/renderer/renderer_impl.hpp b/src/mbgl/renderer/renderer_impl.hpp index 85e37a014..5f04bfdfe 100644 --- a/src/mbgl/renderer/renderer_impl.hpp +++ b/src/mbgl/renderer/renderer_impl.hpp @@ -19,7 +19,6 @@ class Renderer::Impl { public: Impl(gfx::RendererBackend&, float pixelRatio_, - optional programCacheDir, optional localFontFamily_); ~Impl(); @@ -40,7 +39,6 @@ private: RendererObserver* observer; const float pixelRatio; - const optional programCacheDir; std::unique_ptr staticData; enum class RenderState { diff --git a/test/gl/context.test.cpp b/test/gl/context.test.cpp index 4b6bad6f6..770434c5b 100644 --- a/test/gl/context.test.cpp +++ b/test/gl/context.test.cpp @@ -91,7 +91,7 @@ TEST(GLContextMode, Shared) { util::RunLoop loop; - HeadlessFrontend frontend { 1, {}, gfx::ContextMode::Shared }; + HeadlessFrontend frontend { 1, gfx::ContextMode::Shared }; Map map(frontend, MapObserver::nullObserver(), MapOptions().withMapMode(MapMode::Static).withSize(frontend.getSize()), diff --git a/test/text/local_glyph_rasterizer.test.cpp b/test/text/local_glyph_rasterizer.test.cpp index 86dc87b6c..3f0fa1b91 100644 --- a/test/text/local_glyph_rasterizer.test.cpp +++ b/test/text/local_glyph_rasterizer.test.cpp @@ -33,7 +33,7 @@ namespace { class LocalGlyphRasterizerTest { public: LocalGlyphRasterizerTest(const optional fontFamily) - : frontend(1, optional(), gfx::ContextMode::Unique, fontFamily) + : frontend(1, gfx::ContextMode::Unique, fontFamily) { }