// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // Defines the ILog type. // // -------------------------------------------------------------------------------------------------------------------- namespace HandBrake.ApplicationServices.Services.Logging.Interfaces { using System; using System.Collections.Generic; using EventArgs; using Model; /// /// The Log interface. /// public interface ILog { /// /// The message logged. /// event EventHandler MessageLogged; /// /// The log reset event /// event EventHandler LogReset; /// /// Gets the log messages. /// IEnumerable LogMessages { get; } /// /// Gets the activity log. /// string ActivityLog { get; } /// /// The reset. /// void Reset(); /// /// The enable. /// void Enable(); /// /// Log a message. /// /// /// The content of the log message, /// /// /// The Message Type. (i.e. where it came from) /// /// /// The log level /// void LogMessage(string content, LogMessageType type, LogLevel level); /// /// Enable Logging to Disk /// /// /// The log file to write to. /// /// /// Delete the current log file if it exists. /// void EnableLoggingToDisk(string logFile, bool deleteCurrentLogFirst); /// /// The setup log header. /// /// /// The header. /// void SetupLogHeader(string header); } }