OpenMAXBellagio 0.9.3
OMXComponentRMExt.c
Go to the documentation of this file.
00001 
00026 #include "omxcore.h"
00027 #include "omx_base_component.h"
00028 #include "OMXComponentRMExt.h"
00029 
00030 OMX_ERRORTYPE getQualityLevel(OMX_HANDLETYPE hComponent, OMX_U32* pQualityLevel) {
00031     omx_base_component_PrivateType* omx_base_component_Private;
00032     OMX_COMPONENTTYPE *openmaxStandComp = (OMX_COMPONENTTYPE *)hComponent;
00033     OMX_ERRORTYPE err;
00034 
00035     DEBUG(DEB_LEV_FUNCTION_NAME, "In %s\n", __func__);
00036     omx_base_component_Private = (omx_base_component_PrivateType*)openmaxStandComp->pComponentPrivate;
00037     if (omx_base_component_Private == NULL) {
00038         DEBUG(DEB_LEV_ERR, "The function %s should be called on a Bellagio OpenMAX component\n", __func__);
00039         return OMX_ErrorNotImplemented;
00040     }
00041     err = omx_base_component_Private->getQualityLevel(openmaxStandComp, pQualityLevel);
00042     if (err != OMX_ErrorNone) {
00043         DEBUG(DEB_LEV_ERR, "The get Quality levels fails\n");
00044         return err;
00045     }
00046     DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
00047     return OMX_ErrorNone;
00048 }
00049 
00050 OMX_ERRORTYPE setQualityLevel(OMX_HANDLETYPE hComponent, OMX_U32 nQualityLevel) {
00051     omx_base_component_PrivateType* omx_base_component_Private;
00052     OMX_COMPONENTTYPE *openmaxStandComp = (OMX_COMPONENTTYPE *)hComponent;
00053     OMX_ERRORTYPE err;
00054 
00055     DEBUG(DEB_LEV_FUNCTION_NAME, "In %s\n", __func__);
00056     omx_base_component_Private = (omx_base_component_PrivateType*)openmaxStandComp->pComponentPrivate;
00057     if (omx_base_component_Private == NULL) {
00058         DEBUG(DEB_LEV_ERR, "The function %s should be called on a Bellagio OpenMAX component\n", __func__);
00059         return OMX_ErrorNotImplemented;
00060     }
00061     err = omx_base_component_Private->setQualityLevel(openmaxStandComp, nQualityLevel);
00062     if (err != OMX_ErrorNone) {
00063         DEBUG(DEB_LEV_ERR, "The set Quality levels fails\n");
00064         return err;
00065     }
00066     return OMX_ErrorNone;
00067 }
00068