Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/25/10 01:04:14 (14 years ago)
Author:
abeham
Message:

#1090

  • Fixed initialization of operators and made operator list storable
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.FeatureSelection/3.3/FeatureSelectionProblem.cs

    r4082 r4098  
    8181      get { return EvaluatorParameter.Value; }
    8282    }
    83     private List<IOperator> operators;
    8483    public override IEnumerable<IOperator> Operators {
    8584      get { return operators; }
     
    8786    #endregion
    8887
     88    [Storable]
     89    private List<IOperator> operators;
     90
     91    [StorableConstructor]
     92    private FeatureSelectionProblem(bool deserializing) : base() { }
    8993    public FeatureSelectionProblem()
    9094      : base() {
     
    101105      ParameterizeEvaluator();
    102106
    103       Initialize();
    104     }
    105 
    106     [StorableConstructor]
    107     private FeatureSelectionProblem(bool deserializing) : base() { }
     107      InitializeOperators();
     108      AttachEventHandlers();
     109    }
    108110
    109111    [StorableHook(HookType.AfterDeserialization)]
     
    115117    public override IDeepCloneable Clone(Cloner cloner) {
    116118      FeatureSelectionProblem clone = (FeatureSelectionProblem)base.Clone(cloner);
    117       clone.Initialize();
     119      clone.operators = operators.Select(x => (IOperator)cloner.Clone(x)).ToList();
     120      clone.AttachEventHandlers();
    118121      return clone;
    119122    }
     
    165168
    166169    #region Helpers
    167     private void Initialize() {
    168       InitializeOperators();
     170    private void AttachEventHandlers() {
     171      // Start BackwardsCompatibility3.3 (remove with 3.4)
     172      if (operators == null) InitializeOperators();
     173      // End BackwardsCompatibility3.3
    169174      RegisterParameterEvents();
    170175      RegisterParameterValueEvents();
Note: See TracChangeset for help on using the changeset viewer.