From 2df6b6c998a7a40b8a6ff0dd00701142664196dd Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <quaritsch@ivt.tugraz.at>
Date: Thu, 1 Jun 2023 15:46:16 +0200
Subject: [PATCH] bugfix PEV/IEPC VIF: no SCR Dosing in VIF. adapt code and
 testcases

---
 ...MLDeclarationBusAuxiliariesDataProvider.cs | 12 ++++++----
 .../PrimaryComponents/VIFAuxiliaryType.cs     |  3 +--
 .../XSD/VectoOutputMultistep.0.1.xsd          | 24 +++++++++++++++++--
 .../PrimaryBus/PrimaryBusSimulation.cs        |  2 +-
 .../VIF/P31_32_E2_AMT_EDP.RSLT_VIF.xml        |  1 -
 .../VIF/P31_32_E2_AMT_FESG.RSLT_VIF.xml       |  1 -
 .../VIF/P31_32_IEPC_EDP.RSLT_VIF.xml          |  1 -
 .../VIF/P31_32_IEPC_FESG.RSLT_VIF.xml         |  1 -
 8 files changed, 32 insertions(+), 13 deletions(-)

diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
index 9d45092f08..f101f1af47 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
@@ -429,8 +429,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 
 		public override string Clutch => null;
 
-        #endregion
-    }
+		public override ConsumerTechnology AdBlueDosing => ConsumerTechnology.Unknown;
+
+		#endregion
+	}
 
 	// ---------------------------------------------------------------------------------------
 
@@ -461,8 +463,10 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 
 		public override string Clutch => null;
 
-        #endregion
-    }
+		public override ConsumerTechnology AdBlueDosing => ConsumerTechnology.Unknown;
+
+		#endregion
+	}
 
 	// ---------------------------------------------------------------------------------------
 
diff --git a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/PrimaryComponents/VIFAuxiliaryType.cs b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/PrimaryComponents/VIFAuxiliaryType.cs
index b3f7a339ac..82e78d72b2 100644
--- a/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/PrimaryComponents/VIFAuxiliaryType.cs
+++ b/VectoCore/VectoCore/OutputData/XML/DeclarationReports/VehicleInformationFile/VehicleInformationFile_0_1/PrimaryComponents/VIFAuxiliaryType.cs
@@ -328,8 +328,7 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
 			return new XElement(_vif + XMLNames.BusAux_PneumaticSystem,
 				new XElement(_vif + XMLNames.CompressorDrive, pSupply.CompressorDrive.GetLabel()),
 				new XElement(_vif + XMLNames.Bus_SmartRegenerationSystem, pSupply.SmartRegeneration),
-				new XElement(_vif + XMLNames.Bus_AirsuspensionControl, GetXMLAirsuspensionControl(pConsumer.AirsuspensionControl)),
-				new XElement(_vif + XMLNames.BusAux_PneumaticSystem_SCRReagentDosing, pConsumer.AdBlueDosing == ConsumerTechnology.Pneumatically)
+				new XElement(_vif + XMLNames.Bus_AirsuspensionControl, GetXMLAirsuspensionControl(pConsumer.AirsuspensionControl))
 			);
 		}
 
diff --git a/VectoCore/VectoCore/Resources/XSD/VectoOutputMultistep.0.1.xsd b/VectoCore/VectoCore/Resources/XSD/VectoOutputMultistep.0.1.xsd
index 82f417ede2..984d62320a 100644
--- a/VectoCore/VectoCore/Resources/XSD/VectoOutputMultistep.0.1.xsd
+++ b/VectoCore/VectoCore/Resources/XSD/VectoOutputMultistep.0.1.xsd
@@ -745,7 +745,7 @@
 						<xs:complexType>
 							<xs:sequence>
 								<xs:group ref="vif:BusAuxPneumaticSystemGen_IEPC_SequenceGroup"/>
-								<xs:group ref="vif:BusAuxPneumaticSystemConsumerSequenceGroup"/>
+								<xs:group ref="vif:BusAuxPneumaticSystemConsumerPEVSequenceGroup"/>
 							</xs:sequence>
 						</xs:complexType>
 					</xs:element>
@@ -797,7 +797,7 @@
 						<xs:complexType>
 							<xs:sequence>
 								<xs:group ref="vif:BusAuxPneumaticSystemGen_PEV_SequenceGroup"/>
