From 126449d12e5cb7b9d276d8f5d98f1d613491f291 Mon Sep 17 00:00:00 2001
From: "VKMTHD\\franzjosefkober" <franz.josef.kober@ivt.tugraz.at>
Date: Wed, 7 Apr 2021 11:35:46 +0200
Subject: [PATCH] added new enum entires for HeatPumpType and HeatPumpMode

---
 VectoCommon/VectoCommon/BusAuxiliaries/ISSMInputs.cs        | 6 +++++-
 .../XMLDeclarationBusAuxiliariesDataProvider.cs             | 6 ++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/VectoCommon/VectoCommon/BusAuxiliaries/ISSMInputs.cs b/VectoCommon/VectoCommon/BusAuxiliaries/ISSMInputs.cs
index 52434649c8..fad61f4321 100644
--- a/VectoCommon/VectoCommon/BusAuxiliaries/ISSMInputs.cs
+++ b/VectoCommon/VectoCommon/BusAuxiliaries/ISSMInputs.cs
@@ -240,7 +240,8 @@ namespace TUGraz.VectoCommon.BusAuxiliaries
 	{
 		heating,
 		heating_and_cooling,
-		cooling
+		cooling,
+		N_A,
 	}
 
 	public static class HeatPumpModeHelper
@@ -248,6 +249,7 @@ namespace TUGraz.VectoCommon.BusAuxiliaries
 		private const string HEATING = "heating";
 		private const string HEATING_AND_COOLING = "heating_and_cooling";
 		private const string COOLING = "cooling";
+		private const string N_A = "N.A.";
 
 		public static HeatPumpMode? Parse(string parse)
 		{
@@ -256,6 +258,7 @@ namespace TUGraz.VectoCommon.BusAuxiliaries
 				case HEATING: return HeatPumpMode.heating;
 				case HEATING_AND_COOLING: return HeatPumpMode.heating_and_cooling;
 				case COOLING: return HeatPumpMode.cooling;
+				case N_A: return HeatPumpMode.N_A;
 				default: return null;
 			}
 		}
@@ -267,6 +270,7 @@ namespace TUGraz.VectoCommon.BusAuxiliaries
 				case HeatPumpMode.heating: return HEATING;
 				case HeatPumpMode.heating_and_cooling: return HEATING_AND_COOLING;
 				case HeatPumpMode.cooling: return COOLING;
+				case HeatPumpMode.N_A: return N_A;
 				default: return null;
 			}
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
index 3cdf1d8642..c547d2ba26 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs
@@ -384,6 +384,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		{
 			get
 			{
+				if (HeatPumpTypeDriverCompartment == HeatPumpType.none && !ElementExists(XMLNames.Bus_HeatPumpModeDriver)) 
+					return HeatPumpMode.N_A;
+				
 				return ElementExists(XMLNames.Bus_HeatPumpModeDriver)
 					? HeatPumpModeHelper.Parse(GetString(XMLNames.Bus_HeatPumpModeDriver)) : null;
 			}
@@ -402,6 +405,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		{
 			get
 			{
+				if (HeatPumpTypePassengerCompartment == HeatPumpType.none && !ElementExists(XMLNames.Bus_HeatPumpModePassenger))
+					return HeatPumpMode.N_A;
+
 				return ElementExists(XMLNames.Bus_HeatPumpModePassenger)
 					? HeatPumpModeHelper.Parse(GetString(XMLNames.Bus_HeatPumpModePassenger)) : null;
 			}
-- 
GitLab