Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/20/16 17:14:41 (8 years ago)
Author:
bburlacu
Message:

#2672: Add cloning constructors.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/OnlineCalculators/OnlineMeanErrorCalculator.cs

    r14293 r14294  
    3737    }
    3838
    39     private OnlineMeanErrorCalculator(OnlineMeanAndVarianceCalculator meanAndVarianceCalculator) {
    40       this.meanAndVarianceCalculator = meanAndVarianceCalculator;
     39    protected OnlineMeanErrorCalculator(OnlineMeanErrorCalculator other, Cloner cloner) {
     40      meanAndVarianceCalculator = (OnlineMeanAndVarianceCalculator)other.meanAndVarianceCalculator.Clone(cloner);
    4141    }
    4242
     
    8282    // IDeepCloneable members
    8383    public object Clone() {
    84       var meanAndVarianceCalculatorClone = (OnlineMeanAndVarianceCalculator)meanAndVarianceCalculator.Clone();
    85       return new OnlineMeanErrorCalculator(meanAndVarianceCalculatorClone);
     84      var cloner = new Cloner();
     85      return new OnlineMeanErrorCalculator(this, cloner);
    8686    }
    8787
     
    8989      var clone = cloner.GetClone(this);
    9090      if (clone == null) {
    91         var meanAndVarianceCalculatorClone = (OnlineMeanAndVarianceCalculator)meanAndVarianceCalculator.Clone(cloner);
    92         clone = new OnlineMeanErrorCalculator(meanAndVarianceCalculatorClone);
     91        clone = new OnlineMeanErrorCalculator(this, cloner);
    9392        cloner.RegisterClonedObject(this, clone);
    9493      }
Note: See TracChangeset for help on using the changeset viewer.