OMX_API OMX_ERRORTYPE TIOMX_GetRolesOfComponent(OMX_IN OMX_STRING compName, OMX_INOUT OMX_U32 * pNumRoles, OMX_OUT OMX_U8 ** roles) { ALOGV("TIOMX_GetRolesOfComponent\n"); return OMX_GetRolesOfComponent(compName, pNumRoles, roles); }
OMX_ERRORTYPE test_OMX_RoleEnum(OMX_STRING component_name) { OMX_U32 no_of_roles; OMX_U8 **string_of_roles; OMX_ERRORTYPE err = OMX_ErrorNone; int index; DEBUG(DEFAULT_MESSAGES, "GENERAL TEST %s\n", __func__); DEBUG(DEB_LEV_SIMPLE_SEQ, "Getting roles of %s. Passing Null first...\n", component_name); err = OMX_GetRolesOfComponent(component_name, &no_of_roles, NULL); if (err != OMX_ErrorNone) { DEBUG(DEB_LEV_ERR, "Not able to retrieve the number of roles of the given component\n"); DEBUG(DEFAULT_MESSAGES, "GENERAL TEST %s result %i\n", __func__, err); return err; } DEBUG(DEFAULT_MESSAGES, "The number of roles for the component %s is: %i\n", component_name, (int)no_of_roles); if(no_of_roles == 0) { DEBUG(DEB_LEV_ERR, "The Number or roles is 0.\nThe component selected is not correct for the purpose of this test.\nExiting...\n"); err = OMX_ErrorInvalidComponentName; } else { string_of_roles = malloc(no_of_roles * sizeof(OMX_STRING)); for (index = 0; index < no_of_roles; index++) { *(string_of_roles + index) = malloc(no_of_roles * OMX_MAX_STRINGNAME_SIZE); } DEBUG(DEB_LEV_SIMPLE_SEQ, "...then buffers\n"); err = OMX_GetRolesOfComponent(component_name, &no_of_roles, string_of_roles); if (err != OMX_ErrorNone) { DEBUG(DEB_LEV_ERR, "Not able to retrieve the roles of the given component\n"); } else if(string_of_roles != NULL) { for (index = 0; index < no_of_roles; index++) { DEBUG(DEFAULT_MESSAGES, "The role %i for the component: %s \n", (index + 1), *(string_of_roles+index)); } } else { DEBUG(DEB_LEV_ERR, "role string is NULL!!! Exiting...\n"); err = OMX_ErrorInvalidComponentName; } } DEBUG(DEFAULT_MESSAGES, "GENERAL TEST %s result %i\n", __func__, err); return err; }