Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
11/23/09 16:43:34 (14 years ago)
Author:
swagner
Message:

Refactored cloning (#806)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core/3.3/OperatorBase.cs

    r2524 r2526  
    131131    /// <param name="clonedObjects">Dictionary of all already cloned objects. (Needed to avoid cycles.)</param>
    132132    /// <returns>The cloned object as <see cref="OperatorBase"/>.</returns>
    133     public override object Clone(IDictionary<Guid, object> clonedObjects) {
    134       OperatorBase clone = (OperatorBase)base.Clone(clonedObjects);
     133    public override IItem Clone(ICloner cloner) {
     134      OperatorBase clone = (OperatorBase)base.Clone(cloner);
    135135      clone.myName = Name;
    136136      clone.mySubOperators.Clear();
    137137      for (int i = 0; i < SubOperators.Count; i++)
    138         clone.AddSubOperator((IOperator)Auxiliary.Clone(SubOperators[i], clonedObjects));
     138        clone.AddSubOperator((IOperator)cloner.Clone(SubOperators[i]));
    139139      clone.myVariableInfos.Clear();
    140140      foreach (IVariableInfo variableInfo in myVariableInfos.Values)
    141         clone.AddVariableInfo((IVariableInfo)Auxiliary.Clone(variableInfo, clonedObjects));
     141        clone.AddVariableInfo((IVariableInfo)cloner.Clone(variableInfo));
    142142      clone.myVariables.Clear();
    143143      foreach (IVariable variable in myVariables.Values)
    144         clone.AddVariable((IVariable)Auxiliary.Clone(variable, clonedObjects));
     144        clone.AddVariable((IVariable)cloner.Clone(variable));
    145145      return clone;
    146146    }
Note: See TracChangeset for help on using the changeset viewer.