khronosfws/openmax_al/src/common/xaobjects.h
author hgs
Fri, 14 May 2010 18:19:45 -0500
changeset 20 b67dd1fc57c5
parent 19 4a629bc82c5e
child 25 6f7ceef7b1d1
permissions -rw-r--r--
201019

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: 
*
*/
/*All global definitions and declarations here */

#ifndef XAOBJECTS_H
#define XAOBJECTS_H

#include "openmaxalwrapper.h"
#include "xaframeworkmgr.h"
#include "xaglobals.h"
#include "xacapabilitiesmgr.h"

/**
 * GLOBAL METHODS
 */


/*
 * Engine
 */
XAresult XAEngineImpl_Create(XAObjectItf *pEngine,
                             XAuint32 numOptions,
                             const XAEngineOption *pEngineOptions,
                             XAuint32 numInterfaces,
                             const XAInterfaceID *pInterfaceIds,
                             const XAboolean *pInterfaceRequired);

XAresult XAEngineImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAEngineImpl_QuerySupportedInterfaces(XAuint32 index,
                                               XAInterfaceID *pInterfaceId);

/*
 * Media Player
 */
XAresult XAMediaPlayerImpl_CreateMediaPlayer(   FrameworkMap* mapper,
                                                XACapabilities* capabilities,
                                                XAObjectItf *pPlayer,
                                                XADataSource *pDataSrc,
                                                XADataSource *pBankSrc,
                                                XADataSink *pAudioSnk,
                                                XADataSink *pImageVideoSnk,
                                                XADataSink *pVibra,
                                                XADataSink *pLEDArray,
                                                XAuint32 numInterfaces,
                                                const XAInterfaceID *pInterfaceIds,
                                                const XAboolean *pInterfaceRequired);

XAresult XAMediaPlayerImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAMediaPlayerImpl_QuerySupportedInterfaces(XAuint32 index,
                                                  XAInterfaceID *pInterfaceId);

/*
 * Metadata Extractor
 */
XAresult XAMetadataExtractorImpl_Create(    FrameworkMap* mapper,
                                            XACapabilities* capabilities,
                                            XAObjectItf *pMetadataExtractor,
                                            XADataSource *pDataSource,
                                            XAuint32 numInterfaces,
                                            const XAInterfaceID *pInterfaceIds,
                                            const XAboolean *pInterfaceRequired );

XAresult XAMetadataExtractorImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAMetadataExtractorImpl_QuerySupportedInterfaces(XAuint32 index,
                                            XAInterfaceID *pInterfaceId);

/*
 * Output Mix
 */
XAresult XAOMixImpl_CreateOutputMix(    FrameworkMap* mapper,
                                        XACapabilities* capabilities,
                                        XAObjectItf *pMix,
                                        XAuint32 numInterfaces,
                                        const XAInterfaceID *pInterfaceIds,
                                        const XAboolean *pInterfaceRequired );

XAresult XAOMixImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAOMixImpl_QuerySupportedInterfaces(XAuint32 index,
                                             XAInterfaceID *pInterfaceId);

/*
 * Media Recorder
 */
XAresult XAMediaRecorderImpl_CreateMediaRecorder(FrameworkMap* mapper,
                                                 XACapabilities* capabilities,
                                                 XAObjectItf* pRecorder,
                                                 XADataSource* pAudioSrc,
                                                 XADataSource* pImageVideoSrc,
                                                 XADataSink* pDataSnk,
                                                 XAuint32 numInterfaces,
                                                 const XAInterfaceID *pInterfaceIds,
                                                 const XAboolean *pInterfaceRequired);

XAresult XAMediaRecorderImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAMediaRecorderImpl_QuerySupportedInterfaces(XAuint32 index,
                                                      XAInterfaceID *pInterfaceId);

/*
 * Camera Device
 */
XAresult XACameraDeviceImpl_CreateCameraDevice( FrameworkMap* mapper,
                                                XACapabilities* capabilities,
                                                XAObjectItf* pDevice,
                                                XAuint32 deviceID,
                                                XAuint32 numInterfaces,
                                                const XAInterfaceID * pInterfaceIds,
                                                const XAboolean * pInterfaceRequired);

XAresult XACameraDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XACameraDeviceImpl_QuerySupportedInterfaces(XAuint32 index,
                                                     XAInterfaceID *pInterfaceId);

/*
 * Radio Device
 */
XAresult XARadioDeviceImpl_CreateRadioDevice(   FrameworkMap* mapper,
                                                XAObjectItf* pDevice,
                                                XAuint32 numInterfaces,
                                                const XAInterfaceID * pInterfaceIds,
                                                const XAboolean * pInterfaceRequired);

XAresult XARadioDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XARadioDeviceImpl_QuerySupportedInterfaces(XAuint32 index,
                                                    XAInterfaceID *pInterfaceId);

/*
 * Vibra Device
 */
XAresult XAVibraDeviceImpl_CreateVibraDevice(   FrameworkMap* mapper,
                                                XAObjectItf* pDevice,
                                                XAuint32 deviceID,
                                                XAuint32 numInterfaces,
                                                const XAInterfaceID * pInterfaceIds,
                                                const XAboolean * pInterfaceRequired);

XAresult XAVibraDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XAVibraDeviceImpl_QuerySupportedInterfaces(XAuint32 index,
                                                    XAInterfaceID *pInterfaceId);

/*
 * LED Array
 */
XAresult XALEDArrayDeviceImpl_CreateLEDArrayDevice( FrameworkMap* mapper,
                                                    XAObjectItf* pDevice,
                                                    XAuint32 deviceID,
                                                    XAuint32 numInterfaces,
                                                    const XAInterfaceID * pInterfaceIds,
                                                    const XAboolean * pInterfaceRequired);

XAresult XALEDArrayDeviceImpl_QueryNumSupportedInterfaces(XAuint32 *pNumSupportedInterfaces);

XAresult XALEDArrayDeviceImpl_QuerySupportedInterfaces(XAuint32 index,
                                                    XAInterfaceID *pInterfaceId);


#endif /*XAOBJECTS_H */