evas ector: add software implmentation for masking feature. 19/194719/3
authorHermet Park <hermetpark@gmail.com>
Fri, 7 Dec 2018 05:11:09 +0000 (14:11 +0900)
committerHermet Park <hermetpark@gmail.com>
Fri, 7 Dec 2018 06:26:05 +0000 (15:26 +0900)
commitba8d868cc21540865aaf0d6bb12b7fada8524b80
tree56984b4575f4e25b5c72a9bce6fd0c258341752a
parent63f92f6aef3b50d37f80f1be731c5e838abefea0
evas ector: add software implmentation for masking feature.

This implementation uses Ector_Buffer to generate mask image from vg container,
and pass it to Ector engine. Ector renderer could blend this image as a mask.
Yet only vg container works as a mask, we could extend shape to support masking as well.

Change-Id: I6faea19084b0399172b877eb56364601f2adf584
20 files changed:
src/lib/ector/ector_private.h
src/lib/ector/ector_renderer.c
src/lib/ector/ector_renderer.eo
src/lib/ector/software/ector_renderer_software_shape.c
src/lib/ector/software/ector_renderer_software_shape.eo
src/lib/ector/software/ector_software_buffer.c
src/lib/ector/software/ector_software_private.h
src/lib/ector/software/ector_software_rasterizer.c
src/lib/evas/canvas/efl_canvas_vg_container.c
src/lib/evas/canvas/efl_canvas_vg_container.eo
src/lib/evas/canvas/efl_canvas_vg_gradient_linear.c
src/lib/evas/canvas/efl_canvas_vg_gradient_radial.c
src/lib/evas/canvas/efl_canvas_vg_node.c
src/lib/evas/canvas/efl_canvas_vg_node.eo
src/lib/evas/canvas/efl_canvas_vg_object.c
src/lib/evas/canvas/efl_canvas_vg_shape.c
src/lib/evas/canvas/evas_vg_private.h
src/lib/evas/include/evas_private.h
src/modules/evas/engines/gl_generic/evas_engine.c
src/modules/evas/engines/software_generic/evas_engine.c