From: SooChan Lim Date: Thu, 10 Jun 2021 06:42:04 +0000 (+0900) Subject: tbm_module : add tbm_module_bufmgr_get_capabilities X-Git-Tag: submit/tizen/20210611.072439~8 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Flibtbm.git;a=commitdiff_plain;h=1231043889fa499fc1160489cac8926c1684895b tbm_module : add tbm_module_bufmgr_get_capabilities This function returns the capabilities of the bufmgr module. Change-Id: I9279fe2b025e46526931e0c063993723410ce61e --- diff --git a/src/tbm_bufmgr_int.h b/src/tbm_bufmgr_int.h index b19351b..fe9bc61 100644 --- a/src/tbm_bufmgr_int.h +++ b/src/tbm_bufmgr_int.h @@ -358,4 +358,6 @@ tbm_bo tbm_bo_alloc_with_bo_data(tbm_bufmgr bufmgr, tbm_backend_bo_data *bo_data tbm_module *tbm_module_load(tbm_bufmgr bufmgr, int fd); void tbm_module_unload(tbm_module *module); -#endif /* _TBM_BUFMGR_INT_H_ */ +int tbm_module_bufmgr_get_capabilities(tbm_module *module); + +#endif /* _TBM_BUFMGR_INT_H_ */ diff --git a/src/tbm_module.c b/src/tbm_module.c index eec0f34..fe90662 100644 --- a/src/tbm_module.c +++ b/src/tbm_module.c @@ -532,3 +532,31 @@ tbm_module_unload(tbm_module *module) free(module); } +int +tbm_module_bufmgr_get_capabilities(tbm_module *module) +{ + tbm_error_e error = TBM_ERROR_NOT_SUPPORTED; + int capabilities = 0; + + switch (module->type) { + case TBM_MODULE_TYPE_HAL_TBM: + capabilities = hal_tbm_bufmgr_get_capabilities(module->hal_bufmgr, (hal_tbm_error *)&error); + break; + case TBM_MODULE_TYPE_TBM_BACKEND: + capabilities = module->bufmgr_func->bufmgr_get_capabilities(module->bufmgr_data, &error); + break; + case TBM_MODULE_TYPE_BUFMGR_BACKEND: + TBM_ERR("Do not support at tbm_bufmgr_backend."); + break; + default: + TBM_ERR("Wrong module type:%d", module->type); + break; + } + + if (error != TBM_ERROR_NONE) { + TBM_ERR("fail to get capabilities of bufmgr"); + return 0; + } + + return capabilities; +}