diff -r a36789189b53 -r 095bea5f582e khronosfws/openmax_al/src/common/xaglobals.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/khronosfws/openmax_al/src/common/xaglobals.h Tue Aug 31 15:43:02 2010 +0300 @@ -0,0 +1,112 @@ +/* + * 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: Header File for common AL enums, functions. + * + */ +/*All global definitions and declarations here */ + +#ifndef XAGLOBALS_H +#define XAGLOBALS_H + +#include "openmaxalwrapper.h" +#include "xadebug.h" + +/** + GLOBAL ENUMERATIONS + */ +/** + * enumeration for different adaptation event types. + * add more types when needed, use single bit values. + **/ +typedef enum + { + XA_GENERICEVENTS = 0x1, + XA_PLAYITFEVENTS = 0x2, + XA_RECORDITFEVENTS = 0x4, + XA_SNAPSHOTITFEVENTS = 0x8, + XA_OUTPUTMIXITFEVENTS = 0x10, + XA_CAMERAITFEVENTS = 0x20, + XA_PREFETCHITFEVENTS = 0x40, + XA_RADIOITFEVENTS = 0x80, + XA_RDSITFEVENTS = 0x100, + XA_METADATAEVENTS = 0x200, + XA_VOLUMEITFEVENTS = 0x400, + XA_NOKIALINEARVOLITFEVENTS = 0x800, + XA_NOKIAEXTVOLITFEVENTS = 0x1000, + XA_ADDMORETYPES = 0x2000 + } XAAdaptEventTypes; + +typedef enum + { + XACAP_DECODER = 0x1, + XACAP_ENCODER = 0x2, + XACAP_DEVSNK = 0x4, + XACAP_DEVSRC = 0x8, + + XACAP_AUDIO = 0x10, + XACAP_VIDEO = 0x20, + XACAP_IMAGE = 0x40 + } XACapsType; + +typedef enum + { + XA_UNDEFINED = 0, XA_READBUFFER, XA_WRITEBUFFER, XA_READ, XA_WRITE + } XAConfigExtensionCpKey; + +typedef enum + { + XA_MEDIATYPE_AUDIO = 0, + XA_MEDIATYPE_VIDEO, + XA_MEDIATYPE_IMAGE, + XA_MEDIATYPE_UNKNOWN + } XAMediaType; + +#define CPCONFIGKEY "TestAppPipeConfig" + +#define XA_RECMODE_STREAM 1 +#define XA_RECMODE_STILL 2 + +#define XA_IMPL_SUPPORTED_AUDIO_OUT_NUM 3 +#define XA_IMPL_OMIX_MAX_CONNECTED_MEDIAPLAYERS 10 + +/* Max volume level is implementation-dependent but must be at least 0mB + * now used max volume 10 mB + */ +#define MAX_PERCENTAGE_VOLUME 100 +#define MIN_VOLUME_LEVEL 0 +#define MAX_SUPPORT_VOLUME_LEVEL 9000 + +/* Stereo position range is -1000 to 1000 permille. -1000 permille is fully left + * and 1000 permille is fully right. 0 permille is center. + */ +#define STEREO_POSITION_RIGHT 1000 +#define STEREO_POSITION_LEFT -1000 +#define STEREO_POSITION_CENTER 0 + +/** + * GLOBAL METHODS + */ + +/* + * Check if interface IDs are equal + */ +XAboolean XACommon_EqualIIds(XAInterfaceID idA, XAInterfaceID idB); + +/* + * Check Data Source availability and type + */ +XAresult XACommon_CheckDataSource(XADataSource* source, XAMediaType* type); + +XAresult XACommon_ValidateDataLocator(XAuint32 pCounter, void* pSnk, ...); +#endif /*XAGLOBALS_H */