00001 #ifndef ERIS_LOG_H 00002 #define ERIS_LOG_H 00003 00004 #include <sigc++/signal.h> 00005 00006 #include <string> 00007 00008 namespace Eris 00009 { 00010 00013 typedef enum { 00014 LOG_ERROR = 0, 00015 LOG_WARNING, 00016 LOG_NOTICE, 00017 LOG_VERBOSE, 00018 LOG_DEBUG 00019 } LogLevel; 00020 00022 const LogLevel DEFAULT_LOG = LOG_WARNING; 00023 00027 extern SigC::Signal2<void, LogLevel, const std::string&> Logged; 00028 00031 void setLogLevel(LogLevel lvl); 00032 00033 LogLevel getLogLevel(); 00034 00036 void log(LogLevel lvl, const char *str, ...); 00037 00038 } 00039 00040 #endif