struct _Evas_Ector_GL_Buffer_Data
{
- Render_Output_GL_Generic *re;
+ Render_Engine_GL_Generic *re;
Evas_GL_Image *glim;
Eina_Bool alpha_only, was_render;
Ector_GL_Buffer_Map *maps;
int w, int h, Efl_Gfx_Colorspace cspace,
Ector_Buffer_Flag flags EINA_UNUSED)
{
- Render_Output_GL_Generic *re = engine;
+ Render_Engine_GL_Generic *re = engine;
Evas_Engine_GL_Context *gc;
Evas_GL_Image *im;
fail("Unsupported colorspace: %u", cspace);
pd->re = re;
- gc = re->window_gl_context_get(re->software.ob);
-
+ gc = gl_generic_context_find(re, 1);
im = evas_gl_common_image_surface_new(gc, w, h, EINA_TRUE, EINA_FALSE);
if (!im) fail("Failed to create GL surface!");
//------------------------------------------------//
static GL_Filter_Apply_Func
-_gfx_filter_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gfx_filter_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
GL_Filter_Apply_Func funcptr = NULL;
static Evas_Filter_Support
eng_gfx_filter_supports(void *engine, Evas_Filter_Command *cmd)
{
- Render_Output_GL_Generic *re = engine;
+ Render_Engine_GL_Generic *re = engine;
if (!_gfx_filter_func_get(re, cmd))
return pfunc.gfx_filter_supports(&re->software, cmd);
static Eina_Bool
eng_gfx_filter_process(void *engine, Evas_Filter_Command *cmd)
{
- Render_Output_GL_Generic *re = engine;
+ Render_Engine_GL_Generic *re = engine;
GL_Filter_Apply_Func funcptr;
funcptr = _gfx_filter_func_get(re, cmd);
extern int _evas_engine_GL_log_dom;
-typedef Eina_Bool (* GL_Filter_Apply_Func) (Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_blend_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_blur_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-//GL_Filter_Apply_Func gl_filter_bump_func_get(Render_Output_GL_Generic *reEvas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_curve_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_displace_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_fill_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
-GL_Filter_Apply_Func gl_filter_mask_func_get(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd);
+typedef Eina_Bool (* GL_Filter_Apply_Func) (Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_blend_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_blur_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+//GL_Filter_Apply_Func gl_filter_bump_func_get(Render_Engine_GL_Generic *reEvas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_curve_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_displace_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_fill_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
+GL_Filter_Apply_Func gl_filter_mask_func_get(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd);
//GL_Filter_Apply_Func gl_filter_transform_func_get(Evas_Filter_Command *cmd);
#undef DBG
}
static Eina_Bool
-_gl_filter_blend(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_blend(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Engine_GL_Context *gc;
Evas_GL_Image *image, *surface;
DEBUG_TIME_BEGIN();
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
image = evas_ector_buffer_drawable_image_get(cmd->input->buffer);
EINA_SAFETY_ON_NULL_RETURN_VAL(image, EINA_FALSE);
}
GL_Filter_Apply_Func
-gl_filter_blend_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_blend_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->output, NULL);
}
static Eina_Bool
-_gl_filter_blur(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_blur(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Engine_GL_Context *gc;
Evas_GL_Image *image, *surface;
d_h = cmd->output->h;
EINA_SAFETY_ON_FALSE_RETURN_VAL(s_w && s_h && d_w && d_h, EINA_FALSE);
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
image = evas_ector_buffer_drawable_image_get(cmd->input->buffer);
EINA_SAFETY_ON_NULL_RETURN_VAL(image, EINA_FALSE);
}
GL_Filter_Apply_Func
-gl_filter_blur_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_blur_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->output, NULL);
#include "gl_engine_filter.h"
static Eina_Bool
-_gl_filter_curve(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_curve(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Engine_GL_Context *gc;
Evas_GL_Image *image, *surface;
DBG("curve %d @%p -> %d @%p", cmd->input->id, cmd->input->buffer,
cmd->output->id, cmd->output->buffer);
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
evas_gl_common_context_target_surface_set(gc, surface);
dc_save = gc->dc;
}
GL_Filter_Apply_Func
-gl_filter_curve_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_curve_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->input, NULL);
#include "gl_engine_filter.h"
static Eina_Bool
-_gl_filter_displace(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_displace(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Engine_GL_Context *gc;
Evas_GL_Image *image, *surface, *orig_map, *use_map;
DBG("displace %d @%p map %d %p -> %d @%p", cmd->input->id, cmd->input->buffer,
cmd->mask->id, cmd->mask->buffer, cmd->output->id, cmd->output->buffer);
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
evas_gl_common_context_target_surface_set(gc, surface);
dc_save = gc->dc;
}
GL_Filter_Apply_Func
-gl_filter_displace_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_displace_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->input, NULL);
#include "gl_engine_filter.h"
static Eina_Bool
-_gl_filter_fill(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_fill(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Filter_Buffer *fb = cmd->output;
Evas_Engine_GL_Context *gc;
cmd->draw.R, cmd->draw.G, cmd->draw.B, cmd->draw.A, x, y, w, h,
fb->id, fb->buffer);
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
evas_gl_common_context_target_surface_set(gc, surface);
dc_save = gc->dc;
}
GL_Filter_Apply_Func
-gl_filter_fill_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_fill_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->output, NULL);
#include "gl_engine_filter.h"
static Eina_Bool
-_gl_filter_mask(Render_Output_GL_Generic *re, Evas_Filter_Command *cmd)
+_gl_filter_mask(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
{
Evas_Engine_GL_Context *gc;
Evas_GL_Image *image, *surface, *orig_mask, *use_mask = NULL;
DBG("mask %d @%p + %d %p -> %d @%p", cmd->input->id, cmd->input->buffer,
cmd->mask->id, cmd->mask->buffer, cmd->output->id, cmd->output->buffer);
- re->window_use(re->software.ob);
- gc = re->window_gl_context_get(re->software.ob);
+ gc = gl_generic_context_find(re, 1);
evas_gl_common_context_target_surface_set(gc, surface);
dc_save = gc->dc;
}
GL_Filter_Apply_Func
-gl_filter_mask_func_get(Render_Output_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
+gl_filter_mask_func_get(Render_Engine_GL_Generic *re EINA_UNUSED, Evas_Filter_Command *cmd)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(cmd->input, NULL);