Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/25/20 01:23:08 (4 years ago)
Author:
abeham
Message:

#2521: Made encodings non-generic classes (the TEncodedSolution type parameter is not actually used), this will make it considerably easier to port the VRP to the new architecture

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2521_ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Encoding.cs

    r17614 r17699  
    3131  [Item("Encoding", "Base class for describing different encodings.")]
    3232  [StorableType("395B1372-FA54-4649-9EBE-5402A0AA9494")]
    33   public abstract class Encoding<TEncodedSolution> : ParameterizedNamedItem, IEncoding<TEncodedSolution>
    34     where TEncodedSolution : class, IEncodedSolution {
     33  public abstract class Encoding : ParameterizedNamedItem, IEncoding {
    3534    public sealed override bool CanChangeName {
    3635      get { return false; }
     
    4847      get { return encodingOperators; }
    4948      set {
    50         if (!value.OfType<ISolutionCreator<TEncodedSolution>>().Any())
    51           throw new ArgumentException("The provided operators contain no suitable solution creator");
     49        // SolutionCreator is now a parameter of the algorithm, we don't care!
     50        //if (!value.OfType<ISolutionCreator<TEncodedSolution>>().Any())
     51        //  throw new ArgumentException("The provided operators contain no suitable solution creator");
    5252        encodingOperators.Clear();
    5353        foreach (var op in value) encodingOperators.Add(op);
     
    6262    private void AfterDeserialization() { }
    6363
    64     protected Encoding(Encoding<TEncodedSolution> original, Cloner cloner)
     64    protected Encoding(Encoding original, Cloner cloner)
    6565      : base(original, cloner) {
    6666      encodingOperators = cloner.Clone(original.encodingOperators);
Note: See TracChangeset for help on using the changeset viewer.