00001 #ifndef ICD_LOG_H
00002 #define ICD_LOG_H
00003
00004 #include "config.h"
00005
00006 #ifdef ICD_LOG_STDERR
00007 #define OSSOLOG_STDERR
00008 #endif
00009 #define OSSOLOG_COMPILE
00010 #include <osso-log.h>
00011
00017 enum icd_loglevel {
00018 ICD_DEBUG = 0,
00019 ICD_INFO,
00020 ICD_WARN,
00021 ICD_ERR,
00022 ICD_CRIT
00023 };
00024
00026 #define ILOG_DEBUG(...) do { \
00027 if (icd_log_get_level() <= ICD_DEBUG) \
00028 DLOG_DEBUG(__VA_ARGS__); \
00029 } while (0)
00030
00032 #define ILOG_INFO(...) do { \
00033 if (icd_log_get_level() <= ICD_INFO) \
00034 DLOG_INFO(__VA_ARGS__); \
00035 } while (0)
00036
00038 #define ILOG_WARN(...) do { \
00039 if (icd_log_get_level() <= ICD_WARN) \
00040 DLOG_WARN(__VA_ARGS__); \
00041 } while (0)
00042
00044 #define ILOG_ERR(...) do { \
00045 if (icd_log_get_level() <= ICD_ERR) \
00046 DLOG_ERR(__VA_ARGS__); \
00047 } while (0)
00048
00050 #define ILOG_CRIT(...) do { \
00051 if (icd_log_get_level() <= ICD_CRIT) \
00052 DLOG_CRIT(__VA_ARGS__); \
00053 } while (0)
00054
00056 void icd_log_open(void);
00057
00059 void icd_log_close(void);
00060
00062 enum icd_loglevel icd_log_get_level (void);
00063
00065 enum icd_loglevel icd_log_set_level (enum icd_loglevel new_level);
00066
00068 void icd_log_nextlevel (void);
00069
00070
00071
00072 #endif