5 namespace SiliconStudio.Core.Diagnostics
30 public static readonly
LogMessageType MinimumLevelEnabled = LogMessageType.Info;
35 public static readonly
bool IsDebugEnabled = MinimumLevelEnabled <= LogMessageType.Debug;
40 public static readonly
bool IsVerboseEnabled = MinimumLevelEnabled <= LogMessageType.Verbose;
46 public bool HasErrors {
get; set; }
52 public string Module {
get;
internal protected set; }
66 if (fromLevel > toLevel)
73 for (
int i = 0; i < EnableTypes.Length; i++)
74 EnableTypes[i] = (i >= (
int)fromLevel && i <= (
int)toLevel) ? enabledFlag : !enabledFlag;
87 EnableTypes[(int)type] = enabledFlag;
97 return EnableTypes[(int)type];
102 if (logMessage == null)
103 throw new ArgumentNullException(
"logMessage");
111 if (EnableTypes[(
int)logMessage.
Type])
114 var handler = MessageLogged;
126 protected abstract void LogRaw(
ILogMessage logMessage);
133 internal static CallerInfo ExtractCallerInfo(
object[] parameters)
135 return (parameters.Length > 0) ? parameters[parameters.Length - 1] as
CallerInfo : null;
EventHandler< MessageLoggedEventArgs > MessageLogged
Occurs when a message is logged.
A class to store Caller Information attributes.
void ActivateLog(LogMessageType fromLevel, LogMessageType toLevel=LogMessageType.Fatal, bool enabledFlag=true)
Activates the log for this logger for a range of LogMessageType.
readonly bool[] EnableTypes
Base implementation for ILogger.
Arguments of the Logger.MessageLogged event.
bool Activated(LogMessageType type)
Returns a boolean indicating if a particular LogMessageType is activated.
LogMessageType
Type of a LogMessage.
void Log(ILogMessage logMessage)
Logs the specified log message.
void ActivateLog(LogMessageType type, bool enabledFlag)
Activates the log for this logger for a specific LogMessageType.
The base interface for log messages used by the logging infrastructure.
LogMessageType Type
Gets or sets the type of this message.
Logger()
Initializes a new instance of the Logger class.