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_OSAL_ETC.h
2020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @brief
2120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @author      SeungBeom Kim (sbcrux.kim@samsung.com)
2238ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang * @version     2.0.0
2320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang * @history
2438ef2572d26fc760c584a1855a3d002f34eb0231Jiho Chang *   2012.02.20 : Create
2520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang */
2620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
2720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifndef Exynos_OSAL_ETC
2820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#define Exynos_OSAL_ETC
2920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
3020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#include "OMX_Types.h"
3120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
3220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
3320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifdef __cplusplus
3420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changextern "C" {
3520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif
3620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
3720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_PTR Exynos_OSAL_Strcpy(OMX_PTR dest, OMX_PTR src);
3820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_S32 Exynos_OSAL_Strncmp(OMX_PTR str1, OMX_PTR str2, size_t num);
3920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_S32 Exynos_OSAL_Strcmp(OMX_PTR str1, OMX_PTR str2);
4020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_PTR Exynos_OSAL_Strcat(OMX_PTR dest, OMX_PTR src);
4120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changsize_t Exynos_OSAL_Strlen(const char *str);
4220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changssize_t getline(char **ppLine, size_t *len, FILE *stream);
4320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
4420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang/* perf */
4520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changtypedef enum _PERF_ID_TYPE {
4620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang    PERF_ID_CSC = 0,
4720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang    PERF_ID_DEC,
4820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang    PERF_ID_ENC,
4920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang    PERF_ID_USER,
5020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang    PERF_ID_MAX,
5120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang} PERF_ID_TYPE;
5220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
5320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changvoid Exynos_OSAL_PerfInit(PERF_ID_TYPE id);
5420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changvoid Exynos_OSAL_PerfStart(PERF_ID_TYPE id);
5520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changvoid Exynos_OSAL_PerfStop(PERF_ID_TYPE id);
5620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_U32 Exynos_OSAL_PerfFrame(PERF_ID_TYPE id);
5720d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_U32 Exynos_OSAL_PerfTotal(PERF_ID_TYPE id);
5820d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho ChangOMX_U32 Exynos_OSAL_PerfFrameCount(PERF_ID_TYPE id);
5920d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changint Exynos_OSAL_PerfOver30ms(PERF_ID_TYPE id);
6020d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Changvoid Exynos_OSAL_PerfPrint(OMX_STRING prefix, PERF_ID_TYPE id);
6120d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
6220d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#ifdef __cplusplus
6320d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang}
6420d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif
6520d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang
6620d3e6e3118a6e19627296e9247e948d54ec0fb8Jiho Chang#endif
67