/// <summary> /// Copy constructor. /// </summary> /// <param name="from">Another polynomial function to clone from.</param> public ScaledSumFunction(ScaledSumFunction from) { if (from._coefficients != null) { _coefficients = (double[])from._coefficients.Clone(); } else { _coefficients = null; } if (from._functions != null) { _functions = new Altaxo.Calc.IScalarFunctionDD[from._functions.Length]; for (int i = 0; i < from._functions.Length; i++) { if (from._functions[i] is ICloneable) { _functions[i] = (Altaxo.Calc.IScalarFunctionDD)((ICloneable)from._functions[i]).Clone(); } else { _functions[i] = from._functions[i]; } } } else { _functions = null; } }
public virtual void Serialize(object obj, Altaxo.Serialization.Xml.IXmlSerializationInfo info) { ScaledSumFunction s = (ScaledSumFunction)obj; info.AddArray("Coefficients", s._coefficients, s._coefficients.Length); info.CreateArray("Functions", s._functions.Length); for (int i = 0; i < s._functions.Length; i++) { info.AddValue("e", s._functions[i]); } info.CommitArray(); }
public virtual object Deserialize(object o, Altaxo.Serialization.Xml.IXmlDeserializationInfo info, object parent) { ScaledSumFunction s = null != o ? (ScaledSumFunction)o : new ScaledSumFunction(); info.GetArray("Coefficients", out s._coefficients); int cnt = info.OpenArray(); s._functions = new Altaxo.Calc.IScalarFunctionDD[cnt]; for (int i = 0; i < cnt; i++) { s._functions[i] = (Altaxo.Calc.IScalarFunctionDD)info.GetValue("e", parent); } info.CloseArray(cnt); return(s); }
/// <summary> /// Copy constructor. /// </summary> /// <param name="from">Another polynomial function to clone from.</param> public ScaledSumFunction(ScaledSumFunction from) { if (from._coefficients != null) _coefficients = (double[])from._coefficients.Clone(); else _coefficients = null; if (from._functions != null) { _functions = new Altaxo.Calc.IScalarFunctionDD[from._functions.Length]; for (int i = 0; i < from._functions.Length; i++) { if (from._functions[i] is ICloneable) _functions[i] = (Altaxo.Calc.IScalarFunctionDD)((ICloneable)from._functions[i]).Clone(); else _functions[i] = from._functions[i]; } } else { _functions = null; } }