Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 243dbc2c authored by Ana Krulec's avatar Ana Krulec
Browse files

Creating Threaded Skia GL RE

The RE creates a thread and intializes SkiaGLRenderEngine on it.
This first pass is synchronous communication.

Test: adb shell setprop debug.renderengine.backend "skiaglthreaded"
Change-Id: I9811c51f8cc2a999fb2587067bd5dd3a5a972cd1
parent 878166c9
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -41,6 +41,9 @@ std::unique_ptr<RenderEngine> RenderEngine::create(const RenderEngineCreationArg
    if (strcmp(prop, "skiagl") == 0) {
        renderEngineType = RenderEngineType::SKIA_GL;
    }
    if (strcmp(prop, "skiaglthreaded") == 0) {
        renderEngineType = RenderEngineType::SKIA_GL_THREADED;
    }

    switch (renderEngineType) {
        case RenderEngineType::THREADED:
@@ -49,6 +52,10 @@ std::unique_ptr<RenderEngine> RenderEngine::create(const RenderEngineCreationArg
                    [args]() { return android::renderengine::gl::GLESRenderEngine::create(args); });
        case RenderEngineType::SKIA_GL:
            return renderengine::skia::SkiaGLRenderEngine::create(args);
        case RenderEngineType::SKIA_GL_THREADED:
            return renderengine::threaded::RenderEngineThreaded::create([args]() {
                return android::renderengine::skia::SkiaGLRenderEngine::create(args);
            });
        case RenderEngineType::GLES:
        default:
            ALOGD("RenderEngine with GLES Backend");
+1 −0
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ public:
        GLES = 1,
        THREADED = 2,
        SKIA_GL = 3,
        SKIA_GL_THREADED = 4,
    };

    static std::unique_ptr<RenderEngine> create(const RenderEngineCreationArgs& args);