Changeset 13435 for branches/ProblemRefactoring/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleEncoding/Resource.cs
- Timestamp:
- 12/04/15 10:35:04 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ProblemRefactoring/HeuristicLab.Encodings.ScheduleEncoding/3.3/ScheduleEncoding/Resource.cs
r12012 r13435 20 20 #endregion 21 21 22 using System.Linq; 22 23 using System.Text; 23 24 using HeuristicLab.Common; … … 28 29 [Item("ResourceClass", "Represents a resource used in scheduling problems.")] 29 30 [StorableClass] 30 public class Resource : Item {31 public sealed class Resource : Item { 31 32 32 33 [Storable] 33 public int Index { 34 get; 35 set; 36 } 34 public int Index { get; private set; } 37 35 [Storable] 38 public ItemList<ScheduledTask> Tasks { 39 get; 40 set; 36 public ItemList<ScheduledTask> Tasks { get; private set; } 37 38 //TODO why does a Ressource has a duration? 39 public double TotalDuration { 40 get { 41 if (Tasks.Count == 0) return 0.0; 42 return Tasks.Max(t => t.EndTime); 43 } 41 44 } 42 45 43 46 [StorableConstructor] 44 pr otectedResource(bool deserializing) : base(deserializing) { }45 pr otectedResource(Resource original, Cloner cloner)47 private Resource(bool deserializing) : base(deserializing) { } 48 private Resource(Resource original, Cloner cloner) 46 49 : base(original, cloner) { 47 50 this.Index = original.Index; … … 58 61 } 59 62 60 public double TotalDuration {61 get {62 double result = 0;63 foreach (ScheduledTask t in Tasks) {64 if (t.EndTime > result)65 result = t.EndTime;66 }67 return result;68 }69 }70 71 63 public override string ToString() { 72 64 StringBuilder sb = new StringBuilder(); 73 65 sb.Append("Resource#" + Index + " [ "); 74 66 foreach (ScheduledTask t in Tasks) { 75 sb.Append(t + " ");67 sb.Append(t + " "); 76 68 } 77 69 sb.Append("]");
Note: See TracChangeset
for help on using the changeset viewer.