1c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/*
2c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * Copyright (C) Texas Instruments - http://www.ti.com/
3c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *
4c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * Licensed under the Apache License, Version 2.0 (the "License");
5c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * you may not use this file except in compliance with the License.
6c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * You may obtain a copy of the License at
7c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *
8c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *      http://www.apache.org/licenses/LICENSE-2.0
9c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *
10c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * Unless required by applicable law or agreed to in writing, software
11c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * distributed under the License is distributed on an "AS IS" BASIS,
12c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * See the License for the specific language governing permissions and
14c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * limitations under the License.
15c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev */
16c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
17c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#ifndef ERROR_UTILS_H
18c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define ERROR_UTILS_H
19c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
20c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev///Header file where all the android error codes are defined
211d0e99f00b2089482e5f7c91ce0b0866f465a4d6Mathias Agopian#include <utils/Errors.h>
22c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
23c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev///Header file where all the OMX error codes are defined
24c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#include "OMX_Core.h"
25c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
26f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmons#include "Status.h"
27f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmons
28c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
29c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchevextern "C"
30c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev{
31c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev///Header file where all the TI OSAL error codes are defined
32c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#include "timm_osal_error.h"
33c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev};
34c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
35f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmonsnamespace Ti {
36f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmonsnamespace Utils {
37c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
38c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev///Generic class with static methods to convert any standard error type to Android error type
39c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchevclass ErrorUtils
40c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev{
41c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchevpublic:
42c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    ///Method to convert from POSIX to Android errors
43c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    static status_t posixToAndroidError(int error);
44c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
45c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    ///Method to convert from TI OSAL to Android errors
46c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    static status_t osalToAndroidError(TIMM_OSAL_ERRORTYPE error);
47c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
48c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    ///Method to convert from OMX to Android errors
49c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev    static status_t omxToAndroidError(OMX_ERRORTYPE error);
50c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
51c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev};
52c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
53f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmons} // namespace Utils
54f7a4d11e9f710e2cd0592310ac1baecccb85f1d1Jason Simmons} // namespace Ti
55c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev
56c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#endif /// ERROR_UTILS_H
57