120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang/* 220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * 338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang * Copyright 2012 Samsung Electronics S.LSI Co. LTD 420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * 520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * Licensed under the Apache License, Version 2.0 (the "License"); 620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * you may not use this file except in compliance with the License. 720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * You may obtain a copy of the License at 820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * 920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * http://www.apache.org/licenses/LICENSE-2.0 1020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * 1120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * Unless required by applicable law or agreed to in writing, software 1220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * distributed under the License is distributed on an "AS IS" BASIS, 1320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * See the License for the specific language governing permissions and 1520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * limitations under the License. 1620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang */ 1720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 1820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang/* 1920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @file Exynos_OMX_Baseport.h 2020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @brief 2120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @author SeungBeom Kim (sbcrux.kim@samsung.com) 2220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * HyeYeon Chung (hyeon.chung@samsung.com) 2338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang * @version 2.0.0 2420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @history 2538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang * 2012.02.20 : Create 2620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang */ 2720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 2820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifndef EXYNOS_OMX_BASE_PORT 2920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define EXYNOS_OMX_BASE_PORT 3020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 3120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 3220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#include "OMX_Component.h" 3320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#include "Exynos_OMX_Def.h" 3420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#include "Exynos_OSAL_Queue.h" 3538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang#include "Exynos_OMX_Def.h" 3620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 3720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 3820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define BUFFER_STATE_ALLOCATED (1 << 0) 3920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define BUFFER_STATE_ASSIGNED (1 << 1) 4020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define HEADER_STATE_ALLOCATED (1 << 2) 4120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define BUFFER_STATE_FREE 0 4220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 4338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang#define MAX_BUFFER_NUM 40 4420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 4520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define INPUT_PORT_INDEX 0 4620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define OUTPUT_PORT_INDEX 1 4720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define ALL_PORT_INDEX -1 4820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define ALL_PORT_NUM 2 4920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 5038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 5138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_BUFFERHEADERTYPE 5238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 5338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_BUFFERHEADERTYPE *OMXBufferHeader; 5438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_BOOL bBufferInOMX; 5538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE ANBHandle; 5638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang void *pYUVBuf[MAX_BUFFER_PLANE]; 5701fa64f5f096690c95b2fd1d3a875d7a1aeefe53Dima Zavin int buf_fd[MAX_BUFFER_PLANE]; 5838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_BUFFERHEADERTYPE; 5938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 6038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_DATABUFFER 6138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 6238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE bufferMutex; 6338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_BUFFERHEADERTYPE* bufferHeader; 6438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_BOOL dataValid; 6538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 allocSize; 6638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 dataLen; 6738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 usedDataLen; 6838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 remainDataLen; 6938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 nFlags; 7038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_TICKS timeStamp; 7138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_PTR pPrivate; 7238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_DATABUFFER; 7338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 7438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef void* CODEC_EXTRA_BUFFERINFO; 7538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 7638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_SINGLEPLANE_DATA 7738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 7838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_PTR dataBuffer; 7901fa64f5f096690c95b2fd1d3a875d7a1aeefe53Dima Zavin int fd; 8038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_SINGLEPLANE_DATA; 8138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 8238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_MULTIPLANE_DATA 8338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 8438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 validPlaneNum; 8538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_PTR dataBuffer[MAX_BUFFER_PLANE]; 8601fa64f5f096690c95b2fd1d3a875d7a1aeefe53Dima Zavin int fd[MAX_BUFFER_PLANE]; 8738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_MULTIPLANE_DATA; 8838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 8938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_DATA 9038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 9138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang union { 9238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_SINGLEPLANE_DATA singlePlaneBuffer; 9338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_MULTIPLANE_DATA multiPlaneBuffer; 9438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang } buffer; 9538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 allocSize; 9638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 dataLen; 9738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 usedDataLen; 9838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 remainDataLen; 9938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_U32 nFlags; 10038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_TICKS timeStamp; 10138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_PTR pPrivate; 10238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang CODEC_EXTRA_BUFFERINFO extInfo; 1033b1c2e30b8c73bb51c3e2c93504e3571ab851268SeungBeom Kim 10438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang /* For Share Buffer */ 10538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_BUFFERHEADERTYPE* bufferHeader; 10638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_DATA; 10738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 10838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_WAY1_PORT_DATABUFFER 10938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 11038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_DATABUFFER dataBuffer; 11138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_PORT_1WAY_DATABUFFER; 11238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 11338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef struct _EXYNOS_OMX_WAY2_PORT_DATABUFFER 11438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 11538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_DATABUFFER inputDataBuffer; 11638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_DATABUFFER outputDataBuffer; 11738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_PORT_2WAY_DATABUFFER; 11838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 11938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef enum _EXYNOS_OMX_PORT_WAY_TYPE 12038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 12138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang WAY1_PORT = 0x00, 12238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang WAY2_PORT 12338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_PORT_WAY_TYPE; 12438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 12538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef enum _EXYNOS_OMX_EXCEPTION_STATE 12638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 12738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang GENERAL_STATE = 0x00, 12838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang NEED_PORT_FLUSH, 12938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang NEED_PORT_DISABLE, 130c01f2434dc56e71482229e8ab8c7d5cda7c46d01SeungBeom Kim INVALID_STATE, 13138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_EXCEPTION_STATE; 13238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 13338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Changtypedef enum _EXYNOS_OMX_PLANE 13438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang{ 13538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang ONE_PLANE = 0x01, 13638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang TWO_PLANE = 0x02, 13738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang THREE_PLANE = 0x03, 13838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang/* 13938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang ANB_START_PLANE = 0x10, 14038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang ANB_ONE_PLANE = 0x11, 14138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang ANB_TWO_PLANE = 0x12, 14238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang ANB_THREE_PLANE = 0x13, 14338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang*/ 14438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang} EXYNOS_OMX_PLANE; 14538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 14620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changtypedef struct _EXYNOS_OMX_BASEPORT 14720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang{ 14838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_BUFFERHEADERTYPE *extendBufferHeader; 14920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_U32 *bufferStateAllocate; 15020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_PARAM_PORTDEFINITIONTYPE portDefinition; 15120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_HANDLETYPE bufferSemID; 15220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang EXYNOS_QUEUE bufferQ; 15320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_U32 assignedBufferNum; 15420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_STATETYPE portState; 15520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_HANDLETYPE loadedResource; 15620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_HANDLETYPE unloadedResource; 15720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 15820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_BOOL bIsPortFlushed; 15920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_BOOL bIsPortDisabled; 16020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_MARKTYPE markType; 16120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 16220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_CONFIG_RECTTYPE cropRectangle; 16320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 16420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang /* Tunnel Info */ 16520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_HANDLETYPE tunneledComponent; 16620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_U32 tunneledPort; 16720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_U32 tunnelBufferNum; 16820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_BUFFERSUPPLIERTYPE bufferSupplier; 16920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_U32 tunnelFlags; 17020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 17120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_BOOL bIsANBEnabled; 17220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang OMX_BOOL bStoreMetaData; 17338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 17438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_BUFFERPROCESS_TYPE bufferProcessType; 17538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_PORT_WAY_TYPE portWayType; 17638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE codecSemID; 17738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_QUEUE codecBufferQ; 17838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 17938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE pauseEvent; 18038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 18138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang /* Buffer */ 18238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang union { 18338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_PORT_1WAY_DATABUFFER port1WayDataBuffer; 18438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_PORT_2WAY_DATABUFFER port2WayDataBuffer; 18538ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang } way; 18638ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 18738ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang /* Data */ 18838ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_DATA processData; 18938ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang 19038ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang /* for flush of Shared buffer scheme */ 19138ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE hAllCodecBufferReturnEvent; 19238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang OMX_HANDLETYPE hPortMutex; 19338ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang EXYNOS_OMX_EXCEPTION_STATE exceptionFlag; 194bd09b8148180c902648b5ac57d024f457f852efaSeungBeom Kim 195bd09b8148180c902648b5ac57d024f457f852efaSeungBeom Kim OMX_PARAM_PORTDEFINITIONTYPE newPortDefinition; 196bd09b8148180c902648b5ac57d024f457f852efaSeungBeom Kim OMX_CONFIG_RECTTYPE newCropRectangle; 19720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang} EXYNOS_OMX_BASEPORT; 19820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 19920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 20020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifdef __cplusplus 20120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changextern "C" { 20220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif 20320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 20420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_ERRORTYPE Exynos_OMX_PortEnableProcess(OMX_COMPONENTTYPE *pOMXComponent, OMX_S32 nPortIndex); 20520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_ERRORTYPE Exynos_OMX_PortDisableProcess(OMX_COMPONENTTYPE *pOMXComponent, OMX_S32 nPortIndex); 20638ef2572d26fc760c584a1855a3d002f34eb0231Jiho ChangOMX_ERRORTYPE Exynos_OMX_BufferFlushProcess(OMX_COMPONENTTYPE *pOMXComponent, OMX_S32 nPortIndex, OMX_BOOL bEvent); 20720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_ERRORTYPE Exynos_OMX_Port_Constructor(OMX_HANDLETYPE hComponent); 20820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_ERRORTYPE Exynos_OMX_Port_Destructor(OMX_HANDLETYPE hComponent); 20938ef2572d26fc760c584a1855a3d002f34eb0231Jiho ChangOMX_ERRORTYPE Exynos_ResetDataBuffer(EXYNOS_OMX_DATABUFFER *pDataBuffer); 21038ef2572d26fc760c584a1855a3d002f34eb0231Jiho ChangOMX_ERRORTYPE Exynos_ResetCodecData(EXYNOS_OMX_DATA *pData); 21138ef2572d26fc760c584a1855a3d002f34eb0231Jiho ChangOMX_ERRORTYPE Exynos_Shared_BufferToData(EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_DATA *pData, EXYNOS_OMX_PLANE nPlane); 21238ef2572d26fc760c584a1855a3d002f34eb0231Jiho ChangOMX_ERRORTYPE Exynos_Shared_DataToBuffer(EXYNOS_OMX_DATA *pData, EXYNOS_OMX_DATABUFFER *pUseBuffer); 21320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 21420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifdef __cplusplus 21520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang}; 21620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif 21720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 21820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang 21920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif 220