説明を見る。 1 #ifndef CRI_INCL_CRI_ERROR_H
2 #define CRI_INCL_CRI_ERROR_H
3
4
5
6
7
8
9
10
11
12
13
24
25
26
27 #include <cri_le_xpt.h>
28
29
30
31
32
33
34
35 #define CRIERROR_VER_NAME "CRI Error(LE)"
36 #define CRIERROR_VER_NUM "1.04.04"
37 #define CRIERROR_VER_OPTION
38
43 typedef enum {
44 CRIERR_OK = 0,
46 CRIERR_NG = -1,
48 CRIERR_INVALID_PARAMETER = -2,
50 CRIERR_FAILED_TO_ALLOCATE_MEMORY = -3,
52 CRIERR_UNSAFE_FUNCTION_CALL = -4,
54 CRIERR_FUNCTION_NOT_IMPLEMENTED = -5,
56 CRIERR_LIBRARY_NOT_INITIALIZED = -6,
58
59 CRIERR_ENUM_BE_SINT32 = 0x7FFFFFFF
60 } CriError;
61
66 typedef enum {
67 CRIERR_NOTIFY_ALL = 0,
69 CRIERR_NOTIFY_FATAL = 1,
71
72 CRIERR_NOTIFY_ENUM_BE_SINT32 = 0x7FFFFFFF
73 } CriErrorNotificationLevel;
74
75
76
77 typedef enum {
78 CRIERR_LEVEL_ERROR = 0,
79 CRIERR_LEVEL_WARNING = 1,
80
81 CRIERR_LEVEL_ENUM_BE_SINT32 = 0x7FFFFFFF
82 } CriErrorLevel;
83
84
85
86
87
88 #if defined(CRIERROR_SIMPLIFY)
89
90
91 #define criErr_NotifyError(id, msg) criErr_NotifyErrorSimple()
92 #define criErr_NotifyError1(id, msg, p1) criErr_NotifyErrorSimple()
93 #define criErr_NotifyError2(id, msg, p1, p2) criErr_NotifyErrorSimple()
94 #define criErr_NotifyErrorPrmArray(id, msg, p1, p2, pa) criErr_NotifyErrorSimple()
95 #define criErr_NotifyErrorGeneric(_error_id, _error_no) criErr_NotifyErrorSimple()
96
97
98 #define criErr_NotifyWarning(id, msg) criErr_NotifyWarningSimple()
99 #define criErr_NotifyWarning1(id, msg, p1) criErr_NotifyWarningSimple()
100 #define criErr_NotifyWarning2(id, msg, p1, p2) criErr_NotifyWarningSimple()
101 #define criErr_NotifyWarningPrmArray(id, msg, p1, p2, pa) criErr_NotifyWarningSimple()
102 #define criErr_NotifyWarningGeneric(_error_id, _error_no) criErr_NotifyWarningSimple()
103 #else
104
105
106 #define criErr_NotifyError(id, msg) criErr_Notify(CRIERR_LEVEL_ERROR, id ":" msg)
107 #define criErr_NotifyError1(id, msg, p1) criErr_Notify1(CRIERR_LEVEL_ERROR, (id ":" msg), (CriUintPtr)(p1))
108 #define criErr_NotifyError2(id, msg, p1, p2) criErr_Notify2(CRIERR_LEVEL_ERROR, (id ":" msg), (CriUintPtr)(p1), (CriUintPtr)(p2))
109 #define criErr_NotifyErrorPrmArray(id, msg, p1, p2, pa) criErr_NotifyPrmArray(CRIERR_LEVEL_ERROR, (id ":" msg), (CriUintPtr)(p1), (CriUintPtr)(p2), (CriUintPtr *)(pa))
110 #define criErr_NotifyErrorGeneric(_error_id, _error_no) criErr_NotifyGeneric(CRIERR_LEVEL_ERROR, _error_id, _error_no)
111
112
113 #define criErr_NotifyWarning(id, msg) criErr_Notify(CRIERR_LEVEL_WARNING, id ":" msg)
114 #define criErr_NotifyWarning1(id, msg, p1) criErr_Notify1(CRIERR_LEVEL_WARNING, (id ":" msg), (CriUintPtr)(p1))
115 #define criErr_NotifyWarning2(id, msg, p1, p2) criErr_Notify2(CRIERR_LEVEL_WARNING, (id ":" msg), (CriUintPtr)(p1), (CriUintPtr)(p2))
116 #define criErr_NotifyWarningPrmArray(id, msg, p1, p2, pa) criErr_NotifyPrmArray(CRIERR_LEVEL_WARNING, (id ":" msg), (CriUintPtr)(p1), (CriUintPtr)(p2), (CriUintPtr *)(pa))
117 #define criErr_NotifyWarningGeneric(_error_id, _error_no) criErr_NotifyGeneric(CRIERR_LEVEL_WARNING, _error_id, _error_no)
118 #endif
119
120
121
122
123
124
125 typedef void (CRIAPI *CriErrCbFunc)(const CriChar8 *errid, CriUint32 p1, CriUint32 p2, CriUint32 *parray);
126
127
128
129
130
131
132
133 #ifdef __cplusplus
134 namespace criErr {
135 extern CriError ErrorContainer;
136 }
137 #endif
138
139
140
141
142
143
144 #ifdef __cplusplus
145 extern "C" {
146 #endif
147
161 const CriChar8* CRIAPI criErr_ConvertIdToMsg(const CriChar8 *errid);
162
183 const CriChar8* CRIAPI criErr_ConvertIdToMessage(const CriChar8 *errid, CriUint32 p1, CriUint32 p2);
184
220 void CRIAPI criErr_SetCallback(CriErrCbFunc cbf);
221
231 void CRIAPI criErr_SetErrorNotificationLevel(CriErrorNotificationLevel level);
232
242 CriUint32 CRIAPI criErr_GetErrorCount(CriErrorLevel level);
243
253 void CRIAPI criErr_ResetErrorCount(CriErrorLevel level);
254
255
256
257
258 #ifdef __cplusplus
259 }
260 #endif
261
262
267 #endif // CRI_INCL_CRI_ERROR_INTR_H
268
269 -stdin