#pragma once #include "stdafx.h" #include #include //#include "UI/UIBean.h" #include "log/LogDao.h" class LogDao; class Logger { public: enum EnumLogLevel { LogLevelAll = 0, //所有信息都写日志 LogLevelMid, //写错误、警告信息 LogLevelNormal, //只写错误信息 LogLevelStop //不写日志 }; Logger(); virtual ~Logger(); //static Logger* GetInstance(); public: //写关键信息 void TraceKeyInfo(const char * info, ...); //写错误信息 void TraceError(const char * error, ...); //写警告信息 void TraceWarning(const char * warning, ...); //写一般信息 void TraceInfo(const char * info, ...); //设置写日志级别 void SetLogLevel(EnumLogLevel nLevel); //void SetView(QListWidget* view) { m_view = view; } void SetRealTime(bool enable) { m_realtime = enable; } bool IsRealTime(void) { return m_realtime; } //void Test(); private: void Trace(string prefix, const char *msg, va_list args); public: LogDao* m_LogDao; private: bool m_realtime; static const string KEYINFOPREFIX; static const string ERRORPREFIX; static const string WARNINGPREFIX; static const string INFOPREFIX; EnumLogLevel m_nLogLevel; }; extern Logger* g_log;