diff options
Diffstat (limited to 'win/CS/HandBrakeWPF/Services/Logging/Interfaces/ILog.cs')
-rw-r--r-- | win/CS/HandBrakeWPF/Services/Logging/Interfaces/ILog.cs | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/win/CS/HandBrakeWPF/Services/Logging/Interfaces/ILog.cs b/win/CS/HandBrakeWPF/Services/Logging/Interfaces/ILog.cs new file mode 100644 index 000000000..d0f5949a2 --- /dev/null +++ b/win/CS/HandBrakeWPF/Services/Logging/Interfaces/ILog.cs @@ -0,0 +1,88 @@ +// -------------------------------------------------------------------------------------------------------------------- +// <copyright file="ILog.cs" company="HandBrake Project (http://handbrake.fr)"> +// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. +// </copyright> +// <summary> +// Defines the ILog type. +// </summary> +// -------------------------------------------------------------------------------------------------------------------- + +namespace HandBrakeWPF.Services.Logging.Interfaces +{ + using System; + using System.Collections.Generic; + + using LogEventArgs = HandBrakeWPF.Services.Logging.EventArgs.LogEventArgs; + using LogLevel = HandBrakeWPF.Services.Logging.Model.LogLevel; + using LogMessage = HandBrakeWPF.Services.Logging.Model.LogMessage; + using LogMessageType = HandBrakeWPF.Services.Logging.Model.LogMessageType; + + /// <summary> + /// The Log interface. + /// </summary> + public interface ILog + { + /// <summary> + /// The message logged. + /// </summary> + event EventHandler<LogEventArgs> MessageLogged; + + /// <summary> + /// The log reset event + /// </summary> + event EventHandler LogReset; + + /// <summary> + /// Gets the log messages. + /// </summary> + IEnumerable<LogMessage> LogMessages { get; } + + /// <summary> + /// Gets the activity log. + /// </summary> + string ActivityLog { get; } + + /// <summary> + /// The reset. + /// </summary> + void Reset(); + + /// <summary> + /// The enable. + /// </summary> + void Enable(); + + /// <summary> + /// Log a message. + /// </summary> + /// <param name="content"> + /// The content of the log message, + /// </param> + /// <param name="type"> + /// The Message Type. (i.e. where it came from) + /// </param> + /// <param name="level"> + /// The log level + /// </param> + void LogMessage(string content, LogMessageType type, LogLevel level); + + /// <summary> + /// Enable Logging to Disk + /// </summary> + /// <param name="logFile"> + /// The log file to write to. + /// </param> + /// <param name="deleteCurrentLogFirst"> + /// Delete the current log file if it exists. + /// </param> + void EnableLoggingToDisk(string logFile, bool deleteCurrentLogFirst); + + /// <summary> + /// The setup log header. + /// </summary> + /// <param name="header"> + /// The header. + /// </param> + void SetupLogHeader(string header); + } +}
\ No newline at end of file |