/// <summary> /// Gets the configuration of the varying input field. /// </summary> /// <param name="fieldName">The name of the varying input field.</param> public RCNetBaseSettings GetFieldCfg(string fieldName) { int index = ExternalFieldsCfg.GetFieldID(fieldName, false); if (index != -1) { return(ExternalFieldsCfg.FieldCfgCollection[index]); } if (GeneratedFieldsCfg != null) { index = GeneratedFieldsCfg.GetFieldID(fieldName, false); if (index != -1) { return(GeneratedFieldsCfg.FieldCfgCollection[index]); } } throw new InvalidOperationException($"Field name {fieldName} not found."); }
/// <summary> /// Generates xml element containing the settings. /// </summary> /// <param name="rootElemName">Name to be used as a name of the root element.</param> /// <param name="suppressDefaults">Specifies whether to ommit optional nodes having set default values</param> /// <returns>XElement containing the settings</returns> public override XElement GetXml(string rootElemName, bool suppressDefaults) { XElement rootElem = new XElement(rootElemName, ExternalFieldsCfg.GetXml(suppressDefaults) ); if (TransformedFieldsCfg != null) { rootElem.Add(TransformedFieldsCfg.GetXml(suppressDefaults)); } if (GeneratedFieldsCfg != null) { rootElem.Add(GeneratedFieldsCfg.GetXml(suppressDefaults)); } if (!suppressDefaults || !IsDefaultRouteToReadout) { rootElem.Add(new XAttribute("routeToReadout", RouteToReadout.ToString(CultureInfo.InvariantCulture).ToLowerInvariant())); } Validate(rootElem, XsdTypeName); return(rootElem); }