Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/04/19 16:03:51 (5 years ago)
Author:
abeham
Message:

#2521: refactored multi-objective problems' maximization

  • Add ForceValue method to IValueParameter to perform changes even when it is read-only
  • Add MaximizationChanged event handler
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2521_ProblemRefactoring/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicDataAnalysisMultiObjectiveProblem.cs

    r17226 r17317  
    2020#endregion
    2121
     22using System;
    2223using System.Linq;
     24using HEAL.Attic;
    2325using HeuristicLab.Common;
    2426using HeuristicLab.Core;
     
    2628using HeuristicLab.Optimization;
    2729using HeuristicLab.Parameters;
    28 using HEAL.Attic;
    2930
    3031namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
     
    7778
    7879    private void RegisterEventHandler() {
    79       Evaluator.QualitiesParameter.ActualNameChanged += new System.EventHandler(QualitiesParameter_ActualNameChanged);
     80      Evaluator.QualitiesParameter.ActualNameChanged += new EventHandler(QualitiesParameter_ActualNameChanged);
     81      MaximizationParameter.ValueChanged += MaximizationParameter_ValueChanged;
    8082    }
    8183
    8284    protected override void OnEvaluatorChanged() {
    8385      base.OnEvaluatorChanged();
    84       Evaluator.QualitiesParameter.ActualNameChanged += new System.EventHandler(QualitiesParameter_ActualNameChanged);
     86      Evaluator.QualitiesParameter.ActualNameChanged += new EventHandler(QualitiesParameter_ActualNameChanged);
    8587      Maximization = new BoolArray(Evaluator.Maximization.ToArray());
    8688      ParameterizeOperators();
    8789    }
    8890
    89     private void QualitiesParameter_ActualNameChanged(object sender, System.EventArgs e) {
     91    private void QualitiesParameter_ActualNameChanged(object sender, EventArgs e) {
    9092      ParameterizeOperators();
     93    }
     94
     95    private void MaximizationParameter_ValueChanged(object sender, EventArgs e) {
     96      OnMaximizationChanged();
    9197    }
    9298
     
    98104      }
    99105    }
     106
     107    public event EventHandler MaximizationChanged;
     108    protected void OnMaximizationChanged() {
     109      MaximizationChanged?.Invoke(this, EventArgs.Empty);
     110    }
    100111  }
    101112}
Note: See TracChangeset for help on using the changeset viewer.