hal_tdm_error (*capture_set_done_handler)(hal_tdm_capture *capture, hal_tdm_capture_done_handler func, void *user_data);
} hal_tdm_capture_funcs;
-hal_tdm_error hal_tdm_backend_register_display_funcs(hal_tdm_display *dpy, hal_tdm_display_funcs *display_funcs);
-hal_tdm_error hal_tdm_backend_register_output_funcs(hal_tdm_display *dpy, hal_tdm_output_funcs *output_funcs);
-hal_tdm_error hal_tdm_backend_register_voutput_funcs(hal_tdm_display *dpy, hal_tdm_voutput_funcs *voutput_funcs);
-hal_tdm_error hal_tdm_backend_register_hwc_funcs(hal_tdm_display *dpy, hal_tdm_hwc_funcs *hwc_funcs);
-hal_tdm_error hal_tdm_backend_register_hwc_window_funcs(hal_tdm_display *dpy, hal_tdm_hwc_window_funcs *hwc_window_funcs);
-hal_tdm_error hal_tdm_backend_register_pp_funcs(hal_tdm_display *dpy, hal_tdm_pp_funcs *pp_funcs);
-hal_tdm_error hal_tdm_backend_register_capture_funcs(hal_tdm_display *dpy, hal_tdm_capture_funcs *capture_funcs);
-
tbm_surface_h hal_tdm_buffer_ref_backend(tbm_surface_h buffer);
void hal_tdm_buffer_unref_backend(tbm_surface_h buffer);
typedef void (*hal_tdm_buffer_destroy_handler)(tbm_surface_h buffer, void *user_data);
/* tdm_backend_func */
-EXTERN hal_tdm_error
-hal_tdm_backend_register_display_funcs(hal_tdm_display *dpy, hal_tdm_display_funcs *display_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->display_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !display_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->display_funcs = display_funcs;
-
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_output_funcs(hal_tdm_display *dpy, hal_tdm_output_funcs *output_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->output_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !output_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->output_funcs = output_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_voutput_funcs(hal_tdm_display *dpy, hal_tdm_voutput_funcs *voutput_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->voutput_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !voutput_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->voutput_funcs = voutput_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_hwc_funcs(hal_tdm_display *dpy, hal_tdm_hwc_funcs *hwc_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->hwc_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !hwc_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->hwc_funcs = hwc_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_hwc_window_funcs(hal_tdm_display *dpy, hal_tdm_hwc_window_funcs *hwc_window_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->hwc_window_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !hwc_window_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->hwc_window_funcs = hwc_window_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_pp_funcs(hal_tdm_display *dpy, hal_tdm_pp_funcs *pp_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->pp_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !pp_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->pp_funcs = pp_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
-EXTERN hal_tdm_error
-hal_tdm_backend_register_capture_funcs(hal_tdm_display *dpy, hal_tdm_capture_funcs *capture_funcs)
-{
- if (!g_hal_tdm_backend_data) return HAL_TDM_ERROR_OPERATION_FAILED;
- if (g_hal_tdm_backend_data->capture_funcs) return HAL_TDM_ERROR_BAD_REQUEST;
- if (!dpy || !capture_funcs) return HAL_TDM_ERROR_INVALID_PARAMETER;
- g_hal_tdm_backend_data->capture_funcs = capture_funcs;
- return HAL_TDM_ERROR_NONE;
-}
-
EXTERN tbm_surface_h
hal_tdm_buffer_ref_backend(tbm_surface_h buffer)
{