#define ROUNDUP(s,c) (((s) + (c-1)) & ~(c-1))
-typedef struct _E_Hwc_Windows_Buffer_Comp_Info E_Hwc_Windows_Buffer_Comp_Info;
+typedef struct _E_Hwc_Windows_Comp_Info E_Hwc_Windows_Comp_Info;
-struct _E_Hwc_Windows_Buffer_Comp_Info
+struct _E_Hwc_Windows_Comp_Info
{
E_Presentation_Time_Container presentation_container;
Eina_Bool skip;
}
static void
-_e_hwc_windows_buffer_comp_info_free(void *data)
+_e_hwc_windows_comp_info_free(void *data)
{
- E_Hwc_Windows_Buffer_Comp_Info *comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
- comp_info = (E_Hwc_Windows_Buffer_Comp_Info *)data;
+ comp_info = (E_Hwc_Windows_Comp_Info *)data;
if (!comp_info) return;
e_presentation_time_container_finish(&comp_info->presentation_container);
E_FREE(comp_info);
}
-static E_Hwc_Windows_Buffer_Comp_Info *
-_e_hwc_windows_buffer_comp_info_get(tbm_surface_h tbm_surface)
+static E_Hwc_Windows_Comp_Info *
+_e_hwc_windows_comp_info_get(tbm_surface_h tbm_surface)
{
- E_Hwc_Windows_Buffer_Comp_Info *comp_info = NULL;
+ E_Hwc_Windows_Comp_Info *comp_info = NULL;
tbm_surface_internal_get_user_data(tbm_surface, EHWS_BUFFER_COMP_INFO_KEY,
(void**)&comp_info);
if (comp_info) return comp_info;
- comp_info = E_NEW(E_Hwc_Windows_Buffer_Comp_Info, 1);
+ comp_info = E_NEW(E_Hwc_Windows_Comp_Info, 1);
EINA_SAFETY_ON_FALSE_RETURN_VAL(comp_info, NULL);
e_presentation_time_container_init(&comp_info->presentation_container);
tbm_surface_internal_add_user_data(tbm_surface, EHWS_BUFFER_COMP_INFO_KEY,
- _e_hwc_windows_buffer_comp_info_free);
+ _e_hwc_windows_comp_info_free);
tbm_surface_internal_set_user_data(tbm_surface, EHWS_BUFFER_COMP_INFO_KEY,
comp_info);
if (hwc_window->is_target)
{
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
if (!hwc_window->current.buffer.tsurface) return;
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(hwc_window->current.buffer.tsurface);
- if (!buffer_comp_info) return;
+ comp_info = _e_hwc_windows_comp_info_get(hwc_window->current.buffer.tsurface);
+ if (!comp_info) return;
- container = &buffer_comp_info->presentation_container;
+ container = &comp_info->presentation_container;
}
else
{
E_Hwc_Window_Target *target_hwc_window;
E_Hwc_Window *hwc_window = NULL;
E_Hwc_Window_Queue_Buffer *queue_buffer;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
tdm_hwc *thwc = NULL;
tdm_region fb_damage;
if (hwc_window->current.buffer.tsurface &&
hwc_window->current.buffer.tsurface != hwc_window->display.buffer.tsurface)
{
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(hwc_window->current.buffer.tsurface);
- if (buffer_comp_info)
+ comp_info = _e_hwc_windows_comp_info_get(hwc_window->current.buffer.tsurface);
+ if (comp_info)
e_hwc_window_presentation_time_feedback_take(hwc_window,
- &buffer_comp_info->presentation_container);
+ &comp_info->presentation_container);
if (hwc_window->current.buffer.queue)
{
tdm_region fb_damage;
Eina_List *rendered_windows = NULL;
E_Hwc_Window_Queue_Buffer *queue_buffer = NULL;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
E_Hwc_Window_Queue *queue;
uint32_t n_thw = 0;
const Eina_List *l;
tsurface = queue_buffer->tsurface;
EINA_SAFETY_ON_NULL_RETURN_VAL(tsurface, EINA_FALSE);
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(tsurface);
- if ((buffer_comp_info) && (buffer_comp_info->skip))
+ comp_info = _e_hwc_windows_comp_info_get(tsurface);
+ if ((comp_info) && (comp_info->skip))
{
e_hwc_window_presentation_time_feedback_take(hwc_window,
- &buffer_comp_info->presentation_container);
+ &comp_info->presentation_container);
e_hwc_window_queue_buffer_release(queue, queue_buffer);
return EINA_FALSE;
}
queue_buffer = e_hwc_window_queue_buffer_find(hwc_window->current.buffer.queue, hwc_window->current.buffer.tsurface);
if (queue_buffer)
{
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(hwc_window->current.buffer.tsurface);
- if (buffer_comp_info)
+ comp_info = _e_hwc_windows_comp_info_get(hwc_window->current.buffer.tsurface);
+ if (comp_info)
e_hwc_window_presentation_time_feedback_take(hwc_window,
- &buffer_comp_info->presentation_container);
+ &comp_info->presentation_container);
e_hwc_window_queue_buffer_release(hwc_window->current.buffer.queue, queue_buffer);
}
}
static Eina_Bool
-_e_hwc_windows_pending_update_data_enqueue(E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info)
+_e_hwc_windows_pending_update_data_enqueue(E_Hwc_Windows_Comp_Info *comp_info)
{
E_Hwc_Window_Update_Data *update;
- EINA_SAFETY_ON_NULL_RETURN_VAL(buffer_comp_info, EINA_FALSE);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(comp_info, EINA_FALSE);
- EINA_LIST_FREE(buffer_comp_info->pending_update_list, update)
+ EINA_LIST_FREE(comp_info->pending_update_list, update)
e_hwc_window_pending_update_data_enqueue(update->hwc_window, update);
- buffer_comp_info->pending_update_list = NULL;
+ comp_info->pending_update_list = NULL;
return EINA_TRUE;
}
static Eina_Bool
_e_hwc_windows_pending_update_data_dequeue(E_Hwc_Window_Target *target_hwc_window,
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info)
+ E_Hwc_Windows_Comp_Info *comp_info)
{
Eina_List *pending_update_list = NULL;
E_Hwc_Window_Update_Data *update;
E_Hwc_Window *hwc_window;
EINA_SAFETY_ON_NULL_RETURN_VAL(target_hwc_window, EINA_FALSE);
- EINA_SAFETY_ON_NULL_RETURN_VAL(buffer_comp_info, EINA_FALSE);
+ EINA_SAFETY_ON_NULL_RETURN_VAL(comp_info, EINA_FALSE);
EINA_LIST_FREE(target_hwc_window->present_sync_windows, hwc_window)
{
e_object_unref(E_OBJECT(hwc_window));
}
- EINA_LIST_FREE(buffer_comp_info->pending_update_list, update)
+ EINA_LIST_FREE(comp_info->pending_update_list, update)
e_hwc_window_pending_update_data_enqueue(update->hwc_window, update);
- buffer_comp_info->pending_update_list = pending_update_list;
+ comp_info->pending_update_list = pending_update_list;
return EINA_TRUE;
}
E_Hwc_Window *hwc_window;
E_Hwc_Window_Update_Data *update;
tbm_surface_h tsurface;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
Eina_List *l, *ll;
EINA_SAFETY_ON_NULL_RETURN_VAL(target_hwc_window, EINA_FALSE);
EINA_LIST_FOREACH_SAFE(target_hwc_window->rendering_tsurfaces, l, ll, tsurface)
{
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(tsurface);
- if (!buffer_comp_info) continue;
+ comp_info = _e_hwc_windows_comp_info_get(tsurface);
+ if (!comp_info) continue;
- EINA_LIST_FREE(buffer_comp_info->pending_update_list, update)
+ EINA_LIST_FREE(comp_info->pending_update_list, update)
e_hwc_window_pending_update_data_dequeue_cancel(update->hwc_window, update);
}
tbm_surface_h tsurface, tbm_surface_queue_trace trace, void *data)
{
E_Hwc_Window_Target *target_hwc_window = (E_Hwc_Window_Target *)data;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
/* gets called as evas_renderer dequeues a new buffer from the queue */
if (trace == TBM_SURFACE_QUEUE_TRACE_DEQUEUE)
if (e_hwc_windows_fence_enabled_get(target_hwc_window->hwc))
{
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(target_hwc_window->dequeued_tsurface);
- if (buffer_comp_info && buffer_comp_info->release_fence)
- e_egl_sync_wait(buffer_comp_info->release_fence);
+ comp_info = _e_hwc_windows_comp_info_get(target_hwc_window->dequeued_tsurface);
+ if (comp_info && comp_info->release_fence)
+ e_egl_sync_wait(comp_info->release_fence);
}
}
target_hwc_window->rendering_tsurfaces =
eina_list_remove(target_hwc_window->rendering_tsurfaces, tsurface);
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(tsurface);
- if (buffer_comp_info)
- _e_hwc_windows_pending_update_data_enqueue(buffer_comp_info);
+ comp_info = _e_hwc_windows_comp_info_get(tsurface);
+ if (comp_info)
+ _e_hwc_windows_pending_update_data_enqueue(comp_info);
}
/* tsurface has been released at the queue */
target_hwc_window->rendering_tsurfaces =
eina_list_remove(target_hwc_window->rendering_tsurfaces, tsurface);
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(tsurface);
- if (buffer_comp_info)
- buffer_comp_info->skip = EINA_FALSE;
+ comp_info = _e_hwc_windows_comp_info_get(tsurface);
+ if (comp_info)
+ comp_info->skip = EINA_FALSE;
}
}
E_Hwc_Window *hwc_window = NULL;
E_Comp_Wl_Buffer_Ref *buffer_ref = NULL;
E_Comp_Wl_Buffer *buffer = NULL;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
Eina_List *rendered_buffers = NULL;
Eina_List *rendered_windows = NULL;
Eina_List *visible_windows = NULL;
e_hwc_windows_rendered_window_add(hwc_window);
}
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(target_hwc_window->dequeued_tsurface);
- if (buffer_comp_info)
- _e_hwc_windows_pending_update_data_dequeue(target_hwc_window, buffer_comp_info);
+ comp_info = _e_hwc_windows_comp_info_get(target_hwc_window->dequeued_tsurface);
+ if (comp_info)
+ _e_hwc_windows_pending_update_data_dequeue(target_hwc_window, comp_info);
else
- EHWSERR("fail to get buffer_comp_info tsurface:%p", target_hwc_window->hwc, target_hwc_window->dequeued_tsurface);
+ EHWSERR("fail to get comp_info tsurface:%p", target_hwc_window->hwc, target_hwc_window->dequeued_tsurface);
fence_enabled = e_hwc_windows_fence_enabled_get(target_hwc_window->hwc);
if (!ec) continue;
cdata = e_client_cdata_get(ec);
- if (buffer_comp_info && cdata)
- e_presentation_time_container_feedback_merge(&buffer_comp_info->presentation_container,
+ if (comp_info && cdata)
+ e_presentation_time_container_feedback_merge(&comp_info->presentation_container,
&cdata->presentation_container);
buffer = e_pixmap_ref_resource_get(ec->pixmap);
E_Hwc_Window *hwc_window;
E_Hwc_Window_Target *target_hwc_window;
E_Hwc_Window_Queue_Buffer *queue_buffer;
- E_Hwc_Windows_Buffer_Comp_Info *comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
tdm_hwc_window **thwc_wins = NULL;
int *release_fences = NULL;
uint32_t num_thwc_wins = 0;
if ((hwc_window->display.buffer.tsurface) && (hwc_window->display.buffer.queue) &&
(hwc_window->display.buffer.tsurface != hwc_window->commit.buffer.tsurface))
{
- comp_info = _e_hwc_windows_buffer_comp_info_get(hwc_window->display.buffer.tsurface);
+ comp_info = _e_hwc_windows_comp_info_get(hwc_window->display.buffer.tsurface);
EINA_SAFETY_ON_NULL_RETURN(comp_info);
if (comp_info->release_fence)
{
E_Output *output = NULL;
E_Hwc_Window_Queue_Buffer *queue_buffer = NULL;
- E_Hwc_Windows_Buffer_Comp_Info *pp_buffer_comp_info, *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *pp_comp_info, *comp_info;
tdm_error terror = TDM_ERROR_NONE;
E_Client *ec;
E_Comp_Wl_Client_Data *cdata;
terror = tdm_pp_commit(hwc->tpp);
EINA_SAFETY_ON_FALSE_GOTO(terror == TDM_ERROR_NONE, commit_fail);
- pp_buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(queue_buffer->tsurface);
- if (pp_buffer_comp_info)
+ pp_comp_info = _e_hwc_windows_comp_info_get(queue_buffer->tsurface);
+ if (pp_comp_info)
{
if (hwc->pp_hwc_window)
{
ec = hwc->pp_hwc_window->ec;
cdata = e_client_cdata_get(ec);
if (ec && cdata)
- e_presentation_time_container_feedback_merge(&pp_buffer_comp_info->presentation_container,
+ e_presentation_time_container_feedback_merge(&pp_comp_info->presentation_container,
&cdata->presentation_container);
}
else
{
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(hwc->pp_buffer.tsurface);
- if (buffer_comp_info)
- e_presentation_time_container_feedback_merge(&pp_buffer_comp_info->presentation_container,
- &buffer_comp_info->presentation_container);
+ comp_info = _e_hwc_windows_comp_info_get(hwc->pp_buffer.tsurface);
+ if (comp_info)
+ e_presentation_time_container_feedback_merge(&pp_comp_info->presentation_container,
+ &comp_info->presentation_container);
}
}
e_hwc_windows_present_sync(E_Hwc *hwc)
{
E_Hwc_Window_Target *target_hwc_window;
- E_Hwc_Windows_Buffer_Comp_Info *buffer_comp_info;
+ E_Hwc_Windows_Comp_Info *comp_info;
tbm_surface_h tsurface;
Eina_List *l;
EINA_LIST_FOREACH(target_hwc_window->rendering_tsurfaces, l, tsurface)
{
- buffer_comp_info = _e_hwc_windows_buffer_comp_info_get(tsurface);
- if (!buffer_comp_info) continue;
+ comp_info = _e_hwc_windows_comp_info_get(tsurface);
+ if (!comp_info) continue;
- buffer_comp_info->skip = EINA_TRUE;
+ comp_info->skip = EINA_TRUE;
}
e_hwc_window_queue_clear(((E_Hwc_Window *)target_hwc_window)->queue);