173dd808754c641fe798273d356ee38368715fa7bLajos Molnar/*
273dd808754c641fe798273d356ee38368715fa7bLajos Molnar * Copyright (C) 2016 The Android Open Source Project
373dd808754c641fe798273d356ee38368715fa7bLajos Molnar *
473dd808754c641fe798273d356ee38368715fa7bLajos Molnar * Licensed under the Apache License, Version 2.0 (the "License");
573dd808754c641fe798273d356ee38368715fa7bLajos Molnar * you may not use this file except in compliance with the License.
673dd808754c641fe798273d356ee38368715fa7bLajos Molnar * You may obtain a copy of the License at
773dd808754c641fe798273d356ee38368715fa7bLajos Molnar *
873dd808754c641fe798273d356ee38368715fa7bLajos Molnar *      http://www.apache.org/licenses/LICENSE-2.0
973dd808754c641fe798273d356ee38368715fa7bLajos Molnar *
1073dd808754c641fe798273d356ee38368715fa7bLajos Molnar * Unless required by applicable law or agreed to in writing, software
1173dd808754c641fe798273d356ee38368715fa7bLajos Molnar * distributed under the License is distributed on an "AS IS" BASIS,
1273dd808754c641fe798273d356ee38368715fa7bLajos Molnar * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1373dd808754c641fe798273d356ee38368715fa7bLajos Molnar * See the License for the specific language governing permissions and
1473dd808754c641fe798273d356ee38368715fa7bLajos Molnar * limitations under the License.
1573dd808754c641fe798273d356ee38368715fa7bLajos Molnar */
1673dd808754c641fe798273d356ee38368715fa7bLajos Molnar
1773dd808754c641fe798273d356ee38368715fa7bLajos Molnar#ifndef OMX_UTILS_H_
1873dd808754c641fe798273d356ee38368715fa7bLajos Molnar#define OMX_UTILS_H_
1973dd808754c641fe798273d356ee38368715fa7bLajos Molnar
2073dd808754c641fe798273d356ee38368715fa7bLajos Molnar/***** DO NOT USE THIS INCLUDE!!! INTERAL ONLY!!! UNLESS YOU RESIDE IN media/libstagefright *****/
2173dd808754c641fe798273d356ee38368715fa7bLajos Molnar
2273dd808754c641fe798273d356ee38368715fa7bLajos Molnar// OMXUtils contains omx-specific utility functions for stagefright/omx library
2373dd808754c641fe798273d356ee38368715fa7bLajos Molnar// TODO: move ACodec and OMXClient into this library
2473dd808754c641fe798273d356ee38368715fa7bLajos Molnar
2573dd808754c641fe798273d356ee38368715fa7bLajos Molnarnamespace android {
2673dd808754c641fe798273d356ee38368715fa7bLajos Molnar
2773dd808754c641fe798273d356ee38368715fa7bLajos Molnartemplate<class T>
2873dd808754c641fe798273d356ee38368715fa7bLajos Molnarstatic void InitOMXParams(T *params) {
2973dd808754c641fe798273d356ee38368715fa7bLajos Molnar    memset(params, 0, sizeof(T));
3073dd808754c641fe798273d356ee38368715fa7bLajos Molnar    params->nSize = sizeof(T);
3173dd808754c641fe798273d356ee38368715fa7bLajos Molnar    params->nVersion.s.nVersionMajor = 1;
3273dd808754c641fe798273d356ee38368715fa7bLajos Molnar    params->nVersion.s.nVersionMinor = 0;
3373dd808754c641fe798273d356ee38368715fa7bLajos Molnar    params->nVersion.s.nRevision = 0;
3473dd808754c641fe798273d356ee38368715fa7bLajos Molnar    params->nVersion.s.nStep = 0;
3573dd808754c641fe798273d356ee38368715fa7bLajos Molnar}
3673dd808754c641fe798273d356ee38368715fa7bLajos Molnar
3773dd808754c641fe798273d356ee38368715fa7bLajos Molnarstatus_t StatusFromOMXError(OMX_ERRORTYPE err);
3873dd808754c641fe798273d356ee38368715fa7bLajos Molnar
3973dd808754c641fe798273d356ee38368715fa7bLajos Molnar}  // namespace android
4073dd808754c641fe798273d356ee38368715fa7bLajos Molnar
4173dd808754c641fe798273d356ee38368715fa7bLajos Molnar#endif
42