Changeset 17544 for branches/2521_ProblemRefactoring/HeuristicLab.Encodings.PermutationEncoding/3.3/PermutationMultiObjectiveProblem.cs
- Timestamp:
- 05/18/20 18:55:08 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring/HeuristicLab.Encodings.PermutationEncoding/3.3/PermutationMultiObjectiveProblem.cs
r17230 r17544 28 28 using HeuristicLab.Common; 29 29 using HeuristicLab.Core; 30 using HeuristicLab.Data; 30 31 using HeuristicLab.Optimization; 32 using HeuristicLab.Parameters; 31 33 32 34 namespace HeuristicLab.Encodings.PermutationEncoding { 33 35 [StorableType("7bc5215b-c181-40d0-a758-d7c19a356e18")] 34 36 public abstract class PermutationMultiObjectiveProblem : MultiObjectiveProblem<PermutationEncoding, Permutation> { 35 public int Length { 36 get { return Encoding.Length; } 37 set { Encoding.Length = value; } 38 } 37 [Storable] protected ReferenceParameter<IntValue> DimensionRefParameter { get; private set; } 38 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 39 39 40 public PermutationTypes Type{41 get { return Encoding.Type; }42 set { Encoding.Type = value; }40 public int Dimension { 41 get { return DimensionRefParameter.Value.Value; } 42 set { DimensionRefParameter.Value.Value = value; } 43 43 } 44 44 … … 52 52 protected PermutationMultiObjectiveProblem(PermutationMultiObjectiveProblem original, Cloner cloner) 53 53 : base(original, cloner) { 54 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 54 55 RegisterEventHandlers(); 55 56 } … … 58 59 protected PermutationMultiObjectiveProblem(PermutationEncoding encoding) : base(encoding) { 59 60 EncodingParameter.ReadOnly = true; 61 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the permutation problem.", Encoding.LengthParameter)); 60 62 61 63 Operators.Add(new HammingSimilarityCalculator()); … … 87 89 88 90 private void RegisterEventHandlers() { 89 Encoding.LengthParameter.Value.ValueChanged += LengthParameter_ValueChanged; 90 Encoding.PermutationTypeParameter.Value.ValueChanged += TypeParameter_ValueChanged; 91 DimensionRefParameter.Value.ValueChanged += DimensionParameter_Value_ValueChanged; 91 92 } 92 93 93 protected virtual void LengthParameter_ValueChanged(object sender, EventArgs e) { } 94 protected virtual void TypeParameter_ValueChanged(object sender, EventArgs e) { } 94 private void DimensionParameter_Value_ValueChanged(object sender, EventArgs e) { 95 DimensionOnChanged(); 96 } 97 98 protected virtual void DimensionOnChanged() { } 95 99 } 96 100 }
Note: See TracChangeset
for help on using the changeset viewer.