gwenhywfar  5.14.1
logger.h
Go to the documentation of this file.
1 /***************************************************************************
2  begin : Sun Dec 05 2003
3  copyright : (C) 2003 by Martin Preuss
4  email : martin@libchipcard.de
5 
6  ***************************************************************************
7  * *
8  * This library is free software; you can redistribute it and/or *
9  * modify it under the terms of the GNU Lesser General Public *
10  * License as published by the Free Software Foundation; either *
11  * version 2.1 of the License, or (at your option) any later version. *
12  * *
13  * This library is distributed in the hope that it will be useful, *
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
16  * Lesser General Public License for more details. *
17  * *
18  * You should have received a copy of the GNU Lesser General Public *
19  * License along with this library; if not, write to the Free Software *
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, *
21  * MA 02111-1307 USA *
22  * *
23  ***************************************************************************/
24 
25 #ifndef GWEN_LOGGER_H
26 #define GWEN_LOGGER_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 #define GWEN_LOGDOMAIN "gwenhywfar"
33 
34 #include <gwenhywfar/gwenhywfarapi.h>
35 #include <gwenhywfar/buffer.h>
36 
37 
38 typedef void GWENHYWFAR_CB(*GWEN_LOGGERFUNCTIONLOG)(const char *s);
39 
40 typedef enum {
45 
48 
49 
50 typedef enum {
56 
59 
60 
61 typedef enum {
71 
74 
75 
76 
77 
82 GWENHYWFAR_API int GWEN_Logger_Exists(const char *logDomain);
83 
84 
96 GWENHYWFAR_API int GWEN_Logger_Open(const char *logDomain,
97  const char *ident,
98  const char *file,
99  GWEN_LOGGER_LOGTYPE logtype,
100  GWEN_LOGGER_FACILITY facility);
101 
106 GWENHYWFAR_API void GWEN_Logger_Close(const char *logDomain);
107 
111 GWENHYWFAR_API int GWEN_Logger_IsOpen(const char *logDomain);
112 
113 
121 GWENHYWFAR_API void GWEN_Logger_Log(const char *logDomain,
122  GWEN_LOGGER_LEVEL priority, const char *s);
123 
129 GWENHYWFAR_API void GWEN_Logger_Enable(const char *logDomain,
130  int f);
131 
137 GWENHYWFAR_API int GWEN_Logger_IsEnabled(const char *logDomain);
138 
145 GWENHYWFAR_API void GWEN_Logger_SetLevel(const char *logDomain,
147 
152 GWENHYWFAR_API int GWEN_Logger_GetLevel(const char *logDomain);
153 
154 
160 GWENHYWFAR_API void GWEN_Logger_SetIdent(const char *logDomain,
161  const char *id);
162 
166 void GWEN_Logger_SetFilename(const char *logDomain, const char *name);
167 
168 
177 
182 GWEN_LOGGER_LEVEL GWEN_Logger_Name2Level(const char *name);
183 
184 
190 const char *GWEN_Logger_Level2Name(GWEN_LOGGER_LEVEL level);
191 
192 
198 
204 
205 
210 int GWEN_Logger_CreateLogMessage(const char *logDomain,
211  GWEN_LOGGER_LEVEL priority, const char *s,
212  GWEN_BUFFER *mbuf);
213 
214 
215 #ifdef __cplusplus
216 }
217 #endif
218 
219 
220 #endif /* #ifndef CH_LOGGER_H */
221 
222 
GWENHYWFAR_API int GWEN_Logger_IsEnabled(const char *logDomain)
Definition: logger.c:461
GWEN_LOGGER_FACILITY
Definition: logger.h:50
void GWENHYWFAR_CB(* GWEN_LOGGERFUNCTIONLOG)(const char *s)
Definition: logger.h:38
GWEN_LOGGER_LEVEL
Definition: logger.h:61
GWENHYWFAR_API void GWEN_Logger_SetIdent(const char *logDomain, const char *id)
Definition: logger.c:495
GWEN_LOGGER_LOGTYPE
Definition: logger.h:40
GWENHYWFAR_API void GWEN_Logger_Log(const char *logDomain, GWEN_LOGGER_LEVEL priority, const char *s)
Definition: logger.c:401
GWENHYWFAR_API GWEN_LOGGER_LEVEL GWEN_Logger_Name2Level(const char *name)
Definition: logger.c:542
GWENHYWFAR_API int GWEN_Logger_GetLevel(const char *logDomain)
Definition: logger.c:483
#define GWENHYWFAR_CB
Definition: gwenhywfarapi.h:89
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition: buffer.h:38
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
GWENHYWFAR_API int GWEN_Logger_Open(const char *logDomain, const char *ident, const char *file, GWEN_LOGGER_LOGTYPE logtype, GWEN_LOGGER_FACILITY facility)
Definition: logger.c:281
void GWEN_Logger_SetFilename(const char *logDomain, const char *name)
Definition: logger.c:511
GWENHYWFAR_API void GWEN_Logger_SetLevel(const char *logDomain, GWEN_LOGGER_LEVEL l)
Definition: logger.c:472
GWENHYWFAR_API int GWEN_Logger_Exists(const char *logDomain)
Definition: logger.c:656
GWENHYWFAR_API const char * GWEN_Logger_Level2Name(GWEN_LOGGER_LEVEL level)
Definition: logger.c:569
GWENHYWFAR_API void GWEN_Logger_Close(const char *logDomain)
Definition: logger.c:357
GWENHYWFAR_API const char * GWEN_Logger_Logtype2Name(GWEN_LOGGER_LOGTYPE lt)
Definition: logger.c:629
GWENHYWFAR_API void GWEN_Logger_Enable(const char *logDomain, int f)
Definition: logger.c:450
GWENHYWFAR_API GWEN_LOGGERFUNCTIONLOG GWEN_Logger_SetLogFunction(const char *logDomain, GWEN_LOGGERFUNCTIONLOG fn)
Definition: logger.c:527
GWENHYWFAR_API int GWEN_Logger_CreateLogMessage(const char *logDomain, GWEN_LOGGER_LEVEL priority, const char *s, GWEN_BUFFER *mbuf)
Definition: logger.c:389
GWENHYWFAR_API int GWEN_Logger_IsOpen(const char *logDomain)
Definition: logger.c:377
GWENHYWFAR_API GWEN_LOGGER_LOGTYPE GWEN_Logger_Name2Logtype(const char *name)
Definition: logger.c:612