khronosfws/openmax_al/src/common/xastreaminformationitf.h
changeset 25 6f7ceef7b1d1
parent 19 4a629bc82c5e
child 53 eabc8c503852
equal deleted inserted replaced
21:2ed61feeead6 25:6f7ceef7b1d1
     1 /**
     1 /*
     2  * src\common\XAStreamInformationItf.h
     2  * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3  * Part of OpenMAX AL Implementation
     3  * All rights reserved.
     4  * Copyright (c) 2009 Nokia Inc.
     4  * This component and the accompanying materials are made available
       
     5  * under the terms of "Eclipse Public License v1.0"
       
     6  * which accompanies this distribution, and is available
       
     7  * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     5  *
     8  *
     6  * This file contains specification of XAStreamInformationItf
     9  * Initial Contributors:
       
    10  * Nokia Corporation - initial contribution.
     7  *
    11  *
     8  **/
    12  * Contributors:
       
    13  *
       
    14  * Description: Stream Information Interface Header
       
    15  *
       
    16  */
     9 
    17 
    10 #ifndef XASTREAMINFORMATIONITF_H
    18 #ifndef XASTREAMINFORMATIONITF_H
    11 #define XASTREAMINFORMATIONITF_H
    19 #define XASTREAMINFORMATIONITF_H
    12 
    20 
    13 #include "openmaxalwrapper.h"
    21 #include "openmaxalwrapper.h"
    20 /** ENUMERATIONS **/
    28 /** ENUMERATIONS **/
    21 
    29 
    22 /** STRUCTURES **/
    30 /** STRUCTURES **/
    23 /* Definition of XAStreamInformationItf implementation */
    31 /* Definition of XAStreamInformationItf implementation */
    24 typedef struct XAStreamInformationItfImpl_
    32 typedef struct XAStreamInformationItfImpl_
    25 {
    33     {
    26     /* parent interface */
    34     /* parent interface */
    27     struct XAStreamInformationItf_ itf;
    35     struct XAStreamInformationItf_ itf;
    28     /* pointer to self */
    36     /* pointer to self */
    29     struct XAStreamInformationItfImpl_* self;
    37     struct XAStreamInformationItfImpl_* self;
    30 
    38 
    31     /*Adaptation variables*/
    39     /*Adaptation variables*/
    32 
    40 
    33     XAStreamInformationItf cbPtrToSelf;
    41     XAStreamInformationItf cbPtrToSelf;
    34     xaStreamEventChangeCallback  callback;
    42     xaStreamEventChangeCallback callback;
    35     void *cbcontext;
    43     void *cbcontext;
    36     XAAdaptationBaseCtx *adapCtx;
    44     XAAdaptationBaseCtx *adapCtx;
    37 
    45 
    38 } XAStreamInformationItfImpl;
    46     } XAStreamInformationItfImpl;
    39 
    47 
    40 /** METHODS **/
    48 /** METHODS **/
    41 
    49 
    42 /* Base interface XAStreamInformationItf implementation */
    50 /* Base interface XAStreamInformationItf implementation */
    43 XAresult XAStreamInformationItfImpl_QueryMediaContainerInformation(
    51 XAresult XAStreamInformationItfImpl_QueryMediaContainerInformation(
    44                 XAStreamInformationItf self,
    52         XAStreamInformationItf self, XAMediaContainerInformation * info);
    45                 XAMediaContainerInformation * info);
       
    46 
    53 
    47 XAresult XAStreamInformationItfImpl_QueryStreamType(
    54 XAresult XAStreamInformationItfImpl_QueryStreamType(
    48                 XAStreamInformationItf self,
    55         XAStreamInformationItf self, XAuint32 streamIndex, XAuint32 *domain);
    49                 XAuint32 streamIndex, 
       
    50                 XAuint32 *domain);
       
    51 
    56 
    52 XAresult XAStreamInformationItfImpl_QueryStreamInformation(
    57 XAresult XAStreamInformationItfImpl_QueryStreamInformation(
    53                 XAStreamInformationItf self, 
    58         XAStreamInformationItf self, XAuint32 streamIndex, void * info);
    54                 XAuint32 streamIndex,
       
    55                 void * info);
       
    56 
    59 
    57 XAresult XAStreamInformationItfImpl_QueryStreamName(
    60 XAresult XAStreamInformationItfImpl_QueryStreamName(
    58                 XAStreamInformationItf self, 
    61         XAStreamInformationItf self, XAuint32 streamIndex,
    59                 XAuint32 streamIndex, 
    62         XAuint16 * pNameSize, XAchar * pName);
    60                 XAuint16 * pNameSize,
       
    61                 XAchar * pName);
       
    62 
    63 
    63 XAresult XAStreamInformationItfImpl_RegisterStreamChangeCallback(
    64 XAresult XAStreamInformationItfImpl_RegisterStreamChangeCallback(
    64                 XAStreamInformationItf self,
    65         XAStreamInformationItf self, xaStreamEventChangeCallback callback,
    65                 xaStreamEventChangeCallback callback,
    66         void * pContext);
    66                 void * pContext);
       
    67 
    67 
    68 XAresult XAStreamInformationItfImpl_QueryActiveStreams(
    68 XAresult XAStreamInformationItfImpl_QueryActiveStreams(
    69                 XAStreamInformationItf self,
    69         XAStreamInformationItf self, XAuint32 *numStreams,
    70                 XAuint32 *numStreams,
    70         XAboolean *activeStreams);
    71                 XAboolean *activeStreams);
       
    72 
    71 
    73 XAresult XAStreamInformationItfImpl_SetActiveStream(
    72 XAresult XAStreamInformationItfImpl_SetActiveStream(
    74                 XAStreamInformationItf self, 
    73         XAStreamInformationItf self, XAuint32 streamNum, XAboolean active,
    75                 XAuint32 streamNum,
    74         XAboolean commitNow);
    76                 XAboolean active, 
       
    77                 XAboolean commitNow);
       
    78 
    75 
    79 /* XAStreamInformationItfImpl -specific methods */
    76 /* XAStreamInformationItfImpl -specific methods */
    80 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
    77 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(
       
    78         XAAdaptationBaseCtx *adapCtx);
    81 void XAStreamInformationItfImpl_Free(XAStreamInformationItfImpl* self);
    79 void XAStreamInformationItfImpl_Free(XAStreamInformationItfImpl* self);
    82 
    80 
    83 #endif /* XASTREAMINFORMATIONITF_H */
    81 #endif /* XASTREAMINFORMATIONITF_H */