split hal_backend_tbm_funcs
[platform/hal/api/tbm.git] / include / hal-tbm-interface.h
index ba61185..fc7b9b1 100644 (file)
@@ -43,10 +43,7 @@ extern "C" {
 typedef void hal_tbm_backend_bufmgr_data;
 typedef void hal_tbm_backend_bo_data;
 
-typedef struct _hal_backend_tbm_funcs {
-       int (*start)(void);
-       int (*stop)(void);
-
+typedef struct _hal_tbm_backend_bufmgr_func {
        /* tbm_bufmgr_func */
        tbm_bufmgr_capability (*bufmgr_get_capabilities)(hal_tbm_backend_bufmgr_data *bufmgr_data, tbm_error_e *error);
        tbm_error_e (*bufmgr_bind_native_display)(hal_tbm_backend_bufmgr_data *bufmgr_data, tbm_native_display *native_display);
@@ -60,8 +57,9 @@ typedef struct _hal_backend_tbm_funcs {
                                                                                tbm_bo_memory_type flags, int bo_idx, tbm_error_e *error);
        hal_tbm_backend_bo_data *(*bufmgr_import_fd)(hal_tbm_backend_bufmgr_data *bufmgr_data, tbm_fd fd, tbm_error_e *error);
        hal_tbm_backend_bo_data *(*bufmgr_import_key)(hal_tbm_backend_bufmgr_data *bufmgr_data, tbm_key key, tbm_error_e *error);
+} hal_tbm_backend_bufmgr_func;
 
-       /* tbm_bo_func*/
+typedef struct _hal_tbm_backend_bo_func {
        void (*bo_free)(hal_tbm_backend_bo_data *bo_data);
        int (*bo_get_size)(hal_tbm_backend_bo_data *bo_data, tbm_error_e *error);
        tbm_bo_memory_type (*bo_get_memory_types)(hal_tbm_backend_bo_data *bo_data, tbm_error_e *error);
@@ -72,6 +70,12 @@ typedef struct _hal_backend_tbm_funcs {
        tbm_error_e (*bo_unlock)(hal_tbm_backend_bo_data *bo_data);
        tbm_fd (*bo_export_fd)(hal_tbm_backend_bo_data *bo_data, tbm_error_e *error);
        tbm_key (*bo_export_key)(hal_tbm_backend_bo_data *bo_data, tbm_error_e *error);
+} hal_tbm_backend_bo_func;
+
+typedef struct _hal_backend_tbm_funcs
+{
+       hal_tbm_backend_bufmgr_func *bufmgr_func;
+       hal_tbm_backend_bo_func *bo_func;
 } hal_backend_tbm_funcs;
 
 int hal_tbm_backend_bufmgr_query_display_server(tbm_bufmgr bufmgr, tbm_error_e *error);