Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059 #ifndef _LIBUTIL_ERR_H_
00060 #define _LIBUTIL_ERR_H_
00061
00062 #include <stdarg.h>
00063 #include <stdio.h>
00064 #ifndef _WIN32_WCE
00065 #include <errno.h>
00066 #endif
00067
00068
00069 #include <sphinxbase_export.h>
00070
00078
00079 #ifdef __cplusplus
00080 extern "C" {
00081 #endif
00082 #if 0
00083
00084 }
00085 #endif
00086
00087 SPHINXBASE_EXPORT
00088 void _E__pr_header(char const *file, long line, char const *msg);
00089 SPHINXBASE_EXPORT
00090 void _E__pr_info_header(char const *file, long line, char const *tag);
00091 SPHINXBASE_EXPORT
00092 void _E__pr_info_header_wofn(char const *msg);
00093 SPHINXBASE_EXPORT
00094 void _E__pr_warn(char const *fmt, ...);
00095 SPHINXBASE_EXPORT
00096 void _E__pr_info(char const *fmt, ...);
00097 SPHINXBASE_EXPORT
00098 void _E__die_error(char const *fmt, ...);
00099 SPHINXBASE_EXPORT
00100 void _E__abort_error(char const *fmt, ...);
00101 SPHINXBASE_EXPORT
00102 void _E__sys_error(char const *fmt, ...);
00103 SPHINXBASE_EXPORT
00104 void _E__fatal_sys_error(char const *fmt, ...);
00105
00112 SPHINXBASE_EXPORT
00113 FILE *err_set_logfp(FILE *logfp);
00114
00119 SPHINXBASE_EXPORT
00120 FILE * err_get_logfp(void);
00121
00122
00131 SPHINXBASE_EXPORT
00132 int err_set_logfile(char const *file);
00133
00137 #define E_FATAL _E__pr_header(__FILE__, __LINE__, "FATAL_ERROR"),_E__die_error
00138
00142 #define E_FATAL_SYSTEM _E__pr_header(__FILE__, __LINE__, "SYSTEM_ERROR"),_E__fatal_sys_error
00143
00147 #define E_WARN_SYSTEM _E__pr_header(__FILE__, __LINE__, "SYSTEM_ERROR"),_E__sys_error
00148
00152 #define E_ERROR_SYSTEM _E__pr_header(__FILE__, __LINE__, "SYSTEM_ERROR"),_E__sys_error
00153
00157 #define E_INFO _E__pr_info_header(__FILE__, __LINE__, "INFO"),_E__pr_info
00158
00163 #define E_INFOCONT _E__pr_info
00164
00168 #define E_INFO_NOFN _E__pr_info_header_wofn("INFO"),_E__pr_info
00169
00170
00174 #define E_WARN _E__pr_header(__FILE__, __LINE__, "WARNING"),_E__pr_warn
00175
00179 #define E_ERROR _E__pr_header(__FILE__, __LINE__, "ERROR"),_E__pr_warn
00180
00181
00182 #ifdef __cplusplus
00183 }
00184 #endif
00185
00186
00187 #endif
00188
00189