Changeset 16815


Ignore:
Timestamp:
04/18/19 13:56:14 (4 months ago)
Author:
mkommend
Message:

#2521: Made programmable problem base classes abstract.

Location:
branches/2521_ProblemRefactoring/HeuristicLab.Problems.Programmable/3.3
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2521_ProblemRefactoring/HeuristicLab.Problems.Programmable/3.3/MultiObjectiveProgrammableProblem.cs

    r16811 r16815  
    3232namespace HeuristicLab.Problems.Programmable {
    3333  [Item("Programmable Problem (multi-objective)", "Represents a multi-objective problem that can be programmed with a script.")]
    34   [Creatable(CreatableAttribute.Categories.Problems, Priority = 120)]
    3534  [StorableType("1AA24077-4E1E-4FAE-8EC8-B6008DFD30B9")]
    36   public class MultiObjectiveProgrammableProblem<TEncoding, TEncodedSolution> : MultiObjectiveProblem<TEncoding, TEncodedSolution>, IProgrammableItem, IProgrammableProblem
     35  public abstract class MultiObjectiveProgrammableProblem<TEncoding, TEncodedSolution> : MultiObjectiveProblem<TEncoding, TEncodedSolution>, IProgrammableItem, IProgrammableProblem
    3736    where TEncoding : class, IEncoding<TEncodedSolution>
    3837    where TEncodedSolution : class, IEncodedSolution {
     
    6564      : base(original, cloner) {
    6665      RegisterEvents();
    67     }
    68 
    69     public override IDeepCloneable Clone(Cloner cloner) {
    70       return new MultiObjectiveProgrammableProblem<TEncoding, TEncodedSolution>(this, cloner);
    7166    }
    7267
  • branches/2521_ProblemRefactoring/HeuristicLab.Problems.Programmable/3.3/SingleObjectiveProgrammableProblem.cs

    r16811 r16815  
    3434namespace HeuristicLab.Problems.Programmable {
    3535  [Item("Programmable Problem (single-objective)", "Represents a single-objective problem that can be programmed with a script.")]
    36   [Creatable(CreatableAttribute.Categories.Problems, Priority = 110)]
    3736  [StorableType("44944E6B-E95E-4805-8F0A-0C0F7D761DB9")]
    38   public class SingleObjectiveProgrammableProblem<TEncoding, TEncodedSolution> : SingleObjectiveProblem<TEncoding, TEncodedSolution>, IProgrammableItem, IProgrammableProblem
     37  public abstract class SingleObjectiveProgrammableProblem<TEncoding, TEncodedSolution> : SingleObjectiveProblem<TEncoding, TEncodedSolution>, IProgrammableItem, IProgrammableProblem
    3938    where TEncoding : class, IEncoding<TEncodedSolution>
    4039    where TEncodedSolution : class, IEncodedSolution {
     
    6564      : base(original, cloner) {
    6665      RegisterEvents();
    67     }
    68 
    69     public override IDeepCloneable Clone(Cloner cloner) {
    70       return new SingleObjectiveProgrammableProblem<TEncoding, TEncodedSolution>(this, cloner);
    7166    }
    7267
Note: See TracChangeset for help on using the changeset viewer.