static int wl_egl_buffer_key;
#define KEY_WL_EGL_BUFFER (unsigned long)(&wl_egl_buffer_key)
-/* In wayland, application and compositor create its own drawing buffers. Recommend size is more than 2. */
-#define BUFFER_ARRAY_SIZE 9
-
typedef struct _tpl_wl_egl_display tpl_wl_egl_display_t;
typedef struct _tpl_wl_egl_surface tpl_wl_egl_surface_t;
typedef struct _tpl_wl_egl_buffer tpl_wl_egl_buffer_t;
surf_message sent_message;
- /* for waiting draw done */
- tpl_bool_t use_render_done_fence;
tpl_bool_t is_activated;
tpl_bool_t reset; /* TRUE if queue reseted by external */
tpl_bool_t need_to_enqueue;
wl_egl_surface->need_to_enqueue = TPL_TRUE;
wl_egl_surface->prerotation_capability = TPL_FALSE;
wl_egl_surface->vblank_done = TPL_TRUE;
- wl_egl_surface->use_render_done_fence = TPL_FALSE;
wl_egl_surface->set_serial_is_used = TPL_FALSE;
wl_egl_surface->gsource_finalized = TPL_FALSE;
wl_egl_surface->initialized_in_thread = TPL_FALSE;
wl_vk_surface);
_thread_wl_vk_surface_init(wl_vk_surface);
wl_vk_surface->initialized_in_thread = TPL_TRUE;
- tpl_gcond_signal(&wl_vk_surface->surf_cond);
+ tpl_gcond_signal(&wl_vk_surface->surf_cond);
}
-
+
if (message & ACQUIRABLE) { /* Acquirable message */
TPL_LOG_D("[MSG_RECEIVED]", "wl_vk_surface(%p) acquirable message received!",
wl_vk_surface);
}
tpl_gcond_signal(&wl_vk_surface->surf_cond);
}
-
+
if (message & DESTROY_QUEUE) { /* swapchain destroy */
TPL_LOG_D("[MSG_RECEIVED]", "wl_vk_surface(%p) swapchain destroy message received!",
wl_vk_surface);
unsigned int tv_usec, void *user_data)
{
tpl_wl_vk_surface_t *wl_vk_surface = (tpl_wl_vk_surface_t *)user_data;
- tpl_wl_vk_buffer_t *wl_vk_buffer = NULL;
TRACE_ASYNC_END((intptr_t)wl_vk_surface, "WAIT_VBLANK");
TPL_LOG_D("[VBLANK_DONE]", "wl_vk_surface(%p)", wl_vk_surface);