/* */ #ifndef _D_LOGGER_H_ #define _D_LOGGER_H_ #include "common.h" namespace aria2 { class Exception; class Logger { public: virtual ~Logger() {} virtual void debug(const char* msg, ...) = 0; virtual void debug(const char* msg, const Exception& ex, ...) = 0; virtual void info(const char* msg, ...) = 0; virtual void info(const char* msg, const Exception& ex, ...) = 0; virtual void notice(const char* msg, ...) = 0; virtual void notice(const char* msg, const Exception& ex, ...) = 0; virtual void warn(const char* msg, ...) = 0; virtual void warn(const char* msg, const Exception& ex, ...) = 0; virtual void error(const char* msg, ...) = 0; virtual void error(const char* msg, const Exception& ex, ...) = 0; enum LEVEL { DEBUG = 1 << 0, INFO = 1 << 1, NOTICE = 1 << 2, WARN = 1 << 3, ERROR = 1 << 4, }; }; } // namespace aria2 #endif // _D_LOGGER_H_