/// <inheritdoc/> public override XElement GetXml(string rootElemName, bool suppressDefaults) { XElement rootElem = new XElement(rootElemName, new XAttribute("name", Name), TransformerCfg.GetXml(suppressDefaults) ); if (!suppressDefaults || !IsDefaultRouteToReadout) { rootElem.Add(new XAttribute("routeToReadout", RouteToReadout.ToString(CultureInfo.InvariantCulture).ToLowerInvariant())); } if (!suppressDefaults || !FeatureFilterCfg.ContainsOnlyDefaults) { rootElem.Add(FeatureFilterCfg.GetXml(suppressDefaults)); } Validate(rootElem, XsdTypeName); return(rootElem); }
//Methods /// <summary> /// Checks consistency /// </summary> protected override void Check() { if (Name.Length == 0) { throw new ArgumentException($"Name can not be empty.", "Name"); } Type transType = TransformerCfg.GetType(); if (transType != typeof(DiffTransformerSettings) && transType != typeof(CDivTransformerSettings) && transType != typeof(LogTransformerSettings) && transType != typeof(ExpTransformerSettings) && transType != typeof(PowerTransformerSettings) && transType != typeof(YeoJohnsonTransformerSettings) && transType != typeof(MWStatTransformerSettings) && transType != typeof(MulTransformerSettings) && transType != typeof(DivTransformerSettings) && transType != typeof(LinearTransformerSettings)) { throw new ArgumentException($"Unsupported transformer configuration {transType.Name}.", "TransformerCfg"); } return; }