khronosfws/openmax_al/src/mediarecorder/xamediarecorder.h
changeset 25 6f7ceef7b1d1
parent 19 4a629bc82c5e
child 33 5e8b14bae8c3
equal deleted inserted replaced
21:2ed61feeead6 25:6f7ceef7b1d1
     1 /*
     1 /*
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     2  * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3  * All rights reserved.
     4 * This component and the accompanying materials are made available
     4  * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     5  * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6  * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7  * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     8  *
     9 * Initial Contributors:
     9  * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    10  * Nokia Corporation - initial contribution.
    11 *
    11  *
    12 * Contributors:
    12  * Contributors:
    13 *
    13  *
    14 * Description: 
    14  * Description: MediaRecorder Object Header
    15 *
    15  *
    16 */
    16  */
    17 
    17 
    18 #ifndef XAMEDIARECORDER_H
    18 #ifndef XAMEDIARECORDER_H
    19 #define XAMEDIARECORDER_H
    19 #define XAMEDIARECORDER_H
    20 
    20 
    21 #include "openmaxalwrapper.h"
    21 #include "openmaxalwrapper.h"
    24 #include "xaadptbasectx.h"
    24 #include "xaadptbasectx.h"
    25 #include "xacapabilitiesmgr.h"
    25 #include "xacapabilitiesmgr.h"
    26 
    26 
    27 /** MACROS **/
    27 /** MACROS **/
    28 
    28 
    29 
       
    30 /** TYPES **/
    29 /** TYPES **/
    31 
       
    32 
    30 
    33 /** ENUMERATIONS **/
    31 /** ENUMERATIONS **/
    34 /* Enumeration for interfaces that MediaRecorder supports.  */
    32 /* Enumeration for interfaces that MediaRecorder supports.  */
    35 typedef enum
    33 typedef enum
    36 {
    34     {
    37     MR_OBJECTITF,
    35     MR_OBJECTITF,
    38     MR_AUDIOENCODERITF,
    36     MR_AUDIOENCODERITF,
    39     MR_CONFIGEXTENSIONITF,
    37     MR_CONFIGEXTENSIONITF,
    40     MR_DIMITF,
    38     MR_DIMITF,
    41     MR_EQUALIZERITF,
    39     MR_EQUALIZERITF,
    49     MR_VIDEOPOSTPROCESSINGITF,
    47     MR_VIDEOPOSTPROCESSINGITF,
    50     MR_VOLUMEITF,
    48     MR_VOLUMEITF,
    51     MR_METADATAEXTRACTIONITF,
    49     MR_METADATAEXTRACTIONITF,
    52     MR_METADATATRAVERSALITF,
    50     MR_METADATATRAVERSALITF,
    53     MR_ITFCOUNT
    51     MR_ITFCOUNT
    54 } MRInterfaces;
    52     } MRInterfaces;
    55 
    53 
    56 /** STRUCTURES **/
    54 /** STRUCTURES **/
    57 /* Specification for  MediaRecorderImpl. */
    55 /* Specification for  MediaRecorderImpl. */
    58 typedef struct XAMediaRecorderImpl_
    56 typedef struct XAMediaRecorderImpl_
    59 {
    57     {
    60     /* Parent for XAMediaRecorder */
    58     /* Parent for XAMediaRecorder */
    61     XAObjectItfImpl baseObj;
    59     XAObjectItfImpl baseObj;
    62 
    60 
    63     /* variables */
    61     /* variables */
    64     XADataSource *audioSrc;
    62     XADataSource *audioSrc;
    65     XADataSource *imageVideoSrc;
    63     XADataSource *imageVideoSrc;
    66     XADataSink *dataSnk;
    64     XADataSink *dataSnk;
    67     XAuint8 recModes;
    65     XAuint8 recModes;
    68     XAAdaptationBaseCtx* adaptationCtx;
    66     XAAdaptationBaseCtx* adaptationCtx;
    69 
    67 
    70 } XAMediaRecorderImpl;
    68     } XAMediaRecorderImpl;
    71 
       
    72 
    69 
    73 /** METHODS **/
    70 /** METHODS **/
    74 
    71 
    75 /* base object XAObjectItfImpl methods */
    72 /* base object XAObjectItfImpl methods */
    76 XAresult    XAMediaRecorderImpl_DoRealize(XAObjectItf self);
    73 XAresult XAMediaRecorderImpl_DoRealize(XAObjectItf self);
    77 XAresult    XAMediaRecorderImpl_DoResume(XAObjectItf self);
    74 XAresult XAMediaRecorderImpl_DoResume(XAObjectItf self);
    78 void        XAMediaRecorderImpl_FreeResources(XAObjectItf self);
    75 void XAMediaRecorderImpl_FreeResources(XAObjectItf self);
    79 
       
    80 
    76 
    81 /* MediaRecorderImpl -specific methods*/
    77 /* MediaRecorderImpl -specific methods*/
    82 XAresult XAMediaRecorderImpl_DoAddItf(XAObjectItf self, XAObjItfMapEntry *mapEntry  );
    78 XAresult XAMediaRecorderImpl_DoAddItf(XAObjectItf self,
    83 XAresult XAMediaRecorderImpl_DoResumeItf(XAObjectItf self, XAObjItfMapEntry *mapEntry  );
    79         XAObjItfMapEntry *mapEntry);
    84 XAresult XAMediaRecorderImpl_DoRemoveItf(XAObjectItf self, XAObjItfMapEntry *mapEntry );
    80 XAresult XAMediaRecorderImpl_DoResumeItf(XAObjectItf self,
       
    81         XAObjItfMapEntry *mapEntry);
       
    82 XAresult XAMediaRecorderImpl_DoRemoveItf(XAObjectItf self,
       
    83         XAObjItfMapEntry *mapEntry);
    85 
    84 
    86 #endif /* XAMEDIARECORDER_H */
    85 #endif /* XAMEDIARECORDER_H */