From 6b155f876eaed35c5a031407be194fec2ca70660 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Mon, 25 May 2020 14:10:11 +0200
Subject: [PATCH] refactoring: input parameter floorType -> LowEntry

---
 VECTO/Input Files/Engine.vb                   |  2 +-
 VECTO/Input Files/Gearbox.vb                  |  2 +-
 VECTO/Input Files/MockVehicleInputData.vb     |  2 +-
 VECTO/Input Files/Vehicle.vb                  |  2 +-
 .../Declaration/VehicleDeclarationAdapter.cs  |  2 +-
 .../Impl/CompleteVehicleBusViewModel.cs       |  2 +-
 .../VectoCommon/BusAuxiliaries/FloorType.cs   | 34 +++++------
 .../InputData/DeclarationInputData.cs         |  3 +-
 .../FileIO/JSON/JSONComponentInputData.cs     |  2 +-
 .../InputData/FileIO/JSON/JSONVehicleData.cs  |  2 +-
 .../XMLDeclarationVehicleDataProvider.cs      | 10 ++--
 .../XMLEngineeringVehicleDataProvider.cs      |  2 +-
 ...arationModeSingleBusVectoRunDataFactory.cs |  4 +-
 .../XML/XMLCustomerReportCompletedBus.cs      |  2 +-
 .../XML/XMLManufacturerReportCompletedBus.cs  |  2 +-
 .../DeclarationSegmentHeavyBusesTest.cs       | 60 +++++++++----------
 .../Utils/MockDeclarationVehicleInputData.cs  |  4 +-
 .../XML/XMLCompleteBusReaderTest.cs           |  2 +-
 18 files changed, 67 insertions(+), 72 deletions(-)

diff --git a/VECTO/Input Files/Engine.vb b/VECTO/Input Files/Engine.vb
index 91425bd510..480eb63c0a 100644
--- a/VECTO/Input Files/Engine.vb	
+++ b/VECTO/Input Files/Engine.vb	
@@ -651,7 +651,7 @@ Public Class DummyVehicle
     Public  Property Loading As Kilogram Implements IVehicleEngineeringInputData.Loading
     Public  Property DynamicTyreRadius As Meter Implements IVehicleEngineeringInputData.DynamicTyreRadius
     Public  Property Height As Meter Implements IVehicleEngineeringInputData.Height
-    Public ReadOnly Property FloorType As FloorType Implements IVehicleDeclarationInputData.FloorType
+    Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
     Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
     Public ReadOnly Property IVehicleDeclarationInputData_Height As Meter Implements IVehicleDeclarationInputData.Height
     Public ReadOnly Property Length As Meter Implements IVehicleDeclarationInputData.Length
diff --git a/VECTO/Input Files/Gearbox.vb b/VECTO/Input Files/Gearbox.vb
index 53ae63adee..0b1fb81067 100644
--- a/VECTO/Input Files/Gearbox.vb	
+++ b/VECTO/Input Files/Gearbox.vb	
@@ -835,7 +835,7 @@ Public Class MockEngineeringVehicle
     Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
     Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
     Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
-    Public ReadOnly Property FloorType As FloorType Implements IVehicleDeclarationInputData.FloorType
+    Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
     Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
     Public ReadOnly Property IVehicleDeclarationInputData_Height As Meter Implements IVehicleDeclarationInputData.Height
     Public Property CurbMassExtra As Kilogram Implements IVehicleEngineeringInputData.CurbMassExtra
diff --git a/VECTO/Input Files/MockVehicleInputData.vb b/VECTO/Input Files/MockVehicleInputData.vb
index cf92997a6a..f563a7ae02 100644
--- a/VECTO/Input Files/MockVehicleInputData.vb	
+++ b/VECTO/Input Files/MockVehicleInputData.vb	
@@ -43,7 +43,7 @@ Public Class MockVehicleInputData
     Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
     Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
     Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
