khronosfws/openmax_al/src/radio/xaradiodevice.c
changeset 42 1fa3fb47b1e3
parent 31 8dfd592727cb
child 48 a493a607b5bf
equal deleted inserted replaced
32:94fc26b6e006 42:1fa3fb47b1e3
    20 #include <assert.h>
    20 #include <assert.h>
    21 #include "xaradiodevice.h"
    21 #include "xaradiodevice.h"
    22 #include "xaradioitf.h"
    22 #include "xaradioitf.h"
    23 #include "xaconfigextensionsitf.h"
    23 #include "xaconfigextensionsitf.h"
    24 #include "xadynintmgmtitf.h"
    24 #include "xadynintmgmtitf.h"
    25 #include "xardsitf.h"
       
    26 #include "xathreadsafety.h"
    25 #include "xathreadsafety.h"
    27 #include "xaradioadaptctx.h"
    26 #include "xaradioadaptctx.h"
    28 /* Static mapping of enumeration XARadioDeviceInterfaces to interface iids */
    27 /* Static mapping of enumeration XARadioDeviceInterfaces to interface iids */
    29 static const XAInterfaceID* XARadioDeviceItfIIDs[RADIO_ITFCOUNT]=
    28 static const XAInterfaceID* XARadioDeviceItfIIDs[RADIO_ITFCOUNT]=
    30 {
    29 {
    31     &XA_IID_OBJECT,
    30     &XA_IID_OBJECT,
    32     &XA_IID_RADIO,
    31     &XA_IID_RADIO,
    33     &XA_IID_CONFIGEXTENSION,
    32     &XA_IID_CONFIGEXTENSION,
    34     &XA_IID_DYNAMICINTERFACEMANAGEMENT,
    33     &XA_IID_DYNAMICINTERFACEMANAGEMENT
    35     &XA_IID_RDS
       
    36 };
    34 };
    37 
    35 
    38 /*****************************************************************************
    36 /*****************************************************************************
    39  * Global methods
    37  * Global methods
    40  *****************************************************************************/
    38  *****************************************************************************/
   231                     pItf = XAConfigExtensionsItfImpl_Create();
   229                     pItf = XAConfigExtensionsItfImpl_Create();
   232                     break;
   230                     break;
   233                 case RADIO_DIMITF:
   231                 case RADIO_DIMITF:
   234                     pItf = XADIMItfImpl_Create();
   232                     pItf = XADIMItfImpl_Create();
   235                     break;
   233                     break;
   236                 case RADIO_RDSITF:
       
   237 
       
   238                    pItf = XARDSItfImpl_Create( pObjImpl->adaptationCtx );
       
   239 
       
   240                    break;
       
   241                 default:
   234                 default:
   242                     break;
   235                     break;
   243             }
   236             }
   244             if( !pItf )
   237             if( !pItf )
   245             {
   238             {
   303                     XAConfigExtensionsItfImpl_Free( pItf );
   296                     XAConfigExtensionsItfImpl_Free( pItf );
   304                     break;
   297                     break;
   305                 case RADIO_DIMITF:
   298                 case RADIO_DIMITF:
   306                     XADIMItfImpl_Free( pItf );
   299                     XADIMItfImpl_Free( pItf );
   307                     break;
   300                     break;
   308                 case RADIO_RDSITF:
       
   309                     XARDSItfImpl_Free( pItf );
       
   310                     break;
       
   311                 default:
   301                 default:
   312                     break;
   302                     break;
   313             }
   303             }
   314             pObj->interfaceMap[itfIdx].pItf = NULL;
   304             pObj->interfaceMap[itfIdx].pItf = NULL;
   315         }
   305         }