00001 00029 #ifndef __ST_STATIC_COMPONENT_LOADER_H__ 00030 #define __ST_STATIC_COMPONENT_LOADER_H__ 00031 00032 #include "omxcore.h" 00033 struct BOSA_COMPONENTLOADER * st_static_loader; 00034 00042 typedef struct stLoaderComponentType{ 00043 OMX_VERSIONTYPE componentVersion; 00044 char* name; 00045 unsigned int name_specific_length; 00046 char** name_specific; 00047 char** role_specific; 00048 char* name_requested; 00049 OMX_ERRORTYPE (*constructor)(OMX_COMPONENTTYPE*,OMX_STRING cComponentName); 00050 } stLoaderComponentType; 00051 00054 void st_static_InitComponentLoader(); 00055 00063 OMX_ERRORTYPE BOSA_ST_InitComponentLoader(BOSA_COMPONENTLOADER *loader); 00064 00069 OMX_ERRORTYPE BOSA_ST_DeInitComponentLoader(BOSA_COMPONENTLOADER *loader); 00070 00078 OMX_ERRORTYPE BOSA_ST_CreateComponent( 00079 BOSA_COMPONENTLOADER *loader, 00080 OMX_HANDLETYPE* pHandle, 00081 OMX_STRING cComponentName, 00082 OMX_PTR pAppData, 00083 OMX_CALLBACKTYPE* pCallBacks); 00084 00088 OMX_ERRORTYPE BOSA_ST_DestroyComponent( 00089 BOSA_COMPONENTLOADER *loader, 00090 OMX_HANDLETYPE hComponent); 00091 00097 OMX_ERRORTYPE BOSA_ST_ComponentNameEnum( 00098 BOSA_COMPONENTLOADER *loader, 00099 OMX_STRING cComponentName, 00100 OMX_U32 nNameLength, 00101 OMX_U32 nIndex); 00102 00109 OMX_ERRORTYPE BOSA_ST_GetRolesOfComponent( 00110 BOSA_COMPONENTLOADER *loader, 00111 OMX_STRING compName, 00112 OMX_U32 *pNumRoles, 00113 OMX_U8 **roles); 00114 00121 OMX_ERRORTYPE BOSA_ST_GetComponentsOfRole ( 00122 BOSA_COMPONENTLOADER *loader, 00123 OMX_STRING role, 00124 OMX_U32 *pNumComps, 00125 OMX_U8 **compNames); 00126 00127 #endif