Irrlicht 3D Engine
ILogger.h
Go to the documentation of this file.
00001 // Copyright (C) 2002-2012 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