logger.h
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 #ifndef GWEN_LOGGER_H
00029 #define GWEN_LOGGER_H
00030
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034
00035 #define GWEN_LOGDOMAIN "gwenhywfar"
00036
00037 #include <gwenhywfar/gwenhywfarapi.h>
00038
00039 typedef void GWENHYWFAR_CB (*GWEN_LOGGERFUNCTIONLOG)(const char *s);
00040
00041 typedef enum {
00042 GWEN_LoggerType_Console,
00043 GWEN_LoggerType_File,
00044 GWEN_LoggerType_Syslog,
00045 GWEN_LoggerType_Function,
00046
00047 GWEN_LoggerType_Unknown=9999
00048 } GWEN_LOGGER_LOGTYPE;
00049
00050
00051 typedef enum {
00052 GWEN_LoggerFacility_Auth=0,
00053 GWEN_LoggerFacility_Daemon,
00054 GWEN_LoggerFacility_Mail,
00055 GWEN_LoggerFacility_News,
00056 GWEN_LoggerFacility_User,
00057
00058 GWEN_LoggerFacility_Unknown=9999
00059 } GWEN_LOGGER_FACILITY;
00060
00061
00062 typedef enum {
00063 GWEN_LoggerLevel_Emergency=0,
00064 GWEN_LoggerLevel_Alert,
00065 GWEN_LoggerLevel_Critical,
00066 GWEN_LoggerLevel_Error,
00067 GWEN_LoggerLevel_Warning,
00068 GWEN_LoggerLevel_Notice,
00069 GWEN_LoggerLevel_Info,
00070 GWEN_LoggerLevel_Debug,
00071 GWEN_LoggerLevel_Verbous,
00072
00073 GWEN_LoggerLevel_Unknown=9999
00074 } GWEN_LOGGER_LEVEL;
00075
00076
00077
00078
00083 GWENHYWFAR_API int GWEN_Logger_Exists(const char *logDomain);
00084
00085
00097 GWENHYWFAR_API int GWEN_Logger_Open(const char *logDomain,
00098 const char *ident,
00099 const char *file,
00100 GWEN_LOGGER_LOGTYPE logtype,
00101 GWEN_LOGGER_FACILITY facility);
00102
00107 GWENHYWFAR_API void GWEN_Logger_Close(const char *logDomain);
00108
00112 GWENHYWFAR_API int GWEN_Logger_IsOpen(const char *logDomain);
00113
00114
00122 GWENHYWFAR_API int GWEN_Logger_Log(const char *logDomain,
00123 GWEN_LOGGER_LEVEL priority, const char *s);
00124
00130 GWENHYWFAR_API void GWEN_Logger_Enable(const char *logDomain,
00131 int f);
00132
00138 GWENHYWFAR_API int GWEN_Logger_IsEnabled(const char *logDomain);
00139
00146 GWENHYWFAR_API void GWEN_Logger_SetLevel(const char *logDomain,
00147 GWEN_LOGGER_LEVEL l);
00148
00153 GWENHYWFAR_API int GWEN_Logger_GetLevel(const char *logDomain);
00154
00155
00161 GWENHYWFAR_API void GWEN_Logger_SetIdent(const char *logDomain,
00162 const char *id);
00163
00167 void GWEN_Logger_SetFilename(const char *logDomain, const char *name);
00168
00169
00175 GWENHYWFAR_API
00176 GWEN_LOGGERFUNCTIONLOG GWEN_Logger_SetLogFunction(const char *logDomain,
00177 GWEN_LOGGERFUNCTIONLOG fn);
00178
00182 GWENHYWFAR_API
00183 GWEN_LOGGER_LEVEL GWEN_Logger_Name2Level(const char *name);
00184
00185
00190 GWENHYWFAR_API
00191 const char *GWEN_Logger_Level2Name(GWEN_LOGGER_LEVEL level);
00192
00193
00197 GWENHYWFAR_API
00198 GWEN_LOGGER_LOGTYPE GWEN_Logger_Name2Logtype(const char *name);
00199
00203 GWENHYWFAR_API
00204 const char *GWEN_Logger_Logtype2Name(GWEN_LOGGER_LOGTYPE lt);
00205
00206
00207
00208 #ifdef __cplusplus
00209 }
00210 #endif
00211
00212
00213 #endif
00214
00215