openmaxil_plat/test_api/inc/omxilsymbianbuffersextensions.h
changeset 0 0e4a32b9112d
equal deleted inserted replaced
-1:000000000000 0:0e4a32b9112d
       
     1 /*
       
     2 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     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".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 /**
       
    20    @file
       
    21    @internalComponent
       
    22 */
       
    23 
       
    24 #ifndef OMXILSYMBIANBUFFERSOURCEEXTENSIONS_H
       
    25 #define OMXILSYMBIANBUFFERSOURCEEXTENSIONS_H
       
    26 
       
    27 #include <openmax/il/khronos/v1_x/OMX_Types.h>
       
    28 
       
    29 /**
       
    30  * The string that the Symbian's OpenMAX IL Buffer components will
       
    31  * translate into a 32-bit OpenMAX IL index to support the message queue communication
       
    32  * with user client
       
    33  */
       
    34 #if 1
       
    35 const char sOmxSymbianBufferMsgQueue [] = "OMX.SYMBIAN.INDEX.PARAM.BUFFERMSGQUEUE";
       
    36 #endif
       
    37 const char sOmxSymbianBufferSize[] = "OMX.SYMBIAN.INDEX.PARAM.BUFFERSIZE";
       
    38 const char sOmxSymbianBufferChunk[] = "OMX.SYMBIAN.INDEX.PARAM.BUFFERCHUNK";
       
    39 
       
    40 /*
       
    41  * Custom index used by Symbian's OpenMAX IL Buffers to select the
       
    42  * structure for getting message queue global names
       
    43  * 
       
    44  * Vendor specific structures should be in the range of 0x7F000000 to 0x7FFFFFFE.
       
    45  * This range is not broken out by vendor, so private indexes are not guaranteed unique 
       
    46  * and therefore should only be sent to the appropriate component.
       
    47  */
       
    48 #if 1
       
    49 #define OMX_SymbianIndexParamBufferMsgQueueData 0x7F000006 // TBC
       
    50 #endif
       
    51 #define OMX_SymbianIndexParamBufferSize 0x7F000007
       
    52 #define OMX_SymbianIndexParam3PlaneBufferChunk 0x7F000008
       
    53 
       
    54 #if 1 
       
    55 /**
       
    56  * Custom OpenMAX IL structure to be used as a container for message queue global names
       
    57  */
       
    58 struct OMX_SYMBIAN_PARAM_BUFFER_MSGQUEUE
       
    59 	{
       
    60     OMX_U32 nSize;                 /**< Size of this structure, in Bytes */
       
    61     OMX_VERSIONTYPE nVersion;      /**< OMX specification version information */
       
    62     OMX_U32 nPortIndex;            /**< Port that this structure applies to */
       
    63     OMX_PTR pBufSrcComponentHandles;	/** This is a pointer to TBufSrcComponentHandles */
       
    64 	};
       
    65 #endif
       
    66 
       
    67 /**
       
    68  Custom OpenMAX IL structure used as container for buffer size on RChunk backed buffers
       
    69  */
       
    70 
       
    71 struct OMX_SYMBIAN_PARAM_BUFFER_SIZE
       
    72 	{
       
    73 	OMX_U32 nSize;				/**< Size of this structure, in Bytes */
       
    74 	OMX_VERSIONTYPE nVersion;	/**< OMX specification version information */
       
    75 	OMX_U32 nPortIndex;			/**< Port that this structure applies to */
       
    76 	OMX_S32 nBufferSize;		/**< Buffer size in bytes */
       
    77 	};
       
    78 
       
    79 struct OMX_SYMBIAN_PARAM_3PLANE_CHUNK_DATA
       
    80 	{
       
    81 	OMX_U32 nSize;                 /**< Size of this structure, in Bytes */
       
    82 	OMX_VERSIONTYPE nVersion;      /**< OMX specification version information */
       
    83 	OMX_U32 nPortIndex;	           /**< Port that this structure applies to */
       
    84 	OMX_U32 nChunk;	               /**< Chunk */
       
    85 	OMX_U32 nFilledBufferQueue;	   /**< FilledBufferQueue */
       
    86 	OMX_U32 nAvailableBufferQueue; /**< AVailableBufferQueue */	
       
    87 	OMX_U64 nThreadId;             /**< The thread which creates the chunk */
       
    88 	};
       
    89 
       
    90 #endif // OMXILSYMBIANBUFFERSOURCEEXTENSIONS_H