-    Public ReadOnly Property FloorType As FloorType Implements IVehicleDeclarationInputData.FloorType
+    Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
     Public ReadOnly Property Articulated As Boolean Implements IVehicleDeclarationInputData.Articulated
     Public ReadOnly Property Height As Meter Implements IVehicleDeclarationInputData.Height
     Public ReadOnly Property Length As Meter Implements IVehicleDeclarationInputData.Length
diff --git a/VECTO/Input Files/Vehicle.vb b/VECTO/Input Files/Vehicle.vb
index 365da6a37b..c25edd87a1 100644
--- a/VECTO/Input Files/Vehicle.vb	
+++ b/VECTO/Input Files/Vehicle.vb	
@@ -763,7 +763,7 @@ Public Class Vehicle
     Public ReadOnly Property NumberOfPassengersUpperDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersUpperDeck
     Public ReadOnly Property NumberOfPassengersLowerDeck As Integer Implements IVehicleDeclarationInputData.NumberOfPassengersLowerDeck
     Public ReadOnly Property VehicleCode As VehicleCode Implements IVehicleDeclarationInputData.VehicleCode
-    Public ReadOnly Property FloorType As FloorType Implements IVehicleDeclarationInputData.FloorType
+    Public ReadOnly Property LowEntry As Boolean Implements IVehicleDeclarationInputData.LowEntry
 
     Public ReadOnly Property Components As IVehicleComponentsDeclaration Implements IVehicleDeclarationInputData.Components
 	get
diff --git a/VECTO3GUI/ViewModel/Adapter/Declaration/VehicleDeclarationAdapter.cs b/VECTO3GUI/ViewModel/Adapter/Declaration/VehicleDeclarationAdapter.cs
index b44c0e8e4a..dc508f3a4f 100644
--- a/VECTO3GUI/ViewModel/Adapter/Declaration/VehicleDeclarationAdapter.cs
+++ b/VECTO3GUI/ViewModel/Adapter/Declaration/VehicleDeclarationAdapter.cs
@@ -111,7 +111,7 @@ namespace VECTO3GUI.ViewModel.Adapter.Declaration
 		public int NumberOfPassengersUpperDeck { get; }
 		public int NumberOfPassengersLowerDeck { get; }
 		public VehicleCode VehicleCode { get; }
-		public FloorType FloorType { get; }
+		public bool LowEntry { get; }
 		public bool Articulated { get; }
 		public Meter Height { get; }
 		public Meter Length { get; }
diff --git a/VECTO3GUI/ViewModel/Impl/CompleteVehicleBusViewModel.cs b/VECTO3GUI/ViewModel/Impl/CompleteVehicleBusViewModel.cs
index 31a15bec32..a737e01525 100644
--- a/VECTO3GUI/ViewModel/Impl/CompleteVehicleBusViewModel.cs
+++ b/VECTO3GUI/ViewModel/Impl/CompleteVehicleBusViewModel.cs
@@ -282,7 +282,7 @@ namespace VECTO3GUI.ViewModel.Impl
 				NgTankSystem = vehicle.TankSystem;
 				NumberOfPassengersLowerDeck = vehicle.NumberOfPassengersLowerDeck;
 				NumberOfPassengersUpperDeck = vehicle.NumberOfPassengersUpperDeck;
-				LowEntry = vehicle.FloorType == FloorType.LowFloor;
+				LowEntry = vehicle.LowEntry;
 				HeightIntegratedBody = vehicle.Height;
 				VehicleLength = vehicle.Length;
 				VehicleWidth = vehicle.Width;
diff --git a/VectoCommon/VectoCommon/BusAuxiliaries/FloorType.cs b/VectoCommon/VectoCommon/BusAuxiliaries/FloorType.cs
index 9f9553a082..5e194eb3d6 100644
--- a/VectoCommon/VectoCommon/BusAuxiliaries/FloorType.cs
+++ b/VectoCommon/VectoCommon/BusAuxiliaries/FloorType.cs
@@ -9,21 +9,21 @@ namespace TUGraz.VectoCommon.BusAuxiliaries {
 		SemiLowFloor, // no longer required?
 	}
 
