private static void AddIntSubParams(ICollection<IntParam> result, Parameters sp) { foreach (Parameter p in sp.GetAllParameters()){ if (p is IntParam){ result.Add((IntParam) p); } else if (p is ParameterWithSubParams){ AddIntSubParams(result, ((ParameterWithSubParams) p).GetSubParameters()); } } }
private static void AddDoubleSubParams(ICollection <DoubleParam> result, Parameters sp) { foreach (Parameter p in sp.GetAllParameters()) { if (p is DoubleParam) { result.Add((DoubleParam)p); } else if (p is ParameterWithSubParams) { AddDoubleSubParams(result, ((ParameterWithSubParams)p).GetSubParameters()); } } }
private static Parameter FindParameter(string paramName, Parameters parameters) { Parameter p = parameters.GetParamNoException(paramName); if (p != null) { return(p); } foreach (Parameter px in parameters.GetAllParameters()) { if (px is ParameterWithSubParams) { Parameters ps = ((ParameterWithSubParams)px).GetSubParameters(); Parameter pq = FindParameter(paramName, ps); if (pq != null) { return(pq); } } } return(null); }
private static Parameter FindParameter(string paramName, Parameters parameters) { Parameter p = parameters.GetParamNoException(paramName); if (p != null) { return p; } foreach (Parameter px in parameters.GetAllParameters()) { if (px is ParameterWithSubParams) { Parameters ps = ((ParameterWithSubParams)px).GetSubParameters(); Parameter pq = FindParameter(paramName, ps); if (pq != null) { return pq; } } } return null; }