Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/01/11 12:04:53 (13 years ago)
Author:
mkommend
Message:

#1418: worked on data analysis problem representation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis/3.4/DataAnalysisProblem.cs

    r5554 r5577  
    2020#endregion
    2121
     22using System;
    2223using HeuristicLab.Common;
    2324using HeuristicLab.Core;
    24 using HeuristicLab.Optimization;
     25using HeuristicLab.Parameters;
    2526using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    2627
    2728namespace HeuristicLab.Problems.DataAnalysis {
    2829  [StorableClass]
    29   public abstract class DataAnalysisProblem<T> : Problem<IDataAnalysisEvaluator<T>, IDataAnalysisSolutionCreator<T>>,
     30  public abstract class DataAnalysisProblem<T> : ParameterizedNamedItem,
    3031    IDataAnalysisProblem<T>
    3132    where T : class, IDataAnalysisProblemData {
    3233    private const string ProblemDataParameterName = "ProblemData";
     34    private const string ProblemDataParameterDescription = "";
    3335    #region parameter properties
    3436    IParameter IDataAnalysisProblem.ProblemDataParameter {
     
    5456    public DataAnalysisProblem()
    5557      : base() {
     58      Parameters.Add(new ValueParameter<T>(ProblemDataParameterName, ProblemDataParameterDescription));
     59    }
     60
     61    private void RegisterEventHandlers() {
     62      ProblemDataParameter.Value.Changed += new EventHandler(ProblemDataParameter_ValueChanged);
     63    }
     64    private void ProblemDataParameter_ValueChanged(object sender, EventArgs e) {
     65      OnProblemDataChanged();
     66      OnReset();
     67    }
     68
     69    public event EventHandler ProblemDataChanged;
     70    protected virtual void OnProblemDataChanged() {
     71      var handler = ProblemDataChanged;
     72      if (handler != null) handler(this, EventArgs.Empty);
     73    }
     74
     75    public event EventHandler Reset;
     76    protected virtual void OnReset() {
     77      var handler = Reset;
     78      if (handler != null) handler(this, EventArgs.Empty);
    5679    }
    5780  }
Note: See TracChangeset for help on using the changeset viewer.