-	public static class FloorTypeHelper
-	{
-		public static string GetLabel(this FloorType self)
-		{
-			switch (self)
-			{
-				case FloorType.SemiLowFloor:
-				case FloorType.LowFloor:
-					return "Low Floor";
-				case FloorType.HighFloor:
-					return "High Floor";
-				default:
-					return "Unknown";
-			
-			}
-		}
-	}
+	//public static class FloorTypeHelper
+	//{
+	//	public static string GetLabel(this FloorType self)
+	//	{
+	//		switch (self)
+	//		{
+	//			case FloorType.SemiLowFloor:
+	//			case FloorType.LowFloor:
+	//				return "Low Floor";
+	//			case FloorType.HighFloor:
+	//				return "High Floor";
+	//			default:
+	//				return "Unknown";
+
+	//		}
+	//	}
+	//}
 }
\ No newline at end of file
diff --git a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
index 076b0d63f5..434813f62e 100644
--- a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
@@ -170,7 +170,8 @@ namespace TUGraz.VectoCommon.InputData
 		int NumberOfPassengersLowerDeck { get; }
 
 		VehicleCode VehicleCode { get; }
-		FloorType FloorType { get; }
+
+		bool LowEntry { get; }
 
 		bool Articulated { get; }
 
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
index a9d88213e7..82417bc977 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
@@ -426,7 +426,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 		public int NumberOfPassengersUpperDeck { get { return 0; } }
 		public int NumberOfPassengersLowerDeck { get { return 0; } }
 		public VehicleCode VehicleCode { get { return VehicleCode.NOT_APPLICABLE; } }
-		public FloorType FloorType { get { return VehicleData.FloorType; } }
+		public bool LowEntry { get { return VehicleData.LowEntry; } }
 
 		IVehicleComponentsDeclaration IVehicleDeclarationInputData.Components
 		{
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
index a2e87516e2..6721f9ea7e 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
@@ -607,7 +607,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return VehicleCode.NOT_APPLICABLE; }
 		}
 
-		public virtual FloorType FloorType { get { return FloorType.Unknown; } }
+		public virtual bool LowEntry { get { return false; } }
 
 		IVehicleComponentsDeclaration IVehicleDeclarationInputData.Components
 		{
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
index f1216091c0..323297f56e 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs
@@ -293,9 +293,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 			get { return VehicleCode.NOT_APPLICABLE; }
 		}
 
-		public virtual FloorType FloorType
+		public virtual bool LowEntry
 		{
-			get { return FloorType.Unknown; }
+			get { return false; }
 		}
 
 		public virtual bool Articulated
@@ -868,9 +868,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		#endregion
 
 		
-		public override FloorType FloorType
+		public override bool LowEntry
 		{
-			get { return GetBool(XMLNames.Bus_LowEntry) ? FloorType.LowFloor : FloorType.HighFloor; }
+			get { return GetBool(XMLNames.Bus_LowEntry); }
 		}
 
 		public override Meter EntranceHeight
@@ -1047,7 +1047,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider
 		public Watt MaxNetPower2 { get; }
 		public RegistrationClass RegisteredClass { get; }
 		public VehicleCode VehicleCode { get; }
-		public FloorType FloorType { get; }
+		public bool LowEntry { get; }
 		public bool Articulated { get { return GetBool(XMLNames.Vehicle_Articulated); } }
 		public Meter Height { get; }
 		public Meter Length { get; }
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
index 76b6bc6515..0a544541a5 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/DataProvider/XMLEngineeringVehicleDataProvider.cs
@@ -168,7 +168,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering.DataProvider
 		public virtual int NumberOfPassengersUpperDeck { get { return 0; } }
 		public virtual int NumberOfPassengersLowerDeck { get { return 0; } }
 		public virtual VehicleCode VehicleCode { get { return VehicleCode.NOT_APPLICABLE; } }
