khronosfws/openmax_al/src/radio/xaradioitf.h
changeset 25 6f7ceef7b1d1
parent 21 2ed61feeead6
child 28 ebf79c79991a
equal deleted inserted replaced
21:2ed61feeead6 25:6f7ceef7b1d1
    21 #include "xaadptbasectx.h"
    21 #include "xaadptbasectx.h"
    22 #include "xaradioitfadaptation.h"
    22 #include "xaradioitfadaptation.h"
    23 
    23 
    24 /** MACROS **/
    24 /** MACROS **/
    25 #define RADIO_DEFAULT_STEREO_MODE 2
    25 #define RADIO_DEFAULT_STEREO_MODE 2
       
    26 #define RADIO_NUM_OF_PRESETS 20
    26 /** TYPES **/
    27 /** TYPES **/
    27 
    28 
    28 /** ENUMERATIONS **/
    29 /** ENUMERATIONS **/
    29 
    30 
    30 /** STRUCTURES **/
    31 /** STRUCTURES **/
       
    32 typedef struct RadioPreset_
       
    33 {
       
    34     XAuint32    freq;
       
    35     XAuint8     range;
       
    36     XAuint32    stereoMode;
       
    37     char*       name;
       
    38 } RadioPreset;
       
    39 
    31 
    40 
    32 /* Definition of XAEqualizerItf implementation */
    41 /* Definition of XAEqualizerItf implementation */
    33 typedef struct XARadioItfImpl_
    42 typedef struct XARadioItfImpl_
    34 {
    43 {
    35     /* parent interface */
    44     /* parent interface */
    42     XAuint32    stereoMode;
    51     XAuint32    stereoMode;
    43 
    52 
    44     XARadioItf         cbPtrToSelf;
    53     XARadioItf         cbPtrToSelf;
    45     xaRadioCallback    callback;
    54     xaRadioCallback    callback;
    46     void               *context;
    55     void               *context;
       
    56    	XAuint32    preset;
       
    57    	XAuint32    numOfPresets;
       
    58 
       
    59     RadioPreset presets[RADIO_NUM_OF_PRESETS];    
    47 
    60 
    48     /*Adaptation variables*/
    61     /*Adaptation variables*/
    49     XAAdaptationBaseCtx *adapCtx;
    62     XAAdaptationBaseCtx *adapCtx;
    50 } XARadioItfImpl;
    63 } XARadioItfImpl;
    51 
    64 
    87 XAresult XARadioItfImpl_StopSeeking(XARadioItf self);
   100 XAresult XARadioItfImpl_StopSeeking(XARadioItf self);
    88 
   101 
    89 XAresult XARadioItfImpl_RegisterRadioCallback(XARadioItf self,
   102 XAresult XARadioItfImpl_RegisterRadioCallback(XARadioItf self,
    90                                               xaRadioCallback callback,
   103                                               xaRadioCallback callback,
    91                                               void * pContext);
   104                                               void * pContext);
       
   105                                               
       
   106 XAresult XARadioItfImpl_GetNumberOfPresets(XARadioItf self, XAuint32 * pNumPresets);
       
   107 
       
   108 XAresult XARadioItfImpl_SetPreset(XARadioItf self,
       
   109                                   XAuint32 preset,
       
   110                                   XAuint32 freq,
       
   111                                   XAuint8 range,
       
   112                                   XAuint32 mode,
       
   113                                   const XAchar * name);
       
   114 
       
   115 XAresult XARadioItfImpl_GetPreset(XARadioItf self,
       
   116                                   XAuint32 preset,
       
   117                                   XAuint32 * pFreq,
       
   118                                   XAuint8 * pRange,
       
   119                                   XAuint32 * pMode,
       
   120                                   XAchar * pName,
       
   121                                   XAuint16 * pNameLength);                                              
    92 
   122 
    93 /* XARadioItfImpl -specific methods */
   123 /* XARadioItfImpl -specific methods */
    94 XARadioItfImpl* XARadioItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
   124 XARadioItfImpl* XARadioItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
    95 void XARadioItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event );
   125 void XARadioItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event );
    96 
   126