/// <summary> /// Returns a copy /// </summary> public IndicatorParam Clone() { var indicatorParam = new IndicatorParam { SlotNumber = SlotNumber, IsDefined = IsDefined, SlotType = SlotType, IndicatorName = IndicatorName, IndicatorType = IndicatorType, ExecutionTime = ExecutionTime, IsDeafultGroupAll = IsDeafultGroupAll, IsAllowLTF = IsAllowLTF, ListParam = new ListParam[5], NumParam = new NumericParam[6], CheckParam = new CheckParam[2] }; for (int i = 0; i < 5; i++) indicatorParam.ListParam[i] = ListParam[i].Clone(); for (int i = 0; i < 6; i++) indicatorParam.NumParam[i] = NumParam[i].Clone(); for (int i = 0; i < 2; i++) indicatorParam.CheckParam[i] = CheckParam[i].Clone(); return indicatorParam; }