public SolutionComparer ShallowClone() { SolutionComparer clone = new SolutionComparer(); clone.Criteria_.AddRange(Criteria_); return(clone); }
public Solver(Timetable.Timetable timetable) { Timetable = timetable; Comparer = new SolutionComparer(); Filters = new List <Filter>(); Default(); }
public SolutionComparer(SolutionComparer other) { // clone criteria list this.Criteria_ = new List <Criteria>(); foreach (Criteria criteria in other.Criteria_) { this.Criteria_.Add(criteria.Clone()); } }
public int CompareTo(Solution other, SolutionComparer solutionComparer) { return(solutionComparer.Compare(this, other)); }
public int CompareTo(Solution other, SolutionComparer solutionComparer) { return solutionComparer.Compare(this, other); }