/// <inheritdoc/> public override XElement GetXml(string rootElemName, bool suppressDefaults) { XElement rootElem = new XElement(rootElemName); if (!suppressDefaults || !IsDefaultSlices) { rootElem.Add(new XAttribute("slices", Slices.ToString(CultureInfo.InvariantCulture))); } if (!suppressDefaults || !IsDefaultBidir) { rootElem.Add(new XAttribute("bidir", Bidir.ToString())); } if (!suppressDefaults || !IsDefaultVarSchema) { rootElem.Add(new XAttribute("variablesSchema", VarSchema.ToString())); } if (!suppressDefaults || !UnificationCfg.ContainsOnlyDefaults) { rootElem.Add(UnificationCfg.GetXml(suppressDefaults)); } if (SteadyFieldsCfg != null) { rootElem.Add(SteadyFieldsCfg.GetXml(suppressDefaults)); } Validate(rootElem, XsdTypeName); return(rootElem); }
//Methods /// <inheritdoc/> protected override void Check() { if (Slices <= 0) { throw new ArgumentException($"Invalid Slices {Slices.ToString(CultureInfo.InvariantCulture)}. Slices must be GT 0.", "Slices"); } if (UnificationCfg.ResamplingCfg.TargetTimePoints != ResamplingSettings.AutoTargetTimePointsNum && Slices > UnificationCfg.ResamplingCfg.TargetTimePoints) { throw new ArgumentException($"Invalid Slices {Slices.ToString(CultureInfo.InvariantCulture)}. Slices must be LE to pattern timepoints ({UnificationCfg.ResamplingCfg.TargetTimePoints}).", "Slices"); } return; }