diff options
Diffstat (limited to 'win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs')
-rw-r--r-- | win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs | 51 |
1 files changed, 23 insertions, 28 deletions
diff --git a/win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs b/win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs index 1bab4f01d..1a2a04cce 100644 --- a/win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs +++ b/win/CS/HandBrakeWPF/Services/Queue/Interfaces/IQueueService.cs @@ -10,24 +10,29 @@ namespace HandBrakeWPF.Services.Queue.Interfaces { using System; + using System.Collections.Generic; using System.Collections.ObjectModel; - using System.ComponentModel; - using HandBrakeWPF.Services.Queue.Model; - using IEncode = Encode.Interfaces.IEncode; + using HandBrakeWPF.EventArgs; + using HandBrakeWPF.Services.Encode.EventArgs; + using HandBrakeWPF.Services.Encode.Interfaces; + using HandBrakeWPF.Services.Queue.Model; /// <summary> /// The Queue Processor /// </summary> public interface IQueueService { - #region Events - /// <summary> /// Fires when the Queue has started /// </summary> - event QueueService.QueueProgressStatus JobProcessingStarted; + event EventHandler<QueueProgressEventArgs> JobProcessingStarted; + + /// <summary> + /// Fires when the status of any running job changes on the queue. Including progress. + /// </summary> + event EventHandler QueueJobStatusChanged; /// <summary> /// Fires when a job is Added, Removed or Re-Ordered. @@ -38,16 +43,14 @@ namespace HandBrakeWPF.Services.Queue.Interfaces /// <summary> /// Fires when the entire encode queue has completed. /// </summary> - event QueueService.QueueCompletedEventDelegate QueueCompleted; + event EventHandler<QueueCompletedEventArgs> QueueCompleted; /// <summary> /// Fires when a pause to the encode queue has been requested. /// </summary> event EventHandler QueuePaused; - #endregion - - #region Properties + event EventHandler<EncodeCompletedEventArgs> EncodeCompleted; /// <summary> /// Gets the number of jobs in the queue @@ -60,30 +63,19 @@ namespace HandBrakeWPF.Services.Queue.Interfaces int ErrorCount { get; } /// <summary> - /// Gets the IEncodeService instance. - /// </summary> - IEncode EncodeService { get; } - - /// <summary> /// Gets a value indicating whether IsProcessing. /// </summary> bool IsProcessing { get; } - /// <summary> - /// Gets or sets Last Processed Job. - /// This is set when the job is poped of the queue by GetNextJobForProcessing(); - /// </summary> - QueueTask LastProcessedJob { get; set; } + bool IsEncoding { get; } + + bool IsPaused { get; } /// <summary> /// Gets The current queue. /// </summary> ObservableCollection<QueueTask> Queue { get; } - #endregion - - #region Public Methods - /// <summary> /// Add a job to the Queue. /// This method is Thread Safe. @@ -223,12 +215,15 @@ namespace HandBrakeWPF.Services.Queue.Interfaces /// Pause the queue but allow the current encode to complete. /// </summary> void Pause(); - + /// <summary> - /// Pause and Encode and the Queue. + /// Get the status of all running queue jobs. /// </summary> - void PauseEncode(); + /// <returns> + /// A list of QueueProgressStatus items + /// </returns> + List<QueueProgressStatus> GetQueueProgressStatus(); - #endregion + List<string> GetActiveJobDestinationDirectories(); } }
\ No newline at end of file |