khronosfws/openmax_al/src/metadataextractor/xametadataextractor.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: Metadata Extractor Header
    15 *
    15  *
    16 */
    16  */
    17 
    17 
    18 #ifndef XAMETADATAEXTRACTOR_H
    18 #ifndef XAMETADATAEXTRACTOR_H
    19 #define XAMETADATAEXTRACTOR_H
    19 #define XAMETADATAEXTRACTOR_H
    20 
    20 
    21 #include "openmaxalwrapper.h"
    21 #include "openmaxalwrapper.h"
    22 #include "xaobjectitf.h"
    22 #include "xaobjectitf.h"
    23 #include "xaglobals.h"
    23 #include "xaglobals.h"
    24 #include "xaadptbasectx.h"
    24 #include "xaadptbasectx.h"
    25 
    25 
    26 
       
    27 /** MACROS **/
    26 /** MACROS **/
    28 
    27 
    29 
       
    30 /** TYPES **/
    28 /** TYPES **/
    31 
       
    32 
    29 
    33 /** ENUMERATIONS **/
    30 /** ENUMERATIONS **/
    34 /* Enumeration for interfaces that MetadataExtractor supports.  */
    31 /* Enumeration for interfaces that MetadataExtractor supports.  */
    35 typedef enum
    32 typedef enum
    36 {
    33     {
    37     MDE_OBJECTITF, /* <-keep this first */
    34     MDE_OBJECTITF, /* <-keep this first */
    38     MDE_DIMITF,
    35     MDE_DIMITF,
    39     MDE_METADATAEXTRACTIONITF,
    36     MDE_METADATAEXTRACTIONITF,
    40     MDE_METADATATRAVERSALITF,
    37     MDE_METADATATRAVERSALITF,
    41     MDE_CONFIGEXTENSIONITF,
    38     MDE_CONFIGEXTENSIONITF,
    42     MDE_DYNAMICSOURCEITF,
    39     MDE_DYNAMICSOURCEITF,
    43     MDE_ITFCOUNT
    40     MDE_ITFCOUNT
    44 } XAMetadataExtractorInterfaces;
    41     } XAMetadataExtractorInterfaces;
    45 
    42 
    46 /** STRUCTURES **/
    43 /** STRUCTURES **/
    47 /* Specification for XAMetadataExtractorImpl
    44 /* Specification for XAMetadataExtractorImpl
    48  */
    45  */
    49 typedef struct XAMetadataExtractorImpl_
    46 typedef struct XAMetadataExtractorImpl_
    50 {
    47     {
    51     /* Parent for XAMetadataExtractorImpl */
    48     /* Parent for XAMetadataExtractorImpl */
    52     XAObjectItfImpl baseObj; /* <-keep this first */
    49     XAObjectItfImpl baseObj; /* <-keep this first */
    53 
    50 
    54     /* variables */
    51     /* variables */
    55     XADataSource *dataSrc;
    52     XADataSource *dataSrc;
    56 	
    53 
    57     XAAdaptationBaseCtx* curAdaptCtx;
    54     XAAdaptationBaseCtx* curAdaptCtx;
    58     XAAdaptationBaseCtx* adaptationCtxGst;
    55     XAAdaptationBaseCtx* adaptationCtxGst;
    59     XAAdaptationBaseCtx* adaptationCtxMMF;
    56     XAAdaptationBaseCtx* adaptationCtxMMF;
    60 
    57 
    61 } XAMetadataExtractorImpl;
    58     } XAMetadataExtractorImpl;
    62 
       
    63 
    59 
    64 /** METHODS **/
    60 /** METHODS **/
    65 
    61 
    66 /* base object XAObjectItfImpl methods */
    62 /* base object XAObjectItfImpl methods */
    67 XAresult    XAMetadataExtractorImpl_DoRealize(XAObjectItf self);
    63 XAresult XAMetadataExtractorImpl_DoRealize(XAObjectItf self);
    68 XAresult    XAMetadataExtractorImpl_DoResume(XAObjectItf self);
    64 XAresult XAMetadataExtractorImpl_DoResume(XAObjectItf self);
    69 void        XAMetadataExtractorImpl_FreeResources(XAObjectItf self);
    65 void XAMetadataExtractorImpl_FreeResources(XAObjectItf self);
    70 
    66 
    71 /* MetadataExtractorImpl -specific methods */
    67 /* MetadataExtractorImpl -specific methods */
    72 XAresult XAMetadataExtractorImpl_DoAddItf(XAObjectItf self, XAObjItfMapEntry *mapEntry );
    68 XAresult XAMetadataExtractorImpl_DoAddItf(XAObjectItf self,
    73 XAresult XAMetadataExtractorImpl_DoResumeItf(XAObjectItf self, XAObjItfMapEntry *mapEntry );
    69         XAObjItfMapEntry *mapEntry);
    74 XAresult XAMetadataExtractorImpl_DoRemoveItf(XAObjectItf self, XAObjItfMapEntry *mapEntry );
    70 XAresult XAMetadataExtractorImpl_DoResumeItf(XAObjectItf self,
    75 
    71         XAObjItfMapEntry *mapEntry);
       
    72 XAresult XAMetadataExtractorImpl_DoRemoveItf(XAObjectItf self,
       
    73         XAObjItfMapEntry *mapEntry);
    76 
    74 
    77 #endif /* XAMETADATAEXTRACTOR_H */
    75 #endif /* XAMETADATAEXTRACTOR_H */