khronosfws/openmax_al/src/common/xastreaminformationitf.h
changeset 31 8dfd592727cb
parent 16 43d09473c595
child 55 e267340986c9
equal deleted inserted replaced
22:128eb6a32b84 31:8dfd592727cb
     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: Stream Information Interface Header
    15 *
    15  *
    16 */
    16  */
    17 
       
    18 
    17 
    19 #ifndef XASTREAMINFORMATIONITF_H
    18 #ifndef XASTREAMINFORMATIONITF_H
    20 #define XASTREAMINFORMATIONITF_H
    19 #define XASTREAMINFORMATIONITF_H
    21 
    20 
    22 #include "openmaxalwrapper.h"
    21 #include "openmaxalwrapper.h"
    29 /** ENUMERATIONS **/
    28 /** ENUMERATIONS **/
    30 
    29 
    31 /** STRUCTURES **/
    30 /** STRUCTURES **/
    32 /* Definition of XAStreamInformationItf implementation */
    31 /* Definition of XAStreamInformationItf implementation */
    33 typedef struct XAStreamInformationItfImpl_
    32 typedef struct XAStreamInformationItfImpl_
    34 {
    33     {
    35     /* parent interface */
    34     /* parent interface */
    36     struct XAStreamInformationItf_ itf;
    35     struct XAStreamInformationItf_ itf;
    37     /* pointer to self */
    36     /* pointer to self */
    38     struct XAStreamInformationItfImpl_* self;
    37     struct XAStreamInformationItfImpl_* self;
    39 
    38 
    40     /*Adaptation variables*/
    39     /*Adaptation variables*/
    41 
    40 
    42     XAStreamInformationItf cbPtrToSelf;
    41     XAStreamInformationItf cbPtrToSelf;
    43     xaStreamEventChangeCallback  callback;
    42     xaStreamEventChangeCallback callback;
    44     void *cbcontext;
    43     void *cbcontext;
    45     XAAdaptationBaseCtx *adapCtx;
    44     XAAdaptationBaseCtx *adapCtx;
    46 
    45 
    47 } XAStreamInformationItfImpl;
    46     } XAStreamInformationItfImpl;
    48 
    47 
    49 /** METHODS **/
    48 /** METHODS **/
    50 
    49 
    51 /* Base interface XAStreamInformationItf implementation */
    50 /* Base interface XAStreamInformationItf implementation */
    52 XAresult XAStreamInformationItfImpl_QueryMediaContainerInformation(
    51 XAresult XAStreamInformationItfImpl_QueryMediaContainerInformation(
    53                 XAStreamInformationItf self,
    52         XAStreamInformationItf self, XAMediaContainerInformation * info);
    54                 XAMediaContainerInformation * info);
       
    55 
    53 
    56 XAresult XAStreamInformationItfImpl_QueryStreamType(
    54 XAresult XAStreamInformationItfImpl_QueryStreamType(
    57                 XAStreamInformationItf self,
    55         XAStreamInformationItf self, XAuint32 streamIndex, XAuint32 *domain);
    58                 XAuint32 streamIndex, 
       
    59                 XAuint32 *domain);
       
    60 
    56 
    61 XAresult XAStreamInformationItfImpl_QueryStreamInformation(
    57 XAresult XAStreamInformationItfImpl_QueryStreamInformation(
    62                 XAStreamInformationItf self, 
    58         XAStreamInformationItf self, XAuint32 streamIndex, void * info);
    63                 XAuint32 streamIndex,
       
    64                 void * info);
       
    65 
    59 
    66 XAresult XAStreamInformationItfImpl_QueryStreamName(
    60 XAresult XAStreamInformationItfImpl_QueryStreamName(
    67                 XAStreamInformationItf self, 
    61         XAStreamInformationItf self, XAuint32 streamIndex,
    68                 XAuint32 streamIndex, 
    62         XAuint16 * pNameSize, XAchar * pName);
    69                 XAuint16 * pNameSize,
       
    70                 XAchar * pName);
       
    71 
    63 
    72 XAresult XAStreamInformationItfImpl_RegisterStreamChangeCallback(
    64 XAresult XAStreamInformationItfImpl_RegisterStreamChangeCallback(
    73                 XAStreamInformationItf self,
    65         XAStreamInformationItf self, xaStreamEventChangeCallback callback,
    74                 xaStreamEventChangeCallback callback,
    66         void * pContext);
    75                 void * pContext);
       
    76 
    67 
    77 XAresult XAStreamInformationItfImpl_QueryActiveStreams(
    68 XAresult XAStreamInformationItfImpl_QueryActiveStreams(
    78                 XAStreamInformationItf self,
    69         XAStreamInformationItf self, XAuint32 *numStreams,
    79                 XAuint32 *numStreams,
    70         XAboolean *activeStreams);
    80                 XAboolean *activeStreams);
       
    81 
    71 
    82 XAresult XAStreamInformationItfImpl_SetActiveStream(
    72 XAresult XAStreamInformationItfImpl_SetActiveStream(
    83                 XAStreamInformationItf self, 
    73         XAStreamInformationItf self, XAuint32 streamNum, XAboolean active,
    84                 XAuint32 streamNum,
    74         XAboolean commitNow);
    85                 XAboolean active, 
       
    86                 XAboolean commitNow);
       
    87 
    75 
    88 /* XAStreamInformationItfImpl -specific methods */
    76 /* XAStreamInformationItfImpl -specific methods */
    89 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
    77 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(
       
    78         XAAdaptationBaseCtx *adapCtx);
    90 void XAStreamInformationItfImpl_Free(XAStreamInformationItfImpl* self);
    79 void XAStreamInformationItfImpl_Free(XAStreamInformationItfImpl* self);
    91 
    80 
    92 #endif /* XASTREAMINFORMATIONITF_H */
    81 #endif /* XASTREAMINFORMATIONITF_H */