00001
00002
00003
00004
00005 #ifndef __I_LOGGER_H_INCLUDED__
00006 #define __I_LOGGER_H_INCLUDED__
00007
00008 #include "IReferenceCounted.h"
00009
00010 namespace irr
00011 {
00012
00014 enum ELOG_LEVEL
00015 {
00017 ELL_INFORMATION = 0,
00018
00020 ELL_WARNING,
00021
00023 ELL_ERROR,
00024
00026 ELL_NONE
00027 };
00028
00029
00031 class ILogger : public virtual IReferenceCounted
00032 {
00033 public:
00034
00036 virtual ~ILogger() {}
00037
00039 virtual ELOG_LEVEL getLogLevel() const = 0;
00040
00042
00048 virtual void setLogLevel(ELOG_LEVEL ll) = 0;
00049
00051
00057 virtual void log(const c8* text, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00058
00060
00068 virtual void log(const c8* text, const c8* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00069 virtual void log(const c8* text, const wchar_t* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00070
00072
00080 virtual void log(const wchar_t* text, const wchar_t* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00081
00083
00089 virtual void log(const wchar_t* text, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00090 };
00091
00092 }
00093
00094 #endif
00095