Loading libs/renderengine/include/renderengine/RenderEngine.h +2 −0 Original line number Diff line number Diff line Loading @@ -194,6 +194,8 @@ public: // Returns the tid of the renderengine thread if it's threaded, and std::nullopt otherwise virtual std::optional<pid_t> getRenderEngineTid() const { return std::nullopt; } virtual void setEnableTracing(bool /*tracingEnabled*/) {} protected: RenderEngine() : RenderEngine(RenderEngineType::GLES) {} Loading libs/renderengine/skia/SkiaRenderEngine.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -20,15 +20,15 @@ #include "SkiaRenderEngine.h" #include <android-base/properties.h> #include <src/core/SkTraceEventCommon.h> namespace android { namespace renderengine { namespace skia { SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) { SkAndroidFrameworkTraceUtil::setEnableTracing( base::GetBoolProperty(PROPERTY_SKIA_ATRACE_ENABLED, false)); SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) {} void SkiaRenderEngine::setEnableTracing(bool tracingEnabled) { SkAndroidFrameworkTraceUtil::setEnableTracing(tracingEnabled); } } // namespace skia } // namespace renderengine Loading libs/renderengine/skia/SkiaRenderEngine.h +1 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ public: virtual int getContextPriority() override { return 0; } virtual void assertShadersCompiled(int numShaders) {} virtual int reportShadersCompiled() { return 0; } virtual void setEnableTracing(bool tracingEnabled) override; protected: virtual void mapExternalTextureBuffer(const sp<GraphicBuffer>& /*buffer*/, Loading libs/renderengine/threaded/RenderEngineThreaded.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -403,6 +403,18 @@ std::optional<pid_t> RenderEngineThreaded::getRenderEngineTid() const { return std::make_optional(tidFuture.get()); } void RenderEngineThreaded::setEnableTracing(bool tracingEnabled) { // This function is designed so it can run asynchronously, so we do not need to wait // for the futures. { std::lock_guard lock(mThreadMutex); mFunctionCalls.push([tracingEnabled](renderengine::RenderEngine& instance) { ATRACE_NAME("REThreaded::setEnableTracing"); instance.setEnableTracing(tracingEnabled); }); } mCondition.notify_one(); } } // namespace threaded } // namespace renderengine } // namespace android libs/renderengine/threaded/RenderEngineThreaded.h +1 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,7 @@ public: bool supportsBackgroundBlur() override; void onActiveDisplaySizeChanged(ui::Size size) override; std::optional<pid_t> getRenderEngineTid() const override; void setEnableTracing(bool tracingEnabled) override; protected: void mapExternalTextureBuffer(const sp<GraphicBuffer>& buffer, bool isRenderable) override; Loading Loading
libs/renderengine/include/renderengine/RenderEngine.h +2 −0 Original line number Diff line number Diff line Loading @@ -194,6 +194,8 @@ public: // Returns the tid of the renderengine thread if it's threaded, and std::nullopt otherwise virtual std::optional<pid_t> getRenderEngineTid() const { return std::nullopt; } virtual void setEnableTracing(bool /*tracingEnabled*/) {} protected: RenderEngine() : RenderEngine(RenderEngineType::GLES) {} Loading
libs/renderengine/skia/SkiaRenderEngine.cpp +4 −4 Original line number Diff line number Diff line Loading @@ -20,15 +20,15 @@ #include "SkiaRenderEngine.h" #include <android-base/properties.h> #include <src/core/SkTraceEventCommon.h> namespace android { namespace renderengine { namespace skia { SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) { SkAndroidFrameworkTraceUtil::setEnableTracing( base::GetBoolProperty(PROPERTY_SKIA_ATRACE_ENABLED, false)); SkiaRenderEngine::SkiaRenderEngine(RenderEngineType type) : RenderEngine(type) {} void SkiaRenderEngine::setEnableTracing(bool tracingEnabled) { SkAndroidFrameworkTraceUtil::setEnableTracing(tracingEnabled); } } // namespace skia } // namespace renderengine Loading
libs/renderengine/skia/SkiaRenderEngine.h +1 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ public: virtual int getContextPriority() override { return 0; } virtual void assertShadersCompiled(int numShaders) {} virtual int reportShadersCompiled() { return 0; } virtual void setEnableTracing(bool tracingEnabled) override; protected: virtual void mapExternalTextureBuffer(const sp<GraphicBuffer>& /*buffer*/, Loading
libs/renderengine/threaded/RenderEngineThreaded.cpp +12 −0 Original line number Diff line number Diff line Loading @@ -403,6 +403,18 @@ std::optional<pid_t> RenderEngineThreaded::getRenderEngineTid() const { return std::make_optional(tidFuture.get()); } void RenderEngineThreaded::setEnableTracing(bool tracingEnabled) { // This function is designed so it can run asynchronously, so we do not need to wait // for the futures. { std::lock_guard lock(mThreadMutex); mFunctionCalls.push([tracingEnabled](renderengine::RenderEngine& instance) { ATRACE_NAME("REThreaded::setEnableTracing"); instance.setEnableTracing(tracingEnabled); }); } mCondition.notify_one(); } } // namespace threaded } // namespace renderengine } // namespace android
libs/renderengine/threaded/RenderEngineThreaded.h +1 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,7 @@ public: bool supportsBackgroundBlur() override; void onActiveDisplaySizeChanged(ui::Size size) override; std::optional<pid_t> getRenderEngineTid() const override; void setEnableTracing(bool tracingEnabled) override; protected: void mapExternalTextureBuffer(const sp<GraphicBuffer>& buffer, bool isRenderable) override; Loading