Evas: Don't pass whole RGBA_Image to low-level render functions
Idea originated from Cedric the b0rker. This is a big fat search-and-replace commit. This commit also introduces space changes... Sorry for the mix. NOTE: This commit may have one side effect as there was some very dubious code chaning the dst image's alpha flag in the Gfx get functions. Logically this didn't make sense (at draw time the dst alpha should already be well defined), so it should be safe.
This commit is contained in:
parent
35beedd3d7
commit
05aee3e370
|
@ -24,43 +24,43 @@ evas_gfx_compositor_get(unsigned char op)
|
|||
RGBA_Gfx_Compositor *comp;
|
||||
|
||||
switch (op)
|
||||
{
|
||||
case _EVAS_RENDER_BLEND:
|
||||
comp = evas_common_gfx_compositor_blend_get();
|
||||
break;
|
||||
case _EVAS_RENDER_BLEND_REL:
|
||||
comp = evas_common_gfx_compositor_blend_rel_get();
|
||||
break;
|
||||
case _EVAS_RENDER_COPY:
|
||||
comp = evas_common_gfx_compositor_copy_get();
|
||||
break;
|
||||
case _EVAS_RENDER_COPY_REL:
|
||||
comp = evas_common_gfx_compositor_copy_rel_get();
|
||||
break;
|
||||
/*
|
||||
case _EVAS_RENDER_ADD:
|
||||
comp = evas_common_gfx_compositor_add_get();
|
||||
break;
|
||||
case _EVAS_RENDER_ADD_REL:
|
||||
comp = evas_common_gfx_compositor_add_rel_get();
|
||||
break;
|
||||
case _EVAS_RENDER_SUB:
|
||||
comp = evas_common_gfx_compositor_sub_get();
|
||||
break;
|
||||
case _EVAS_RENDER_SUB_REL:
|
||||
comp = evas_common_gfx_compositor_sub_rel_get();
|
||||
break;
|
||||
*/
|
||||
case _EVAS_RENDER_MASK:
|
||||
comp = evas_common_gfx_compositor_mask_get();
|
||||
break;
|
||||
case _EVAS_RENDER_MUL:
|
||||
comp = evas_common_gfx_compositor_mul_get();
|
||||
break;
|
||||
default:
|
||||
comp = evas_common_gfx_compositor_blend_get();
|
||||
break;
|
||||
}
|
||||
{
|
||||
case _EVAS_RENDER_BLEND:
|
||||
comp = evas_common_gfx_compositor_blend_get();
|
||||
break;
|
||||
case _EVAS_RENDER_BLEND_REL:
|
||||
comp = evas_common_gfx_compositor_blend_rel_get();
|
||||
break;
|
||||
case _EVAS_RENDER_COPY:
|
||||
comp = evas_common_gfx_compositor_copy_get();
|
||||
break;
|
||||
case _EVAS_RENDER_COPY_REL:
|
||||
comp = evas_common_gfx_compositor_copy_rel_get();
|
||||
break;
|
||||
/*
|
||||
case _EVAS_RENDER_ADD:
|
||||
comp = evas_common_gfx_compositor_add_get();
|
||||
break;
|
||||
case _EVAS_RENDER_ADD_REL:
|
||||
comp = evas_common_gfx_compositor_add_rel_get();
|
||||
break;
|
||||
case _EVAS_RENDER_SUB:
|
||||
comp = evas_common_gfx_compositor_sub_get();
|
||||
break;
|
||||
case _EVAS_RENDER_SUB_REL:
|
||||
comp = evas_common_gfx_compositor_sub_rel_get();
|
||||
break;
|
||||
*/
|
||||
case _EVAS_RENDER_MASK:
|
||||
comp = evas_common_gfx_compositor_mask_get();
|
||||
break;
|
||||
case _EVAS_RENDER_MUL:
|
||||
comp = evas_common_gfx_compositor_mul_get();
|
||||
break;
|
||||
default:
|
||||
comp = evas_common_gfx_compositor_blend_get();
|
||||
break;
|
||||
}
|
||||
return comp;
|
||||
}
|
||||
|
||||
|
@ -88,7 +88,7 @@ evas_common_blend_init(void)
|
|||
comp = evas_common_gfx_compositor_blend_rel_get();
|
||||
if (comp) comp->init();
|
||||
|
||||
/*
|
||||
/*
|
||||
comp = evas_common_gfx_compositor_add_get();
|
||||
if (comp) comp->init();
|
||||
comp = evas_common_gfx_compositor_add_rel_get();
|
||||
|
@ -120,7 +120,7 @@ evas_common_blend_shutdown(void)
|
|||
comp = evas_common_gfx_compositor_blend_rel_get();
|
||||
if (comp) comp->shutdown();
|
||||
|
||||
/*
|
||||
/*
|
||||
comp = evas_common_gfx_compositor_add_get();
|
||||
if (comp) comp->shutdown();
|
||||
comp = evas_common_gfx_compositor_add_rel_get();
|
||||
|
@ -129,7 +129,8 @@ evas_common_blend_shutdown(void)
|
|||
if (comp) comp->shutdown();
|
||||
comp = evas_common_gfx_compositor_sub_rel_get();
|
||||
if (comp) comp->shutdown();
|
||||
*/
|
||||
*/
|
||||
|
||||
comp = evas_common_gfx_compositor_mask_get();
|
||||
if (comp) comp->shutdown();
|
||||
|
||||
|
@ -139,12 +140,12 @@ evas_common_blend_shutdown(void)
|
|||
|
||||
|
||||
RGBA_Gfx_Func
|
||||
evas_common_gfx_func_composite_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels, int op)
|
||||
evas_common_gfx_func_composite_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Func func = NULL;
|
||||
|
||||
if (src && (!src->cache_entry.flags.alpha))
|
||||
if (!src_alpha)
|
||||
{
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
|
@ -152,14 +153,14 @@ evas_common_gfx_func_composite_pixel_span_get(RGBA_Image *src, RGBA_Image *dst,
|
|||
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_span_get(src, dst, pixels);
|
||||
func = comp->composite_pixel_span_get(src_alpha, src_sparse_alpha, dst_alpha, pixels);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_span_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Func
|
||||
evas_common_gfx_func_composite_color_span_get(DATA32 col, RGBA_Image *dst, int pixels, int op)
|
||||
evas_common_gfx_func_composite_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Func func = NULL;
|
||||
|
@ -171,80 +172,80 @@ evas_common_gfx_func_composite_color_span_get(DATA32 col, RGBA_Image *dst, int p
|
|||
}
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_color_span_get(col, dst, pixels);
|
||||
func = comp->composite_color_span_get(col, dst_alpha, pixels);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_span_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Func
|
||||
evas_common_gfx_func_composite_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels, int op)
|
||||
evas_common_gfx_func_composite_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Func func = NULL;
|
||||
|
||||
if ((src && (!src->cache_entry.flags.alpha)) && ((col & 0xff000000) == 0xff000000))
|
||||
if ((!src_alpha) && ((col & 0xff000000) == 0xff000000))
|
||||
{
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
}
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_color_span_get(src, col, dst, pixels);
|
||||
func = comp->composite_pixel_color_span_get(src_alpha, src_sparse_alpha, col, dst_alpha, pixels);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_span_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Func
|
||||
evas_common_gfx_func_composite_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels, int op)
|
||||
evas_common_gfx_func_composite_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Func func = NULL;
|
||||
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_mask_color_span_get(col, dst, pixels);
|
||||
func = comp->composite_mask_color_span_get(col, dst_alpha, pixels);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_span_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Func
|
||||
evas_common_gfx_func_composite_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels, int op)
|
||||
evas_common_gfx_func_composite_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Func func = NULL;
|
||||
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_mask_span_get(src, dst, pixels);
|
||||
func = comp->composite_pixel_mask_span_get(src_alpha, src_sparse_alpha, dst_alpha, pixels);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_span_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Pt_Func
|
||||
evas_common_gfx_func_composite_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst, int op)
|
||||
evas_common_gfx_func_composite_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Pt_Func func = NULL;
|
||||
|
||||
if (!src_flags.alpha)
|
||||
if (!src_alpha)
|
||||
{
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
}
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_pt_get(src_flags, dst);
|
||||
func = comp->composite_pixel_pt_get(src_alpha, dst_alpha);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_pt_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Pt_Func
|
||||
evas_common_gfx_func_composite_color_pt_get(DATA32 col, RGBA_Image *dst, int op)
|
||||
evas_common_gfx_func_composite_color_pt_get(DATA32 col, Eina_Bool dst_alpha, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Pt_Func func = NULL;
|
||||
|
@ -256,55 +257,55 @@ evas_common_gfx_func_composite_color_pt_get(DATA32 col, RGBA_Image *dst, int op)
|
|||
}
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_color_pt_get(col, dst);
|
||||
func = comp->composite_color_pt_get(col, dst_alpha);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_pt_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Pt_Func
|
||||
evas_common_gfx_func_composite_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst, int op)
|
||||
evas_common_gfx_func_composite_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Pt_Func func = NULL;
|
||||
|
||||
if ((!src_flags.alpha) && ((col & 0xff000000) == 0xff000000))
|
||||
if ((!src_alpha) && ((col & 0xff000000) == 0xff000000))
|
||||
{
|
||||
if (op == _EVAS_RENDER_BLEND) op = _EVAS_RENDER_COPY;
|
||||
else if (op == _EVAS_RENDER_BLEND_REL) op = _EVAS_RENDER_COPY_REL;
|
||||
}
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_color_pt_get(src_flags, col, dst);
|
||||
func = comp->composite_pixel_color_pt_get(src_alpha, col, dst_alpha);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_pt_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Pt_Func
|
||||
evas_common_gfx_func_composite_mask_color_pt_get(DATA32 col, RGBA_Image *dst, int op)
|
||||
evas_common_gfx_func_composite_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Pt_Func func = NULL;
|
||||
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_mask_color_pt_get(col, dst);
|
||||
func = comp->composite_mask_color_pt_get(col, dst_alpha);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_pt_nothing;
|
||||
}
|
||||
|
||||
RGBA_Gfx_Pt_Func
|
||||
evas_common_gfx_func_composite_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst, int op)
|
||||
evas_common_gfx_func_composite_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha, int op)
|
||||
{
|
||||
RGBA_Gfx_Compositor *comp;
|
||||
RGBA_Gfx_Pt_Func func = NULL;
|
||||
|
||||
comp = evas_gfx_compositor_get(op);
|
||||
if (comp)
|
||||
func = comp->composite_pixel_mask_pt_get(src_flags, dst);
|
||||
func = comp->composite_pixel_mask_pt_get(src_alpha, dst_alpha);
|
||||
if (func)
|
||||
return func;
|
||||
return func;
|
||||
return _composite_pt_nothing;
|
||||
}
|
||||
|
|
|
@ -15,17 +15,17 @@ RGBA_Gfx_Compositor *evas_common_gfx_compositor_sub_rel_get(void);
|
|||
RGBA_Gfx_Compositor *evas_common_gfx_compositor_mask_get (void);
|
||||
RGBA_Gfx_Compositor *evas_common_gfx_compositor_mul_get (void);
|
||||
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_span_get (RGBA_Image *src, RGBA_Image *dst, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_color_span_get (DATA32 col, RGBA_Image *dst, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_color_span_get (RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_mask_color_span_get (DATA32 col, RGBA_Image *dst, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_mask_span_get (RGBA_Image *src, RGBA_Image *dst, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_span_get (Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_color_span_get (DATA32 col, Eina_Bool dst_alpha, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_color_span_get (Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_mask_color_span_get (DATA32 col, Eina_Bool dst_alpha, int pixels, int op);
|
||||
RGBA_Gfx_Func evas_common_gfx_func_composite_pixel_mask_span_get (Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels, int op);
|
||||
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_pt_get (Image_Entry_Flags src_flags, RGBA_Image *dst, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_color_pt_get (DATA32 col, RGBA_Image *dst, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_color_pt_get (Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_mask_color_pt_get (DATA32 col, RGBA_Image *dst, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_mask_pt_get (Image_Entry_Flags src_flags, RGBA_Image *dst, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_pt_get (Eina_Bool src_alpha, Eina_Bool dst_alpha, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_color_pt_get (DATA32 col, Eina_Bool dst_alpha, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_color_pt_get (Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_mask_color_pt_get (DATA32 col, Eina_Bool dst_alpha, int op);
|
||||
RGBA_Gfx_Pt_Func evas_common_gfx_func_composite_pixel_mask_pt_get (Eina_Bool src_alpha, Eina_Bool dst_alpha, int op);
|
||||
|
||||
/* Alpha/mask functions */
|
||||
Alpha_Gfx_Func evas_common_alpha_func_get (int op);
|
||||
|
|
|
@ -255,7 +255,7 @@ evas_common_font_draw_cb(RGBA_Image *dst, RGBA_Draw_Context *dc, int x, int y, E
|
|||
im_h = dst->cache_entry.h;
|
||||
|
||||
// evas_common_font_size_use(fn);
|
||||
func = evas_common_gfx_func_composite_mask_color_span_get(dc->col.col, dst, 1, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_mask_color_span_get(dc->col.col, dst->cache_entry.flags.alpha, 1, dc->render_op);
|
||||
|
||||
if (!dc->cutout.rects)
|
||||
{
|
||||
|
@ -366,7 +366,7 @@ evas_common_font_draw_prepare_cutout(Cutout_Rects **reuse, RGBA_Image *dst, RGBA
|
|||
im_w = dst->cache_entry.w;
|
||||
im_h = dst->cache_entry.h;
|
||||
|
||||
*func = evas_common_gfx_func_composite_mask_color_span_get(dc->col.col, dst, 1, dc->render_op);
|
||||
*func = evas_common_gfx_func_composite_mask_color_span_get(dc->col.col, dst->cache_entry.flags.alpha, 1, dc->render_op);
|
||||
|
||||
evas_common_draw_context_clip_clip(dc, 0, 0, im_w, im_h);
|
||||
if (dc->clip.w <= 0) return EINA_FALSE;
|
||||
|
|
|
@ -49,7 +49,7 @@ _evas_draw_point(RGBA_Image *dst, RGBA_Draw_Context *dc, int x, int y)
|
|||
# endif
|
||||
#endif
|
||||
{
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(dc->col.col, dst, dc->render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(dc->col.col, dst->cache_entry.flags.alpha, dc->render_op);
|
||||
if (pfunc)
|
||||
pfunc(0, 255, dc->col.col, dst->image.data + (dst->cache_entry.w * y) + x);
|
||||
}
|
||||
|
@ -70,7 +70,7 @@ evas_common_line_point_draw(RGBA_Image *dst, int clip_x, int clip_y, int clip_w,
|
|||
if ((!no_cuse) && (!IN_RECT(x, y, clip_x, clip_y, clip_w, clip_h)))
|
||||
return;
|
||||
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst->cache_entry.flags.alpha, render_op);
|
||||
if (pfunc)
|
||||
pfunc(0, 255, color, dst->image.data + (dst->cache_entry.w * y) + x);
|
||||
}
|
||||
|
@ -147,7 +147,7 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i
|
|||
# endif
|
||||
#endif
|
||||
{
|
||||
sfunc = evas_common_gfx_func_composite_color_span_get(color, dst, len, dc->render_op);
|
||||
sfunc = evas_common_gfx_func_composite_color_span_get(color, dst->cache_entry.flags.alpha, len, dc->render_op);
|
||||
if (sfunc)
|
||||
sfunc(NULL, NULL, color, p, len);
|
||||
}
|
||||
|
@ -155,7 +155,7 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i
|
|||
return;
|
||||
}
|
||||
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, dc->render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst->cache_entry.flags.alpha, dc->render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
if (dx == 0)
|
||||
|
@ -488,13 +488,13 @@ _draw_render_thread_simple_line(RGBA_Image *dst, int clip_x, int clip_y, int cli
|
|||
|
||||
len = x1 - x0 + 1;
|
||||
p = dst->image.data + (dstw * y0) + x0;
|
||||
sfunc = evas_common_gfx_func_composite_color_span_get(color, dst, len, render_op);
|
||||
sfunc = evas_common_gfx_func_composite_color_span_get(color, dst->cache_entry.flags.alpha, len, render_op);
|
||||
if (sfunc) sfunc(NULL, NULL, color, p, len);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst->cache_entry.flags.alpha, render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
if (dx == 0)
|
||||
|
@ -767,7 +767,7 @@ evas_common_line_draw_line(RGBA_Image *dst, int clip_x, int clip_y, int clip_w,
|
|||
return;
|
||||
}
|
||||
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst->cache_entry.flags.alpha, render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
clx = clip_x;
|
||||
|
@ -896,7 +896,7 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1,
|
|||
}
|
||||
|
||||
color = dc->col.col;
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, dc->render_op);
|
||||
pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst->cache_entry.flags.alpha, dc->render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
clx = dc->clip.x;
|
||||
|
@ -1053,7 +1053,7 @@ evas_common_line_draw_line_aa(RGBA_Image *dst, int clip_x, int clip_y, int clip_
|
|||
return;
|
||||
}
|
||||
|
||||
pfunc = evas_common_gfx_func_composite_mask_color_pt_get(color, dst, render_op);
|
||||
pfunc = evas_common_gfx_func_composite_mask_color_pt_get(color, dst->cache_entry.flags.alpha, render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
clx = clip_x;
|
||||
|
@ -1202,7 +1202,7 @@ _evas_draw_line_aa(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x
|
|||
}
|
||||
|
||||
color = dc->col.col;
|
||||
pfunc = evas_common_gfx_func_composite_mask_color_pt_get(color, dst, dc->render_op);
|
||||
pfunc = evas_common_gfx_func_composite_mask_color_pt_get(color, dst->cache_entry.flags.alpha, dc->render_op);
|
||||
if (!pfunc) return;
|
||||
|
||||
clx = dc->clip.x;
|
||||
|
|
|
@ -93,9 +93,9 @@ FUNC_NAME(RGBA_Image *src, RGBA_Image *dst,
|
|||
pa = src->cache_entry.flags.alpha;
|
||||
if (havea) src->cache_entry.flags.alpha = 1;
|
||||
if (mul_col != 0xffffffff)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, mul_col, dst, cw, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, mul_col, dst->cache_entry.flags.alpha, cw, render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, cw, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, cw, render_op);
|
||||
src->cache_entry.flags.alpha = pa;
|
||||
}
|
||||
|
||||
|
@ -161,9 +161,9 @@ FUNC_NAME_DO(RGBA_Image *src, RGBA_Image *dst,
|
|||
pa = src->cache_entry.flags.alpha;
|
||||
if (ms->havea) src->cache_entry.flags.alpha = 1;
|
||||
if (dc->mul.use)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, dc->mul.col, dst, cw, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dc->mul.col, dst->cache_entry.flags.alpha, cw, dc->render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, cw, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, cw, dc->render_op);
|
||||
src->cache_entry.flags.alpha = pa;
|
||||
}
|
||||
|
||||
|
|
|
@ -5,17 +5,17 @@ static RGBA_Gfx_Pt_Func op_add_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CPU
|
|||
static void op_add_init(void);
|
||||
static void op_add_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_add_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_add = { "add",
|
||||
op_add_init, op_add_shutdown,
|
||||
|
@ -39,17 +39,17 @@ static RGBA_Gfx_Pt_Func op_add_rel_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST]
|
|||
static void op_add_rel_init(void);
|
||||
static void op_add_rel_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_add_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_add_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_add_rel = { "add_rel",
|
||||
op_add_rel_init, op_add_rel_shutdown,
|
||||
|
@ -141,19 +141,19 @@ add_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -163,17 +163,17 @@ op_add_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -181,13 +181,13 @@ op_add_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pi
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -197,19 +197,19 @@ op_add_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -234,19 +234,19 @@ add_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_add_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_add_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -256,17 +256,17 @@ op_add_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_add_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -274,13 +274,13 @@ op_add_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *d
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_add_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -290,19 +290,19 @@ op_add_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_add_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -365,19 +365,19 @@ add_rel_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -387,17 +387,17 @@ op_add_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -405,13 +405,13 @@ op_add_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, in
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -421,19 +421,19 @@ op_add_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUS
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_add_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_add_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -458,19 +458,19 @@ add_rel_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_add_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_add_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -480,17 +480,17 @@ op_add_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_add_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -498,13 +498,13 @@ op_add_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Imag
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_add_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -514,19 +514,19 @@ op_add_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_add_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_add_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return add_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -6,17 +6,17 @@ RGBA_Gfx_Pt_Func op_blend_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CPU_LAST
|
|||
static void op_blend_init(void);
|
||||
static void op_blend_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_blend_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_blend = { "blend",
|
||||
op_blend_init, op_blend_shutdown,
|
||||
|
@ -41,17 +41,17 @@ RGBA_Gfx_Pt_Func op_blend_rel_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CPU_
|
|||
static void op_blend_rel_init(void);
|
||||
static void op_blend_rel_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_blend_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_blend_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_blend_rel = { "blend_rel",
|
||||
op_blend_rel_init, op_blend_rel_shutdown,
|
||||
|
@ -190,23 +190,23 @@ blend_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
s = SP;
|
||||
if (src->cache_entry.flags.alpha_sparse)
|
||||
if (src_sparse_alpha)
|
||||
s = SP_AS;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -216,20 +216,20 @@ op_blend_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
s = SP;
|
||||
if (src->cache_entry.flags.alpha_sparse)
|
||||
if (src_sparse_alpha)
|
||||
s = SP_AS;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
|
@ -238,13 +238,13 @@ op_blend_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -254,23 +254,23 @@ op_blend_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
s = SP;
|
||||
if (src->cache_entry.flags.alpha_sparse)
|
||||
if (src_sparse_alpha)
|
||||
s = SP_AS;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -312,19 +312,19 @@ blend_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_blend_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_blend_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -334,17 +334,17 @@ op_blend_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_blend_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -352,13 +352,13 @@ op_blend_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_blend_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -368,19 +368,19 @@ op_blend_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_blend_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -475,23 +475,23 @@ blend_rel_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
s = SP;
|
||||
if (src->cache_entry.flags.alpha_sparse)
|
||||
if (src_sparse_alpha)
|
||||
s = SP_AS;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -501,17 +501,17 @@ op_blend_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -519,13 +519,13 @@ op_blend_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst,
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -535,23 +535,23 @@ op_blend_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UN
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_blend_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_blend_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
s = SP;
|
||||
if (src->cache_entry.flags.alpha_sparse)
|
||||
if (src_sparse_alpha)
|
||||
s = SP_AS;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -592,19 +592,19 @@ blend_rel_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_blend_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_blend_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -614,17 +614,17 @@ op_blend_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_blend_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -632,13 +632,13 @@ op_blend_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Im
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_blend_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -648,19 +648,19 @@ op_blend_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_blend_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_blend_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return blend_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -7,17 +7,17 @@ static RGBA_Gfx_Pt_Func op_copy_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CP
|
|||
static void op_copy_init(void);
|
||||
static void op_copy_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_copy_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_copy = { "copy",
|
||||
op_copy_init, op_copy_shutdown,
|
||||
|
@ -42,19 +42,19 @@ static RGBA_Gfx_Pt_Func op_copy_rel_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST
|
|||
static void op_copy_rel_init(void);
|
||||
static void op_copy_rel_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_copy_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
/* XXX: doesn't exist
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
*/
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_copy_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_copy_rel = { "copy_rel",
|
||||
op_copy_rel_init, op_copy_rel_shutdown,
|
||||
|
@ -178,73 +178,64 @@ copy_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
|
@ -255,13 +246,11 @@ op_copy_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return copy_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -294,73 +283,64 @@ copy_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_copy_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_copy_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_copy_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_copy_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
|
@ -371,13 +351,11 @@ op_copy_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_copy_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return copy_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -460,74 +438,64 @@ copy_rel_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
|
@ -538,13 +506,11 @@ op_copy_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNU
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_copy_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_copy_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return copy_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -577,24 +543,22 @@ copy_rel_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_copy_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
/* XXX: not used
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_copy_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -608,45 +572,39 @@ op_copy_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
*/
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_copy_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return copy_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_copy_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == ((col >> 24) * 0x01010101))
|
||||
|
@ -657,13 +615,11 @@ op_copy_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_copy_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_copy_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return copy_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -6,17 +6,17 @@ static RGBA_Gfx_Pt_Func op_mask_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CP
|
|||
static void op_mask_init(void);
|
||||
static void op_mask_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_mask_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mask_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mask_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mask_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mask_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_mask = { "mask",
|
||||
op_mask_init, op_mask_shutdown,
|
||||
|
@ -109,73 +109,64 @@ mask_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mask_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mask_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mask_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mask_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mask_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mask_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == (col | 0x00ffffff))
|
||||
|
@ -186,13 +177,11 @@ op_mask_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mask_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mask_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return mask_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -217,73 +206,64 @@ mask_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mask_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_mask_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mask_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_mask_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mask_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mask_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_mask_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == (col | 0x00ffffff))
|
||||
|
@ -294,13 +274,11 @@ op_mask_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mask_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_mask_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return mask_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -6,17 +6,17 @@ static RGBA_Gfx_Pt_Func op_mul_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CPU
|
|||
static void op_mul_init(void);
|
||||
static void op_mul_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_mul_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_mul_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mul_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mul_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mul_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mul_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_mul_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_mul = { "mul",
|
||||
op_mul_init, op_mul_shutdown,
|
||||
|
@ -108,73 +108,64 @@ mul_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mul_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mul_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mul_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mul_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mul_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mul_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mul_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mul_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == (col | 0x00ffffff))
|
||||
|
@ -185,13 +176,11 @@ op_mul_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_mul_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_mul_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha EINA_UNUSED, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return mul_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -216,73 +205,64 @@ mul_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mul_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_mul_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mul_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_mul_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mul_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_mul_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
s = SP;
|
||||
}
|
||||
if ((col >> 24) < 255)
|
||||
{
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
c = SC;
|
||||
}
|
||||
if (col == (col | 0x00ffffff))
|
||||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return mul_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mul_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_mul_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
if (col == (col | 0x00ffffff))
|
||||
|
@ -293,13 +273,11 @@ op_mul_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_mul_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_mul_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP;
|
||||
|
||||
if (dst)
|
||||
dst->cache_entry.flags.alpha = 1;
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
return mul_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -6,17 +6,17 @@ static RGBA_Gfx_Pt_Func op_sub_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST][CPU
|
|||
static void op_sub_init(void);
|
||||
static void op_sub_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_sub_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_sub = { "sub",
|
||||
op_sub_init, op_sub_shutdown,
|
||||
|
@ -40,17 +40,17 @@ static RGBA_Gfx_Pt_Func op_sub_rel_pt_funcs[SP_LAST][SM_LAST][SC_LAST][DP_LAST]
|
|||
static void op_sub_rel_init(void);
|
||||
static void op_sub_rel_shutdown(void);
|
||||
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
static RGBA_Gfx_Func op_sub_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha);
|
||||
static RGBA_Gfx_Pt_Func op_sub_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
|
||||
static RGBA_Gfx_Compositor _composite_sub_rel = { "sub_rel",
|
||||
op_sub_rel_init, op_sub_rel_shutdown,
|
||||
|
@ -142,19 +142,19 @@ sub_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -164,17 +164,17 @@ op_sub_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -182,13 +182,13 @@ op_sub_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pi
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -198,19 +198,19 @@ op_sub_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -235,19 +235,19 @@ sub_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_sub_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_sub_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -257,17 +257,17 @@ op_sub_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_sub_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -275,13 +275,13 @@ op_sub_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *d
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_sub_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -291,19 +291,19 @@ op_sub_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_sub_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -366,19 +366,19 @@ sub_rel_gfx_span_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_rel_pixel_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_rel_pixel_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_rel_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -388,17 +388,17 @@ op_sub_rel_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_rel_pixel_color_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -406,13 +406,13 @@ op_sub_rel_pixel_color_span_get(RGBA_Image *src, DATA32 col, RGBA_Image *dst, in
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_rel_mask_color_span_get(DATA32 col, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -422,19 +422,19 @@ op_sub_rel_mask_color_span_get(DATA32 col, RGBA_Image *dst, int pixels EINA_UNUS
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Func
|
||||
op_sub_rel_pixel_mask_span_get(RGBA_Image *src, RGBA_Image *dst, int pixels EINA_UNUSED)
|
||||
op_sub_rel_pixel_mask_span_get(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha EINA_UNUSED, Eina_Bool dst_alpha, int pixels EINA_UNUSED)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src && src->cache_entry.flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_span_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
@ -459,19 +459,19 @@ sub_rel_gfx_pt_func_cpu(int s, int m, int c, int d)
|
|||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_rel_pixel_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_sub_rel_pixel_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_sub_rel_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -481,17 +481,17 @@ op_sub_rel_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst)
|
||||
op_sub_rel_pixel_color_pt_get(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_N, c = SC_AN, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if ((col >> 24) < 255)
|
||||
c = SC;
|
||||
|
@ -499,13 +499,13 @@ op_sub_rel_pixel_color_pt_get(Image_Entry_Flags src_flags, DATA32 col, RGBA_Imag
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
||||
op_sub_rel_mask_color_pt_get(DATA32 col, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_N, m = SM_AS, c = SC_AN, d = DP_AN;
|
||||
|
||||
|
@ -515,19 +515,19 @@ op_sub_rel_mask_color_pt_get(DATA32 col, RGBA_Image *dst)
|
|||
c = SC_AA;
|
||||
if (col == 0xffffffff)
|
||||
c = SC_N;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
||||
static RGBA_Gfx_Pt_Func
|
||||
op_sub_rel_pixel_mask_pt_get(Image_Entry_Flags src_flags, RGBA_Image *dst)
|
||||
op_sub_rel_pixel_mask_pt_get(Eina_Bool src_alpha, Eina_Bool dst_alpha)
|
||||
{
|
||||
int s = SP_AN, m = SM_AS, c = SC_N, d = DP_AN;
|
||||
|
||||
if (src_flags.alpha)
|
||||
if (src_alpha)
|
||||
s = SP;
|
||||
if (dst && dst->cache_entry.flags.alpha)
|
||||
if (dst_alpha)
|
||||
d = DP;
|
||||
return sub_rel_gfx_pt_func_cpu(s, m, c, d);
|
||||
}
|
||||
|
|
|
@ -279,7 +279,7 @@ evas_common_polygon_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Polygon_Po
|
|||
free(point);
|
||||
free(sorted_index);
|
||||
|
||||
func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst, 1, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst->cache_entry.flags.alpha, 1, dc->render_op);
|
||||
if (spans)
|
||||
{
|
||||
RGBA_Span *span;
|
||||
|
@ -435,7 +435,7 @@ evas_common_polygon_rgba_draw(RGBA_Image *dst, int ext_x, int ext_y, int ext_w,
|
|||
free(point);
|
||||
free(sorted_index);
|
||||
|
||||
func = evas_common_gfx_func_composite_color_span_get(col, dst, 1, render_op);
|
||||
func = evas_common_gfx_func_composite_color_span_get(col, dst->cache_entry.flags.alpha, 1, render_op);
|
||||
if (spans)
|
||||
{
|
||||
RGBA_Span *span;
|
||||
|
|
|
@ -132,7 +132,7 @@ rectangle_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, int x, int y, in
|
|||
# endif
|
||||
#endif
|
||||
{
|
||||
func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst, w, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst->cache_entry.flags.alpha, w, dc->render_op);
|
||||
ptr = dst->image.data + (y * dst->cache_entry.w) + x;
|
||||
for (yy = 0; yy < h; yy++)
|
||||
{
|
||||
|
@ -150,7 +150,7 @@ evas_common_rectangle_rgba_draw(RGBA_Image *dst, DATA32 color, int render_op, in
|
|||
DATA32 *ptr;
|
||||
int yy;
|
||||
|
||||
func = evas_common_gfx_func_composite_color_span_get(color, dst, w, render_op);
|
||||
func = evas_common_gfx_func_composite_color_span_get(color, dst->cache_entry.flags.alpha, w, render_op);
|
||||
ptr = dst->image.data + (y * dst->cache_entry.w) + x;
|
||||
for (yy = 0; yy < h; yy++)
|
||||
{
|
||||
|
|
|
@ -199,9 +199,9 @@ evas_common_scale_rgba_sample_draw(RGBA_Image *src, RGBA_Image *dst, int dst_cli
|
|||
dst_ptr = dst_data + dst_clip_x + (dst_clip_y * dst_w);
|
||||
|
||||
if (mul_col != 0xffffffff)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, mul_col, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, mul_col, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
|
||||
if ((dst_region_w == src_region_w) && (dst_region_h == src_region_h))
|
||||
{
|
||||
|
@ -396,9 +396,9 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst,
|
|||
dst_ptr = dst_data + dst_clip_x + (dst_clip_y * dst_w);
|
||||
|
||||
if (dc->mul.use)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, dc->mul.col, dst, dst_clip_w, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dc->mul.col, dst->cache_entry.flags.alpha, dst_clip_w, dc->render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, dst_clip_w, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, dst_clip_w, dc->render_op);
|
||||
|
||||
if ((dst_region_w == src_region_w) && (dst_region_h == src_region_h))
|
||||
{
|
||||
|
|
|
@ -19,9 +19,9 @@
|
|||
buf = alloca(dst_clip_w * sizeof(DATA32));
|
||||
|
||||
if (mul_col != 0xffffffff)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, mul_col, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, mul_col, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
/* scaling down vertically */
|
||||
if ((dst_region_w >= src_region_w) &&
|
||||
(dst_region_h < src_region_h))
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
|
||||
ptr = src->image.data + ((dst_clip_y - dst_region_y + src_region_y) * src_w) + (dst_clip_x - dst_region_x) + src_region_x;
|
||||
if (mul_col != 0xffffffff)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, mul_col, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, mul_col, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
|
||||
while (dst_clip_h--)
|
||||
{
|
||||
|
|
|
@ -34,9 +34,9 @@
|
|||
{
|
||||
buf = alloca(dst_clip_w * sizeof(DATA32));
|
||||
if (mul_col != 0xffffffff)
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src, mul_col, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_color_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, mul_col, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
else
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src, dst, dst_clip_w, render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, dst_clip_w, render_op);
|
||||
}
|
||||
else
|
||||
buf = pdst;
|
||||
|
|
|
@ -69,7 +69,7 @@ _image_draw_cpu_alpha2rgba(void *data EINA_UNUSED, void *context,
|
|||
EINA_SAFETY_ON_FALSE_RETURN_VAL((src_w == dst_w) && (src_h == dst_h), EINA_FALSE);
|
||||
|
||||
func = evas_common_gfx_func_composite_mask_color_span_get
|
||||
(dc->color, surface, 1, dc->render_op);
|
||||
(dc->color, dst->cache_entry.flags.alpha, 1, dc->render_op);
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(func, EINA_FALSE);
|
||||
|
||||
sw = src->cache_entry.w;
|
||||
|
@ -208,7 +208,7 @@ _image_draw_cpu_rgba2rgba(void *data EINA_UNUSED, void *context,
|
|||
|
||||
EINA_SAFETY_ON_FALSE_RETURN_VAL((src_w == dst_w) && (src_h == dst_h), EINA_FALSE);
|
||||
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(image, surface, 1, dc->render_op);
|
||||
func = evas_common_gfx_func_composite_pixel_span_get(src->cache_entry.flags.alpha, src->cache_entry.flags.alpha_sparse, dst->cache_entry.flags.alpha, 1, dc->render_op);
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(func, EINA_FALSE);
|
||||
|
||||
sw = src->cache_entry.w;
|
||||
|
|
|
@ -220,8 +220,8 @@ _mask_cpu_alpha_rgba_rgba(Evas_Filter_Command *cmd)
|
|||
stepcount = w / stepsize;
|
||||
span = malloc(stepsize * sizeof(DATA32));
|
||||
|
||||
func1 = evas_common_gfx_func_composite_pixel_mask_span_get(mask, out, 1, EVAS_RENDER_COPY);
|
||||
func2 = evas_common_gfx_func_composite_pixel_color_span_get(mask, color2, out, 1, op);
|
||||
func1 = evas_common_gfx_func_composite_pixel_mask_span_get(mask->cache_entry.flags.alpha, mask->cache_entry.flags.alpha_sparse, out->cache_entry.flags.alpha, 1, EVAS_RENDER_COPY);
|
||||
func2 = evas_common_gfx_func_composite_pixel_color_span_get(mask->cache_entry.flags.alpha, mask->cache_entry.flags.alpha_sparse, color2, out->cache_entry.flags.alpha, 1, op);
|
||||
|
||||
// Apply mask using Gfx functions
|
||||
for (y = 0, my = 0; y < h; y++, my++, msk += mw)
|
||||
|
@ -313,7 +313,7 @@ _mask_cpu_alpha_alpha_rgba(Evas_Filter_Command *cmd)
|
|||
stepcount = w / stepsize;
|
||||
span = malloc(stepsize * sizeof(DATA8));
|
||||
|
||||
func = evas_common_gfx_func_composite_mask_color_span_get(color, out, 1, op);
|
||||
func = evas_common_gfx_func_composite_mask_color_span_get(color, out->cache_entry.flags.alpha, 1, op);
|
||||
span_func = evas_common_alpha_func_get(EVAS_RENDER_MASK);
|
||||
|
||||
for (y = 0, my = 0; y < h; y++, my++, msk += mw)
|
||||
|
|
|
@ -1011,17 +1011,17 @@ struct _RGBA_Gfx_Compositor
|
|||
void (*init)(void);
|
||||
void (*shutdown)(void);
|
||||
|
||||
RGBA_Gfx_Func (*composite_pixel_span_get)(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
RGBA_Gfx_Func (*composite_color_span_get)(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
RGBA_Gfx_Func (*composite_pixel_color_span_get)(RGBA_Image *src, DATA32 col, RGBA_Image *dst, int pixels);
|
||||
RGBA_Gfx_Func (*composite_mask_color_span_get)(DATA32 col, RGBA_Image *dst, int pixels);
|
||||
RGBA_Gfx_Func (*composite_pixel_mask_span_get)(RGBA_Image *src, RGBA_Image *dst, int pixels);
|
||||
RGBA_Gfx_Func (*composite_pixel_span_get)(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
RGBA_Gfx_Func (*composite_color_span_get)(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
RGBA_Gfx_Func (*composite_pixel_color_span_get)(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
RGBA_Gfx_Func (*composite_mask_color_span_get)(DATA32 col, Eina_Bool dst_alpha, int pixels);
|
||||
RGBA_Gfx_Func (*composite_pixel_mask_span_get)(Eina_Bool src_alpha, Eina_Bool src_sparse_alpha, Eina_Bool dst_alpha, int pixels);
|
||||
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_pt_get)(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
RGBA_Gfx_Pt_Func (*composite_color_pt_get)(DATA32 col, RGBA_Image *dst);
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_color_pt_get)(Image_Entry_Flags src_flags, DATA32 col, RGBA_Image *dst);
|
||||
RGBA_Gfx_Pt_Func (*composite_mask_color_pt_get)(DATA32 col, RGBA_Image *dst);
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_mask_pt_get)(Image_Entry_Flags src_flags, RGBA_Image *dst);
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_pt_get)(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
RGBA_Gfx_Pt_Func (*composite_color_pt_get)(DATA32 col, Eina_Bool dst_alpha);
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_color_pt_get)(Eina_Bool src_alpha, DATA32 col, Eina_Bool dst_alpha);
|
||||
RGBA_Gfx_Pt_Func (*composite_mask_color_pt_get)(DATA32 col, Eina_Bool dst_alpha);
|
||||
RGBA_Gfx_Pt_Func (*composite_pixel_mask_pt_get)(Eina_Bool src_alpha, Eina_Bool dst_alpha);
|
||||
};
|
||||
|
||||
#define EVAS_RECT_SPLIT 1
|
||||
|
|
Loading…
Reference in New Issue