summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs
diff options
context:
space:
mode:
authorsr55 <[email protected]>2018-06-10 13:38:13 +0100
committersr55 <[email protected]>2018-06-10 13:38:13 +0100
commitf40358afcf1cd4f3aa3301389b86db191c5cee2e (patch)
treebd9fd76520e843f12f8fad7f5bf146bb9a7b69ae /win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs
parent4a6a1bf9702977b1ea89a516c02bef64fb1b6e98 (diff)
WinGui: Split out the encode portion of IHandBrakeInstance into IEncodeInstance. API remains compatible.
Diffstat (limited to 'win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs')
-rw-r--r--win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs52
1 files changed, 52 insertions, 0 deletions
diff --git a/win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs b/win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs
new file mode 100644
index 000000000..68fd266f0
--- /dev/null
+++ b/win/CS/HandBrake.Interop/Interop/Interfaces/IEncodeInstance.cs
@@ -0,0 +1,52 @@
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="IEncodeInstance.cs" company="HandBrake Project (https://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 encode portions of the IHandBrakeInstance
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrake.Interop.Interop.Interfaces
+{
+ using System;
+
+ using HandBrake.Interop.Interop.EventArgs;
+ using HandBrake.Interop.Interop.Json.Encode;
+
+ public interface IEncodeInstance
+ {
+ /// <summary>
+ /// Fires when an encode has completed.
+ /// </summary>
+ event EventHandler<EncodeCompletedEventArgs> EncodeCompleted;
+
+ /// <summary>
+ /// Fires for progress updates when encoding.
+ /// </summary>
+ event EventHandler<EncodeProgressEventArgs> EncodeProgress;
+
+ /// <summary>
+ /// Pauses the current encode.
+ /// </summary>
+ void PauseEncode();
+
+ /// <summary>
+ /// Resumes a paused encode.
+ /// </summary>
+ void ResumeEncode();
+
+ /// <summary>
+ /// Starts an encode with the given job.
+ /// </summary>
+ /// <param name="jobToStart">
+ /// The job to start.
+ /// </param>
+ void StartEncode(JsonEncodeObject jobToStart);
+
+ /// <summary>
+ /// Stops the current encode.
+ /// </summary>
+ void StopEncode();
+ }
+} \ No newline at end of file