From 036d75f79e236b446fd297836c0f4d5d6e4c25d4 Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Tue, 11 Feb 2020 17:24:55 +0100 Subject: [PATCH] fix: manufacturer report: in case no xml input is provided create xml --- .../XML/AbstractXMLManufacturerReport.cs | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/VectoCore/VectoCore/OutputData/XML/AbstractXMLManufacturerReport.cs b/VectoCore/VectoCore/OutputData/XML/AbstractXMLManufacturerReport.cs index aa59d0eed6..e610e3c148 100644 --- a/VectoCore/VectoCore/OutputData/XML/AbstractXMLManufacturerReport.cs +++ b/VectoCore/VectoCore/OutputData/XML/AbstractXMLManufacturerReport.cs @@ -5,9 +5,11 @@ using System.Linq; using System.Xml; using System.Xml.Linq; using TUGraz.IVT.VectoXML.Writer; +using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Models; using TUGraz.VectoCommon.Resources; using TUGraz.VectoCommon.Utils; +using TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl; using TUGraz.VectoCore.Models.Declaration; using TUGraz.VectoCore.Models.Simulation.Data; using TUGraz.VectoCore.Models.Simulation.Impl; @@ -233,16 +235,40 @@ namespace TUGraz.VectoCore.OutputData.XML protected virtual XElement GetADAS(VehicleData.ADASData adasData) { + if (adasData.InputData.XMLSource == null) { + return CreateADAS(adasData); + } + var ns = XNamespace.Get(adasData.InputData.XMLSource.SchemaInfo.SchemaType.QualifiedName.Namespace); + var type = adasData.InputData.XMLSource.SchemaInfo.SchemaType.QualifiedName.Name; + const string adasPrefix = "adas"; return new XElement( tns + XMLNames.Vehicle_ADAS, new XAttribute(XNamespace.Xmlns + adasPrefix, ns.NamespaceName), - new XAttribute(xsi + "type", string.Format("{0}:{1}", adasPrefix, adasData.InputData.XMLSource.SchemaInfo.SchemaType.QualifiedName.Name)), + new XAttribute(xsi + "type", string.Format("{0}:{1}", adasPrefix, type)), XElement.Parse(adasData.InputData.XMLSource.OuterXml).Elements() ); } + protected virtual XElement CreateADAS(VehicleData.ADASData adasData) + { + var ns = XMLADASReaderV23.NAMESPACE_URI; + var type = XMLADASReaderV23.XSD_TYPE; + + const string adasPrefix = "adas"; + return new XElement( + tns + XMLNames.Vehicle_ADAS, + new XAttribute(XNamespace.Xmlns + adasPrefix, ns.NamespaceName), + new XAttribute(xsi + "type", string.Format("{0}:{1}", adasPrefix, type)), + new XElement(ns + XMLNames.Vehicle_ADAS_EngineStopStart, adasData.EngineStopStart), + new XElement(ns + XMLNames.Vehicle_ADAS_EcoRollWithoutEngineStop, adasData.EcoRoll.WithoutEngineStop()), + new XElement(ns + XMLNames.Vehicle_ADAS_EcoRollWithEngineStopStart, adasData.EcoRoll.WithEngineStop()), + new XElement(ns + XMLNames.Vehicle_ADAS_PCC, adasData.PredictiveCruiseControl.ToXMLFormat()), + new XElement(ns + XMLNames.Vehicle_ADAS_ATEcoRollReleaseLockupClutch, adasData.InputData.ATEcoRollReleaseLockupClutch ?? false) + ); + } + protected virtual XElement GetTorqueLimits(CombustionEngineData modelData) { var limits = new List<XElement>(); -- GitLab