Fix for new automake and 64 bit compatibility.
[platform/core/multimedia/avsystem.git] / include / avsys-error.h
1 /*
2  * avsystem
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Jonghyuk Choi <jhchoi.choi@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21
22 #ifndef __AVSYS_ERROR_H__
23 #define __AVSYS_ERROR_H__
24
25 #ifdef __cplusplus
26         extern "C" {
27 #endif
28
29 /**
30   * AVSYS CLASS
31   */
32 #define AVSYS_STATE_SUCCESS                                     (0x00000000)                                    /**< No Error */
33 #define AVSYS_STATE_ERROR                                       (0x80000000)                                    /**< Error Class */
34 #define AVSYS_STATE_WARING                                      (0x70000000)                                    /**< Waring Class */
35
36 /*
37  * Detail enumeration
38  */
39 enum {
40         AVSYS_IN_UNKNOWN = 0,
41         AVSYS_IN_PARAMETER,
42         AVSYS_IN_HANDLE,
43         AVSYS_IN_POINTER,
44         AVSYS_IN_VALUE,
45         AVSYS_IN_OVERRUN,
46         AVSYS_IN_UNDERRUN,
47         AVSYS_IN_RANGE_OVER,
48         AVSYS_IN_RANGE_UNDER,
49         AVSYS_IN_MODE,
50         AVSYS_IN_FORMAT,
51         AVSYS_IN_CHANNEL,
52         AVSYS_IN_SAMPLERATE,
53         AVSYS_IN_LAYER,
54         AVSYS_IN_ROTATE,
55         AVSYS_IN_ALLOC,
56         AVSYS_IN_INTERNAL,
57         /*Extra state for camera*/
58         AVSYS_IN_IO_CONTROL,
59         AVSYS_IN_DEVICE,
60         AVSYS_IN_WAIT_RES,
61         AVSYS_IN_SUPPORT,
62         AVSYS_IN_STATE,
63         AVSYS_IN_PRIVILEGE,
64 };
65
66 /*
67  * AVSYS_WARING
68  */
69 #define AVSYS_STATE_WAR_INVALID_PARAMETER                       (AVSYS_STATE_WARING | AVSYS_IN_PARAMETER)
70 #define AVSYS_STATE_WAR_INVALID_HANDLE                          (AVSYS_STATE_WARING | AVSYS_IN_HANDLE)
71 #define AVSYS_STATE_WAR_INVALID_VALUE                           (AVSYS_STATE_WARING | AVSYS_IN_VALUE)
72 #define AVSYS_STATE_WAR_INVALID_MODE                            (AVSYS_STATE_WARING | AVSYS_IN_MODE)
73 #define AVSYS_STATE_WAR_INVALID_FORMAT                          (AVSYS_STATE_WARING | AVSYS_IN_FORMAT)
74 #define AVSYS_STATE_WAR_INVALID_CHANNEL                         (AVSYS_STATE_WARING | AVSYS_IN_CHANNEL)
75 #define AVSYS_STATE_WAR_INVALID_SAMPLERATE                      (AVSYS_STATE_WARING | AVSYS_IN_SAMPLERATE)
76 #define AVSYS_STATE_WAR_INVALID_LAYER                           (AVSYS_STATE_WARING | AVSYS_IN_LAYER)
77 #define AVSYS_STATE_WAR_INVALID_ROTATE                          (AVSYS_STATE_WARING | AVSYS_IN_ROTATE)
78 #define AVSYS_STATE_WAR_NULL_POINTER                            (AVSYS_STATE_WARING | AVSYS_IN_POINTER)
79 #define AVSYS_STATE_WAR_UNDERRUN                                        (AVSYS_STATE_WARING | AVSYS_IN_UNDERRUN)
80 #define AVSYS_STATE_WAR_OVERRUN                                         (AVSYS_STATE_WARING | AVSYS_IN_OVERRUN)
81 #define AVSYS_STATE_WAR_RANGE_OVER                                      (AVSYS_STATE_WARING | AVSYS_IN_RANGE_OVER)
82 #define AVSYS_STATE_WAR_RANGE_UNDER                                     (AVSYS_STATE_WARING | AVSYS_IN_RANGE_UNDER)
83 #define AVSYS_STATE_WAR_ALLOCATION                                      (AVSYS_STATE_WARING | AVSYS_IN_ALLOC)
84 #define AVSYS_STATE_WAR_INTERNAL                                        (AVSYS_STATE_WARING | AVSYS_IN_INTERNAL)
85 /*Extra warning for camera*/
86 #define AVSYS_STATE_WAR_IO_CONTROL                                      (AVSYS_STATE_WARING | AVSYS_IN_IO_CONTROL)
87 #define AVSYS_STATE_WAR_UNAVAILABLE_DEVICE                      (AVSYS_STATE_WARING | AVSYS_IN_DEVICE)
88 #define AVSYS_STATE_WAR_DEVICE_WAIT_TIMEOUT                     (AVSYS_STATE_WARING | AVSYS_IN_WAIT_RES)
89 #define AVSYS_STATE_WAR_DEVICE_NOT_SUPPORT                      (AVSYS_STATE_WARING | AVSYS_IN_SUPPORT)
90 #define AVSYS_STATE_WAR_INVALID_STATE_TRANSITION        (AVSYS_STATE_WARING | AVSYS_IN_STATE)
91
92 /**
93  *  AVSYS_ERROR
94  */
95 #define AVSYS_STATE_ERR_INVALID_PARAMETER                       (AVSYS_STATE_ERROR | AVSYS_IN_PARAMETER)
96 #define AVSYS_STATE_ERR_INVALID_HANDLE                          (AVSYS_STATE_ERROR | AVSYS_IN_HANDLE)
97 #define AVSYS_STATE_ERR_INVALID_VALUE                           (AVSYS_STATE_ERROR | AVSYS_IN_VALUE)
98 #define AVSYS_STATE_ERR_INVALID_MODE                            (AVSYS_STATE_ERROR | AVSYS_IN_MODE)
99 #define AVSYS_STATE_ERR_INVALID_FORMAT                          (AVSYS_STATE_ERROR | AVSYS_IN_FORMAT)
100 #define AVSYS_STATE_ERR_INVALID_CHANNEL                         (AVSYS_STATE_ERROR | AVSYS_IN_CHANNEL)
101 #define AVSYS_STATE_ERR_INVALID_SAMPLERATE                      (AVSYS_STATE_ERROR | AVSYS_IN_SAMPLERATE)
102 #define AVSYS_STATE_ERR_INVALID_LAYER                           (AVSYS_STATE_ERROR | AVSYS_IN_LAYER)
103 #define AVSYS_STATE_ERR_INVALID_ROTATE                          (AVSYS_STATE_ERROR | AVSYS_IN_ROTATE)
104 #define AVSYS_STATE_ERR_NULL_POINTER                            (AVSYS_STATE_ERROR | AVSYS_IN_POINTER)
105 #define AVSYS_STATE_ERR_UNDERRUN                                        (AVSYS_STATE_ERROR | AVSYS_IN_UNDERRUN)
106 #define AVSYS_STATE_ERR_OVERRUN                                         (AVSYS_STATE_ERROR | AVSYS_IN_OVERRUN)
107 #define AVSYS_STATE_ERR_RANGE_OVER                                      (AVSYS_STATE_ERROR | AVSYS_IN_RANGE_OVER)
108 #define AVSYS_STATE_ERR_RANGE_UNDER                                     (AVSYS_STATE_ERROR | AVSYS_IN_RANGE_UNDER)
109 #define AVSYS_STATE_ERR_ALLOCATION                                      (AVSYS_STATE_ERROR | AVSYS_IN_ALLOC)
110 #define AVSYS_STATE_ERR_INTERNAL                                        (AVSYS_STATE_ERROR | AVSYS_IN_INTERNAL)
111 #define AVSYS_STATE_ERR_UNKNOWN                                         (AVSYS_STATE_ERROR | AVSYS_IN_UNKNOWN)  /**< unknown error */
112 /*Extra warning for camera*/
113 #define AVSYS_STATE_ERR_IO_CONTROL                                      (AVSYS_STATE_ERROR | AVSYS_IN_IO_CONTROL)
114 #define AVSYS_STATE_ERR_UNAVAILABLE_DEVICE                      (AVSYS_STATE_ERROR | AVSYS_IN_DEVICE)
115 #define AVSYS_STATE_ERR_DEVICE_WAIT_TIMEOUT                     (AVSYS_STATE_ERROR | AVSYS_IN_WAIT_RES)
116 #define AVSYS_STATE_ERR_DEVICE_NOT_SUPPORT                      (AVSYS_STATE_ERROR | AVSYS_IN_SUPPORT)
117 #define AVSYS_STATE_ERR_INVALID_STATE                           (AVSYS_STATE_ERROR | AVSYS_IN_STATE)
118 #define AVSYS_STATE_ERR_PRIVILEGE                                       (AVSYS_STATE_ERROR | AVSYS_IN_PRIVILEGE)
119
120
121 #define AVSYS_FAIL(_A_)                                         (AVSYS_STATE_ERROR & (_A_))
122 #define AVSYS_SUCCESS(_A_)                                      (!AVSYS_FAIL(_A_))
123 #define AVSYS_WARING(_A_)                                       (AVSYS_STATE_WARING & (_A_))
124 #define AVSYS_ERROR(_A_)                                        (AVSYS_STATE_ERROR & (_A_))
125
126 #ifdef __cplusplus
127         }
128 #endif
129
130 #endif /* __AVSYS_ERROR_H__ */