-		public virtual FloorType FloorType { get { return FloorType.Unknown; } }
+		public virtual bool LowEntry { get { return false; } }
 		public virtual bool Articulated { get { return false; } }
 		
 
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
index 689c7aea98..eef38240de 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeSingleBusVectoRunDataFactory.cs
@@ -42,13 +42,13 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl {
 
 			var segment = DeclarationData.CompletedBusSegments.Lookup(
 				_singleBusInputData.PrimaryVehicle.AxleConfiguration.NumAxles(), completedVehicle.VehicleCode, completedVehicle.RegisteredClass, completedVehicle.NumberOfPassengersLowerDeck,
-				completedVehicle.Height, completedVehicle.FloorType == FloorType.LowFloor);
+				completedVehicle.Height, completedVehicle.LowEntry);
 			if (!segment.Found) {
 				throw new VectoException(
 					"no segment found for vehicle configruation: vehicle category: {0}, axle configuration: {1}, articulated: {2}, vehicle code: {3}, registered class: {4}, passengersLowerDeck: {5}, height: {6}, lowfloor: {7}. completed",
 					vehicle.VehicleCategory, _singleBusInputData.PrimaryVehicle.AxleConfiguration,
 					vehicle.Articulated, completedVehicle.VehicleCode, completedVehicle.RegisteredClass.GetLabel(), completedVehicle.NumberOfPassengersLowerDeck,
-					completedVehicle.Height, completedVehicle.FloorType == FloorType.LowFloor);
+					completedVehicle.Height, completedVehicle.LowEntry);
 			}
 			foreach (var mission in segment.Missions) {
 				mission.VehicleHeight = completedVehicle.Height + mission.BusParameter.DeltaHeight;
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLCustomerReportCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/XMLCustomerReportCompletedBus.cs
index 01ffdcf1fd..f3eeb85829 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLCustomerReportCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLCustomerReportCompletedBus.cs
@@ -59,7 +59,7 @@ namespace TUGraz.VectoCore.OutputData.XML {
 					new XElement(tns + XMLNames.Bus_LowerDeck, modelData.VehicleData.InputData.NumberOfPassengersLowerDeck),
 					new XElement(tns + XMLNames.Bus_UpperDeck, modelData.VehicleData.InputData.NumberOfPassengersUpperDeck)
 				),
-				new XElement(tns + XMLNames.Bus_LowEntry, modelData.VehicleData.InputData.FloorType == FloorType.LowFloor),
+				new XElement(tns + XMLNames.Bus_LowEntry, modelData.VehicleData.InputData.LowEntry),
 				new XElement(tns + XMLNames.Bus_HeighIntegratedBody, modelData.VehicleData.InputData.Height.ToXMLFormat(3)),
 				new XElement(tns + XMLNames.Bus_VehicleLength, modelData.VehicleData.InputData.Length.ToXMLFormat(3)),
 				new XElement(tns + XMLNames.Bus_VehicleWidth, modelData.VehicleData.InputData.Width.ToXMLFormat(3)),
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLManufacturerReportCompletedBus.cs b/VectoCore/VectoCore/OutputData/XML/XMLManufacturerReportCompletedBus.cs
index cabaedec70..0860b82c6c 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLManufacturerReportCompletedBus.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLManufacturerReportCompletedBus.cs
@@ -54,7 +54,7 @@ namespace TUGraz.VectoCore.OutputData.XML {
 						new XElement(tns + XMLNames.Bus_LowerDeck, modelData.VehicleData.InputData.NumberOfPassengersLowerDeck),
 						new XElement(tns + XMLNames.Bus_UpperDeck, modelData.VehicleData.InputData.NumberOfPassengersUpperDeck)
 					),
-					new XElement(tns +XMLNames.Bus_LowEntry, modelData.VehicleData.InputData.FloorType == FloorType.LowFloor),
+					new XElement(tns +XMLNames.Bus_LowEntry, modelData.VehicleData.InputData.LowEntry),
 					new XElement(tns + XMLNames.Bus_HeighIntegratedBody, modelData.VehicleData.InputData.Height.ToXMLFormat(3)),
 					new XElement(tns + XMLNames.Bus_VehicleLength, modelData.VehicleData.InputData.Length.ToXMLFormat(3)),
 					new XElement(tns + XMLNames.Bus_VehicleWidth, modelData.VehicleData.InputData.Width.ToXMLFormat(3)),
diff --git a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationSegmentHeavyBusesTest.cs b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationSegmentHeavyBusesTest.cs
index 4e4769387a..1250d66e73 100644
--- a/VectoCore/VectoCoreTest/Models/Declaration/DeclarationSegmentHeavyBusesTest.cs
+++ b/VectoCore/VectoCoreTest/Models/Declaration/DeclarationSegmentHeavyBusesTest.cs
@@ -13,72 +13,72 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 	{
 		[
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, FloorType.LowFloor, false, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, true, false, false,
 				VehicleClass.ClassP31_32),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, FloorType.HighFloor, true, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, false, true, false,
 				VehicleClass.ClassP31_32),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, FloorType.LowFloor, false, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, true, false, true,
 				VehicleClass.ClassP31_32),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, FloorType.HighFloor, true, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_4x2, false, true, true,
 				VehicleClass.ClassP31_32),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, FloorType.LowFloor, false, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, true, false, false,
 				VehicleClass.ClassP33_34),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, FloorType.HighFloor, true, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, false, true, false,
 				VehicleClass.ClassP33_34),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, FloorType.LowFloor, false, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, true, false, false,
 				VehicleClass.ClassP33_34),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, FloorType.HighFloor, true, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, false, true, false,
 				VehicleClass.ClassP33_34),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, FloorType.LowFloor, false, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, true, false, true,
 				VehicleClass.ClassP35_36),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, FloorType.HighFloor, true, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x2, false, true, true,
 				VehicleClass.ClassP35_36),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, FloorType.LowFloor, false, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, true, false, true,
 				VehicleClass.ClassP35_36),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, FloorType.HighFloor, true, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_6x4, false, true, true,
 				VehicleClass.ClassP35_36),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, FloorType.LowFloor, false, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, true, false, false,
 				VehicleClass.ClassP37_38),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, FloorType.HighFloor, true, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, false, true, false,
 				VehicleClass.ClassP37_38),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, FloorType.LowFloor, false, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, true, false, false,
 				VehicleClass.ClassP37_38),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, FloorType.HighFloor, true, false,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, false, true, false,
 				VehicleClass.ClassP37_38),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, FloorType.LowFloor, false, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, true, false, true,
 				VehicleClass.ClassP39_40),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, FloorType.HighFloor, true, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x2, false, true, true,
 				VehicleClass.ClassP39_40),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, FloorType.LowFloor, false, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, true, false, true,
 				VehicleClass.ClassP39_40),
 			TestCase(
-				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, FloorType.HighFloor, true, true,
+				VehicleCategory.HeavyBusPrimaryVehicle, AxleConfiguration.AxleConfig_8x4, false, true, true,
 				VehicleClass.ClassP39_40),
 		]
 		public void SegmentLookupTest(
-			VehicleCategory category, AxleConfiguration axleConfiguration, FloorType floorType, bool doubleDecker,
+			VehicleCategory category, AxleConfiguration axleConfiguration, bool floorType, bool doubleDecker,
 			bool articulated, VehicleClass expectedClass)
 		{
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				category, axleConfiguration, articulated, floorType);
+				category, axleConfiguration, articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(expectedClass, segment.VehicleClass);
@@ -92,11 +92,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 				VehicleCategory = VehicleCategory.HeavyBusPrimaryVehicle,
 				AxleConfiguration = AxleConfiguration.AxleConfig_4x2,
 				Articulated = false,
