BellagioOpenMaxSymbianLoader.h

Go to the documentation of this file.
00001 
00024 #ifndef __BELLAGIO_OPENMAX_SYMBIANLOADER_H__
00025 #define __BELLAGIO_OPENMAX_SYMBIANLOADER_H__
00026 
00027 #include <e32def.h>  //TBool
00028 #include <e32std.h>  //RLibrary
00029 
00030 #include "BellagioOpenMaxLoader.h"
00031 
00032 #include "BellagioOpenMaxSymbianLoaderImplUid.hrh"
00033 
00034 #include "BellagioOpenMaxComponent.h"
00035 
00036 // The actual implementation
00037 #include "nrc_symbian_component_loader.h"
00038 
00039 // Forward declaration
00040 struct BOSA_COMPONENTLOADER;
00041 
00042 class CBellagioOpenMaxSymbianLoader :  public CBellagioOpenMaxLoader
00043 {
00044 public:
00045     static CBellagioOpenMaxSymbianLoader* NewL(TAny* aInitParams);
00046     virtual ~CBellagioOpenMaxSymbianLoader();
00047 
00048     OMX_COMPONENTTYPE* CreateComponent(OMX_STRING cComponentName, BOSA_COMPONENTLOADER* loader);
00049     OMX_ERRORTYPE DestroyComponent(OMX_COMPONENTTYPE *hComponent);
00050 
00051     OMX_ERRORTYPE ComponentNameEnum(OMX_STRING cComponentName,
00052                                 OMX_U32 nNameLength,
00053                                 OMX_U32 nIndex);
00054 
00055     OMX_ERRORTYPE GetRolesOfComponent(OMX_STRING compName,
00056                                   OMX_U32 *pNumRoles,
00057                                   OMX_U8 **roles);
00058 
00059     OMX_ERRORTYPE GetComponentsOfRole(OMX_STRING role,
00060                                   OMX_U32 *pNumComps,
00061                                   OMX_U8  **compNames);
00062 
00063     CBellagioOpenMaxComponent* GetComponentPrivate(OMX_COMPONENTTYPE *hComponent);
00064     TInt MakeComponentList();
00065 
00066 private:
00067     CBellagioOpenMaxSymbianLoader();
00068 
00069     TInt GetInfoIndex(OMX_STRING componentName);
00070 
00071 private:
00072     /* a array to hold all components created by this loader */
00073     RPointerArray<CBellagioOpenMaxComponent> iComponents;
00074 
00075     /* a array to hold component infos */
00076     RImplInfoPtrArray componentInfos;
00077 };
00078 
00079 #endif  // __BELLAGIO_OPENMAX_SYMBIANLOADER_H__

Generated for OpenMAX Bellagio rel. 0.3.5-svn by  doxygen 1.5.1
SourceForge.net Logo