Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/29/10 18:28:32 (13 years ago)
Author:
swagner
Message:

Finished cloning refactoring of HeuristicLab.Parameters and simplified cloning code of HeuristicLab.Core (#922)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/CloningRefactoring/HeuristicLab.Parameters/3.3/ValueLookupParameter.cs

    r4477 r4671  
    7979
    8080    #region Constructors
     81    [StorableConstructor]
     82    protected ValueLookupParameter(bool deserializing) : base(deserializing) { }
     83    protected ValueLookupParameter(ValueLookupParameter<T> original, Cloner cloner)
     84      : base(original, cloner) {
     85      value = cloner.Clone(original.value);
     86      getsCollected = original.getsCollected;
     87      RegisterValueEvents();
     88    }
    8189    public ValueLookupParameter()
    8290      : base() {
     
    95103      this.value = value;
    96104      this.getsCollected = true;
    97       Initialize();
     105      RegisterValueEvents();
    98106    }
    99107    public ValueLookupParameter(string name, T value, bool getsCollected)
     
    101109      this.value = value;
    102110      this.getsCollected = getsCollected;
    103       Initialize();
     111      RegisterValueEvents();
    104112    }
    105113    public ValueLookupParameter(string name, string description)
     
    115123      this.value = value;
    116124      this.getsCollected = true;
    117       Initialize();
     125      RegisterValueEvents();
    118126    }
    119127    public ValueLookupParameter(string name, string description, T value, bool getsCollected)
     
    121129      this.value = value;
    122130      this.getsCollected = getsCollected;
    123       Initialize();
     131      RegisterValueEvents();
    124132    }
    125133    public ValueLookupParameter(string name, string description, string actualName)
     
    131139      this.getsCollected = getsCollected;
    132140    }
    133     [StorableConstructor]
    134     protected ValueLookupParameter(bool deserializing) : base(deserializing) { }
    135141    #endregion
    136142
    137143    [StorableHook(HookType.AfterDeserialization)]
    138     private void Initialize() {
     144    private void AfterDeserialization() {
    139145      RegisterValueEvents();
    140146    }
    141147
    142148    public override IDeepCloneable Clone(Cloner cloner) {
    143       ValueLookupParameter<T> clone = (ValueLookupParameter<T>)base.Clone(cloner);
    144       clone.value = (T)cloner.Clone(value);
    145       clone.getsCollected = getsCollected;
    146       clone.Initialize();
    147       return clone;
     149      return new ValueLookupParameter<T>(this, cloner);
    148150    }
    149151
Note: See TracChangeset for help on using the changeset viewer.