-				FloorType = FloorType.LowFloor,
 				DoubleDecker = false
 			};
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated, vehicleData.FloorType);
+				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(VehicleClass.ClassP31_32, segment.VehicleClass);
@@ -200,11 +199,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 				VehicleCategory = VehicleCategory.HeavyBusPrimaryVehicle,
 				AxleConfiguration = AxleConfiguration.AxleConfig_6x2,
 				Articulated = false,
-				FloorType = FloorType.LowFloor,
 				DoubleDecker = false
 			};
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated, vehicleData.FloorType);
+				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(VehicleClass.ClassP33_34, segment.VehicleClass);
@@ -306,11 +304,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 				VehicleCategory = VehicleCategory.HeavyBusPrimaryVehicle,
 				AxleConfiguration = AxleConfiguration.AxleConfig_6x2,
 				Articulated = true,
-				FloorType = FloorType.LowFloor,
 				DoubleDecker = false
 			};
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated, vehicleData.FloorType);
+				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(VehicleClass.ClassP35_36, segment.VehicleClass);
@@ -411,11 +408,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 				VehicleCategory = VehicleCategory.HeavyBusPrimaryVehicle,
 				AxleConfiguration = AxleConfiguration.AxleConfig_8x2,
 				Articulated = false,
-				FloorType = FloorType.LowFloor,
 				DoubleDecker = false
 			};
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated, vehicleData.FloorType);
+				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(VehicleClass.ClassP37_38, segment.VehicleClass);
@@ -517,11 +513,10 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 				VehicleCategory = VehicleCategory.HeavyBusPrimaryVehicle,
 				AxleConfiguration = AxleConfiguration.AxleConfig_8x2,
 				Articulated = true,
