Loading libs/renderengine/include/renderengine/RenderEngine.h +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ public: // This interface, while still in use until a suitable replacement is built, // should be considered deprecated, minus some methods which still may be // used to support legacy behavior. virtual std::future<void> primeCache() = 0; virtual std::future<void> primeCache(bool shouldPrimeUltraHDR) = 0; // dump the extension strings. always call the base class. virtual void dump(std::string& result) = 0; Loading libs/renderengine/include/renderengine/mock/RenderEngine.h +1 −1 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ public: RenderEngine(); ~RenderEngine() override; MOCK_METHOD0(primeCache, std::future<void>()); MOCK_METHOD1(primeCache, std::future<void>(bool)); MOCK_METHOD1(dump, void(std::string&)); MOCK_CONST_METHOD0(getMaxTextureSize, size_t()); MOCK_CONST_METHOD0(getMaxViewportDims, size_t()); Loading libs/renderengine/skia/Cache.cpp +12 −8 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include "AutoBackendTexture.h" #include "SkiaRenderEngine.h" #include "android-base/unique_fd.h" #include "cutils/properties.h" #include "renderengine/DisplaySettings.h" #include "renderengine/LayerSettings.h" #include "renderengine/impl/ExternalTexture.h" Loading Loading @@ -629,7 +630,7 @@ static void drawP3ImageLayers(SkiaRenderEngine* renderengine, const DisplaySetti // kFlushAfterEveryLayer = true // in external/skia/src/gpu/gl/builders/GrGLShaderStringBuilder.cpp // gPrintSKSL = true void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { void Cache::primeShaderCache(SkiaRenderEngine* renderengine, bool shouldPrimeUltraHDR) { const int previousCount = renderengine->reportShadersCompiled(); if (previousCount) { ALOGD("%d Shaders already compiled before Cache::primeShaderCache ran\n", previousCount); Loading Loading @@ -755,6 +756,8 @@ void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { externalTexture); drawClippedDimmedImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); if (shouldPrimeUltraHDR) { drawBT2020ClippedImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); drawBT2020ImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); Loading @@ -765,6 +768,7 @@ void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { drawExtendedHDRImageLayers(renderengine, p3DisplayEnhance, dstTexture, externalTexture); drawP3ImageLayers(renderengine, p3DisplayEnhance, dstTexture, externalTexture); } // draw one final layer synchronously to force GL submit LayerSettings layer{ Loading libs/renderengine/skia/Cache.h +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ class SkiaRenderEngine; class Cache { public: static void primeShaderCache(SkiaRenderEngine*); static void primeShaderCache(SkiaRenderEngine*, bool shouldPrimeUltraHDR); private: Cache() = default; Loading libs/renderengine/skia/SkiaRenderEngine.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -243,8 +243,8 @@ namespace skia { using base::StringAppendF; std::future<void> SkiaRenderEngine::primeCache() { Cache::primeShaderCache(this); std::future<void> SkiaRenderEngine::primeCache(bool shouldPrimeUltraHDR) { Cache::primeShaderCache(this, shouldPrimeUltraHDR); return {}; } Loading Loading
libs/renderengine/include/renderengine/RenderEngine.h +1 −1 Original line number Diff line number Diff line Loading @@ -107,7 +107,7 @@ public: // This interface, while still in use until a suitable replacement is built, // should be considered deprecated, minus some methods which still may be // used to support legacy behavior. virtual std::future<void> primeCache() = 0; virtual std::future<void> primeCache(bool shouldPrimeUltraHDR) = 0; // dump the extension strings. always call the base class. virtual void dump(std::string& result) = 0; Loading
libs/renderengine/include/renderengine/mock/RenderEngine.h +1 −1 Original line number Diff line number Diff line Loading @@ -33,7 +33,7 @@ public: RenderEngine(); ~RenderEngine() override; MOCK_METHOD0(primeCache, std::future<void>()); MOCK_METHOD1(primeCache, std::future<void>(bool)); MOCK_METHOD1(dump, void(std::string&)); MOCK_CONST_METHOD0(getMaxTextureSize, size_t()); MOCK_CONST_METHOD0(getMaxViewportDims, size_t()); Loading
libs/renderengine/skia/Cache.cpp +12 −8 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include "AutoBackendTexture.h" #include "SkiaRenderEngine.h" #include "android-base/unique_fd.h" #include "cutils/properties.h" #include "renderengine/DisplaySettings.h" #include "renderengine/LayerSettings.h" #include "renderengine/impl/ExternalTexture.h" Loading Loading @@ -629,7 +630,7 @@ static void drawP3ImageLayers(SkiaRenderEngine* renderengine, const DisplaySetti // kFlushAfterEveryLayer = true // in external/skia/src/gpu/gl/builders/GrGLShaderStringBuilder.cpp // gPrintSKSL = true void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { void Cache::primeShaderCache(SkiaRenderEngine* renderengine, bool shouldPrimeUltraHDR) { const int previousCount = renderengine->reportShadersCompiled(); if (previousCount) { ALOGD("%d Shaders already compiled before Cache::primeShaderCache ran\n", previousCount); Loading Loading @@ -755,6 +756,8 @@ void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { externalTexture); drawClippedDimmedImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); if (shouldPrimeUltraHDR) { drawBT2020ClippedImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); drawBT2020ImageLayers(renderengine, bt2020Display, dstTexture, externalTexture); Loading @@ -765,6 +768,7 @@ void Cache::primeShaderCache(SkiaRenderEngine* renderengine) { drawExtendedHDRImageLayers(renderengine, p3DisplayEnhance, dstTexture, externalTexture); drawP3ImageLayers(renderengine, p3DisplayEnhance, dstTexture, externalTexture); } // draw one final layer synchronously to force GL submit LayerSettings layer{ Loading
libs/renderengine/skia/Cache.h +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ class SkiaRenderEngine; class Cache { public: static void primeShaderCache(SkiaRenderEngine*); static void primeShaderCache(SkiaRenderEngine*, bool shouldPrimeUltraHDR); private: Cache() = default; Loading
libs/renderengine/skia/SkiaRenderEngine.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -243,8 +243,8 @@ namespace skia { using base::StringAppendF; std::future<void> SkiaRenderEngine::primeCache() { Cache::primeShaderCache(this); std::future<void> SkiaRenderEngine::primeCache(bool shouldPrimeUltraHDR) { Cache::primeShaderCache(this, shouldPrimeUltraHDR); return {}; } Loading