using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Scheduler.Backgrounding { public class BGTaskStartEvent : EventArgs { public Guid BGTaskGuid { get; } public int IntervalID { get; } public DateTime At { get; } public BGTaskStartEvent(Guid bgTaskGuid, int intervalID, DateTime at) { At = at; BGTaskGuid = bgTaskGuid; IntervalID = intervalID; } } public class BGTaskEndEvent : EventArgs { public Guid BGTaskGuid { get; } public int IntervalID { get; } public DateTime At { get; } public BGTaskEndEvent(Guid bgTaskGuid, int intervalID, DateTime at) { BGTaskGuid = bgTaskGuid; IntervalID = intervalID; At = at; } } public class BGTaskEndEvent : EventArgs { public Guid BGTaskGuid { get; } public int IntervalID { get; } public DateTime At { get; } public TResult Result { get; } public BGTaskEndEvent(Guid bgTaskGuid, int intervalID, DateTime at, TResult result) { BGTaskGuid = bgTaskGuid; IntervalID = intervalID; At = at; Result = result; } } }