From e31b58d2d5696c81a195cab5830ed75745a0db1b Mon Sep 17 00:00:00 2001 From: "VKMTHD\\franzjosefkober" <franz.josef.kober@ivt.tugraz.at> Date: Fri, 28 May 2021 16:26:56 +0200 Subject: [PATCH] adjusted consolidated multistage class --- .../XMLDeclarationMultistageInputReader.cs | 35 +++++++++++++++---- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs index 4f2ddb0b82..dd63bc3322 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/Reader/Impl/XMLDeclarationMultistageInputReader.cs @@ -357,6 +357,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl public abstract string GetInvalidEntry(); + protected bool MethodComplete(bool result, string methodName) + { + if (result) + return true; + + InvalidEntry = methodName; + return false; + } + protected bool InputComplete<T>(T value, string variableName) { if (value != null) @@ -678,8 +687,11 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl checkAirdragModified = true; continue; } - if (checkAirdragModified && manufacturingStage.Vehicle?.AirdragModifiedMultistage == null) + + if (checkAirdragModified && manufacturingStage.Vehicle?.AirdragModifiedMultistage == null) { validAirdragEntries = false; + break; + } } return validAirdragEntries; @@ -694,8 +706,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl && InputComplete(LegislativeClass, nameof(LegislativeClass)) && InputComplete(CurbMassChassis, nameof(CurbMassChassis)) && InputComplete(GrossVehicleMassRating, nameof(GrossVehicleMassRating)) - && InputComplete(IsAirdragEntriesValid(), nameof(IsAirdragEntriesValid)) - && InputComplete(IsTankSystemValid(), nameof(IsTankSystemValid)) + && MethodComplete(IsAirdragEntriesValid(), nameof(IsAirdragEntriesValid)) + && MethodComplete(IsTankSystemValid(), nameof(IsTankSystemValid)) && InputComplete(RegisteredClass, nameof(RegisteredClass)) && InputComplete(NumberPassengerSeatsLowerDeck, nameof(NumberPassengerSeatsLowerDeck)) && InputComplete(NumberPassengerSeatsUpperDeck, nameof(NumberPassengerSeatsUpperDeck)) @@ -1219,8 +1231,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl { get { - return GetHVACBusAuxPropertyValue<IList<Tuple<HeatPumpType, HeatPumpMode>>>( - nameof(HeatPumpPassengerCompartments)); + return GetHeatPumpPassengerCompartments(); } } @@ -1285,6 +1296,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl public bool EngineWasteGasHeatExchanger { get; } + private IList<Tuple<HeatPumpType, HeatPumpMode>> GetHeatPumpPassengerCompartments() + { + if (_manufacturingStages?.Any() != true) + return null; + + return _manufacturingStages?.First()?.Vehicle?.Components?.BusAuxiliaries?.HVACAux + ?.HeatPumpPassengerCompartments; + } + + private T GetHVACBusAuxPropertyValue<T>(string propertyName) { foreach (var manufacturingStage in _manufacturingStages) { @@ -1320,12 +1341,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.Reader.Impl public override bool IsInputDataComplete(VectoSimulationJobType jobType) { - return InputComplete(IsCorrectSystemConfiguration(), nameof(IsCorrectSystemConfiguration)) + return MethodComplete(IsCorrectSystemConfiguration(), nameof(IsCorrectSystemConfiguration)) && InputComplete(AuxHeaterPower, nameof(AuxHeaterPower)) && InputComplete(DoubleGlazing, nameof(DoubleGlazing)) && InputComplete(AdjustableAuxiliaryHeater, nameof(AdjustableAuxiliaryHeater)) && InputComplete(SeparateAirDistributionDucts, nameof(SeparateAirDistributionDucts)) - && InputComplete(RequiredParametersForJobType(jobType), nameof(RequiredParametersForJobType)); + && MethodComplete(RequiredParametersForJobType(jobType), nameof(RequiredParametersForJobType)); } public override string GetInvalidEntry() -- GitLab