-								<xs:group ref="vif:BusAuxPneumaticSystemConsumerSequenceGroup"/>
+								<xs:group ref="vif:BusAuxPneumaticSystemConsumerPEVSequenceGroup"/>
 							</xs:sequence>
 						</xs:complexType>
 					</xs:element>
@@ -1234,6 +1234,26 @@
 			</xs:element>
 		</xs:sequence>
 	</xs:group>
+	<xs:group name="BusAuxPneumaticSystemConsumerPEVSequenceGroup">
+		<xs:sequence>
+			<xs:element name="SmartRegenerationSystem" type="xs:boolean">
+				<xs:annotation>
+					<xs:documentation>P312 - bool</xs:documentation>
+				</xs:annotation>
+			</xs:element>
+			<xs:element name="AirsuspensionControl">
+				<xs:annotation>
+					<xs:documentation>P315 - enum</xs:documentation>
+				</xs:annotation>
+				<xs:simpleType>
+					<xs:restriction base="xs:string">
+						<xs:enumeration value="mechanically"/>
+						<xs:enumeration value="electronically"/>
+					</xs:restriction>
+				</xs:simpleType>
+			</xs:element>
+		</xs:sequence>
+	</xs:group>
 	<xs:group name="BusAuxPneumaticSystemGen_HEV-Px_SequenceGroup">
 		<xs:sequence>
 			<xs:element name="SizeOfAirSupply" type="v2.4:PneumaticSystemTechnologyType">
diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs b/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs
index 70946d7e9f..de6780f1f8 100644
--- a/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs
+++ b/VectoCore/VectoCoreTest/Integration/Declaration/PrimaryBus/PrimaryBusSimulation.cs
@@ -1,4 +1,4 @@
-#define FULL_SIMULATIONS
+//#define FULL_SIMULATIONS
 
 
 
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_EDP.RSLT_VIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_EDP.RSLT_VIF.xml
index 29cf7491e9..a4ca05af8a 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_EDP.RSLT_VIF.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_EDP.RSLT_VIF.xml
@@ -272,7 +272,6 @@
                 <CompressorDrive>electrically</CompressorDrive>
                 <SmartRegenerationSystem>false</SmartRegenerationSystem>
                 <AirsuspensionControl>electronically</AirsuspensionControl>
-                <PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
               </PneumaticSystem>
               <HVAC>
                 <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_FESG.RSLT_VIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_FESG.RSLT_VIF.xml
index d1e3d9496a..2a9ec5b170 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_FESG.RSLT_VIF.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_E2_AMT_FESG.RSLT_VIF.xml
@@ -272,7 +272,6 @@
                 <CompressorDrive>electrically</CompressorDrive>
                 <SmartRegenerationSystem>false</SmartRegenerationSystem>
                 <AirsuspensionControl>electronically</AirsuspensionControl>
-                <PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
               </PneumaticSystem>
               <HVAC>
                 <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_EDP.RSLT_VIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_EDP.RSLT_VIF.xml
index 034bb77307..71056d607b 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_EDP.RSLT_VIF.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_EDP.RSLT_VIF.xml
@@ -306,7 +306,6 @@
                 <CompressorDrive>electrically</CompressorDrive>
                 <SmartRegenerationSystem>false</SmartRegenerationSystem>
                 <AirsuspensionControl>electronically</AirsuspensionControl>
-                <PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
               </PneumaticSystem>
               <HVAC>
                 <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
diff --git a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_FESG.RSLT_VIF.xml b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_FESG.RSLT_VIF.xml
index 95cecb1239..d7e32ce7cd 100644
--- a/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_FESG.RSLT_VIF.xml
+++ b/VectoCore/VectoCoreTest/TestData/Integration/DeclarationMode/2nd_AmendmDeclMode/FactorMethod/VIF/P31_32_IEPC_FESG.RSLT_VIF.xml
@@ -306,7 +306,6 @@
                 <CompressorDrive>electrically</CompressorDrive>
                 <SmartRegenerationSystem>false</SmartRegenerationSystem>
                 <AirsuspensionControl>electronically</AirsuspensionControl>
-                <PneumaticSCRReagentDosing>false</PneumaticSCRReagentDosing>
               </PneumaticSystem>
               <HVAC>
                 <AdjustableCoolantThermostat>true</AdjustableCoolantThermostat>
-- 
GitLab