IrrlichtEngine
ILogger.h
Go to the documentation of this file.
00001 // Copyright (C) 2002-2011 Nikolaus Gebhardt
00002 // This file is part of the "Irrlicht Engine".
00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
00004 
00005 #ifndef __I_LOGGER_H_INCLUDED__
00006 #define __I_LOGGER_H_INCLUDED__
00007 
00008 #include "IReferenceCounted.h"
00009 
00010 namespace irr
00011 {
00012 
00017 enum ELOG_LEVEL
00018 {
00020         ELL_DEBUG,
00021 
00023         ELL_INFORMATION,
00024 
00026         ELL_WARNING,
00027 
00029         ELL_ERROR,
00030 
00033         ELL_NONE
00034 };
00035 
00036 
00038 class ILogger : public virtual IReferenceCounted
00039 {
00040 public:
00041 
00043         virtual ~ILogger() {}
00044 
00046         virtual ELOG_LEVEL getLogLevel() const = 0;
00047 
00049 
00055         virtual void setLogLevel(ELOG_LEVEL ll) = 0;
00056 
00058 
00064         virtual void log(const c8* text, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00065 
00067 
00075         virtual void log(const c8* text, const c8* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00076         virtual void log(const c8* text, const wchar_t* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00077 
00079 
00087         virtual void log(const wchar_t* text, const wchar_t* hint, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00088 
00090 
00096         virtual void log(const wchar_t* text, ELOG_LEVEL ll=ELL_INFORMATION) = 0;
00097 };
00098 
00099 } // end namespace
00100 
00101 #endif
00102