// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
using System;
namespace FlaxEngine
{
///
/// Logs handler.
///
public interface ILogHandler
{
///
/// Occurs on sending a log message.
///
event LogDelegate SendLog;
///
/// Occurs on sending a exception log message.
///
event LogExceptionDelegate SendExceptionLog;
///
/// Logs the raw message to the log.
///
/// Type of the log message. Not: fatal will stop the engine. Error may show a message popup.
/// The message contents.
void LogWrite(LogType logType, string message);
///
/// A variant of ILogHandler.LogFormat that logs an exception message.
///
/// Runtime Exception.
/// Object to which the message applies.
void LogException(Exception exception, Object context);
///
/// Logs a formatted message.
///
/// The type of the log message.
/// Object to which the message applies.
/// Message to log.
void Log(LogType logType, Object context, string message);
}
}