-				FloorType = FloorType.LowFloor,
 				DoubleDecker = false
 			};
 			var segment = DeclarationData.PrimaryBusSegments.Lookup(
-				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated, vehicleData.FloorType);
+				vehicleData.VehicleCategory, vehicleData.AxleConfiguration, vehicleData.Articulated);
 
 			Assert.AreEqual(10, segment.Missions.Length);
 			Assert.AreEqual(VehicleClass.ClassP39_40, segment.VehicleClass);
@@ -697,7 +692,6 @@ namespace TUGraz.VectoCore.Tests.Models.Declaration
 		TestCase(VehicleCode.CB, RegistrationClass.II_III, 2.134, 1.8),
 		TestCase(VehicleCode.CB, RegistrationClass.III, 2.134, 1.8),
 		TestCase(VehicleCode.CB, RegistrationClass.B, 2.134, 1.8),
-
 		]
 		public void TestInternalHeightCalculation(
 			VehicleCode vehicleCode, RegistrationClass regClass, double bodyHeight, double expectedInternalHeight)
diff --git a/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs b/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
index 71c8dc8330..7e675380ef 100644
--- a/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
+++ b/VectoCore/VectoCoreTest/Utils/MockDeclarationVehicleInputData.cs
@@ -49,7 +49,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public int NumberOfPassengersUpperDeck { get; set; }
 		public int NumberOfPassengersLowerDeck { get; set; }
 		public VehicleCode VehicleCode { get; set; }
-		public FloorType FloorType { get; }
+		public bool LowEntry { get; }
 		public bool Articulated { get; }
 		public Meter Height { get; set; }
 		public Meter Length { get; set; }
@@ -113,7 +113,7 @@ namespace TUGraz.VectoCore.Tests.Utils {
 		public int NumberOfPassengersUpperDeck { get; set; }
 		public int NumberOfPassengersLowerDeck { get; set; }
 		public VehicleCode VehicleCode { get; set; }
-		public FloorType FloorType { get; }
+		public bool LowEntry { get; }
 
 		IVehicleComponentsDeclaration IVehicleDeclarationInputData.Components
 		{
diff --git a/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs b/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs
index 19e039fcf7..222e9985a3 100644
--- a/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs
@@ -59,7 +59,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.IsNull(vehicle.TankSystem);
 			Assert.AreEqual(50, vehicle.NumberOfPassengersLowerDeck);
 			Assert.AreEqual(0, vehicle.NumberOfPassengersUpperDeck);
-			Assert.AreEqual(FloorType.LowFloor, vehicle.FloorType);
+			Assert.IsTrue(vehicle.LowEntry);
 			Assert.AreEqual(2.700, vehicle.Height.Value());
 			Assert.AreEqual(11.830, vehicle.Length.Value());
 			Assert.AreEqual(2.550, vehicle.Width.Value());
-- 
GitLab