ILogger.h
00001
00002
00003
00004
00005 #ifndef ILOGGER_H_INCLUDED
00006 #define ILOGGER_H_INCLUDED
00007
00008 #include "ILogReceiver.h"
00009 #include "cAudioDefines.h"
00010
00011 namespace cAudio
00012 {
00014 class ILogger
00015 {
00016 public:
00017 ILogger() { }
00018 virtual ~ILogger() { }
00019
00021
00024 virtual void logCritical( const char* sender, const char *msg, ... ) = 0;
00025
00027
00030 virtual void logError( const char* sender, const char *msg, ... ) = 0;
00031
00033
00036 virtual void logWarning( const char* sender, const char *msg, ... ) = 0;
00037
00039
00042 virtual void logInfo( const char* sender, const char *msg, ... ) = 0;
00043
00045
00048 virtual void logDebug( const char* sender, const char *msg, ... ) = 0;
00049
00051 virtual const LogLevel& getLogLevel() const = 0;
00052
00054
00056 virtual void setLogLevel( const LogLevel& logLevel ) = 0;
00057
00059
00064 virtual bool registerLogReceiver(ILogReceiver* receiver, const char* name) = 0;
00065
00067
00069 virtual void unRegisterLogReceiver(const char* name) = 0;
00070
00072
00074 virtual bool isLogReceiverRegistered(const char* name) = 0;
00075
00077
00080 virtual ILogReceiver* getLogReceiver(const char* name) = 0;
00081
00082 protected:
00083 private:
00084 };
00085
00087
00090 CAUDIO_API ILogger* getLogger();
00091 };
00092 #endif