Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperOutputFromEngine.cs =================================================================== diff -u -r3522 -r3684 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperOutputFromEngine.cs (.../FillMacroStabilityWrapperOutputFromEngine.cs) (revision 3522) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityCommon/MacroStabilityIo/FillMacroStabilityWrapperOutputFromEngine.cs (.../FillMacroStabilityWrapperOutputFromEngine.cs) (revision 3684) @@ -39,11 +39,22 @@ var kernelOutput = new MacroStability.CSharpWrapper.Output.MacroStabilityOutput(); kernelOutput.ResultType = ConversionHelper.ConvertToMacroStabilityResultType(output.CalculationResult); kernelOutput.StabilityOutput = new StabilityOutput(); + + var outputItem = output.StabilityOutputItems.First(); + kernelOutput.StabilityOutput.ModelOptionType = ConversionHelper.ConvertToModelOptionsOutput(outputItem.StabilityModelType); + switch (kernelOutput.StabilityOutput.ModelOptionType) + { + case StabilityModelOptionType.Bishop: + kernelOutput.PreprocessingOutputBase = new BishopPreprocessingOutput(); + break; + case StabilityModelOptionType.UpliftVan: + kernelOutput.PreprocessingOutputBase = new UpliftVanPreprocessingOutput(); + break; + } + if (kernelOutput.ResultType == CalculationResultType.Succeeded) { - var outputItem = output.StabilityOutputItems.First(); kernelOutput.StabilityOutput.SafetyFactor = outputItem.SafetyFactor; - kernelOutput.StabilityOutput.ModelOptionType = ConversionHelper.ConvertToModelOptionsOutput(outputItem.StabilityModelType); if (kernelOutput.StabilityOutput.ModelOptionType == StabilityModelOptionType.Bishop && outputItem.ActiveCenterPoint != null) { FillBishop(outputItem, kernelOutput); @@ -149,11 +160,9 @@ { var dualSlidingCircleMinimumSafetyCurve = new DualSlidingCircleMinimumSafetyCurve { - ActiveCircleCenter = - new Point2D(outputItem.ActiveCenterPoint.X, outputItem.ActiveCenterPoint.Z), + ActiveCircleCenter = new Point2D(outputItem.ActiveCenterPoint.X, outputItem.ActiveCenterPoint.Z), ActiveCircleRadius = outputItem.ActiveCenterPointRadius, - PassiveCircleCenter = - new Point2D(outputItem.PassiveCenterPoint.X, outputItem.PassiveCenterPoint.Z), + PassiveCircleCenter = new Point2D(outputItem.PassiveCenterPoint.X, outputItem.PassiveCenterPoint.Z), PassiveCircleRadius = outputItem.PassiveCenterPointRadius }; kernelOutput.StabilityOutput.MinimumSafetyCurve = dualSlidingCircleMinimumSafetyCurve; Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs =================================================================== diff -u -r3626 -r3684 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 3626) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 3684) @@ -30,7 +30,6 @@ using Deltares.DamEngine.Data.Geometry; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.Data.Standard.Logging; -using Deltares.DamEngine.TestHelpers; using Deltares.DamEngine.TestHelpers.Factories; using Deltares.MacroStability.CSharpWrapper.Output; using KellermanSoftware.CompareNetObjects; @@ -367,6 +366,7 @@ { // Result 1: succeeded, has a SafetyFactor of ca. 3.856, no messages output.ResultType = CalculationResultType.Succeeded; + output.PreprocessingOutputBase = new UpliftVanPreprocessingOutput(); output.StabilityOutput = new StabilityOutput { SafetyFactor = 3.856, @@ -394,6 +394,7 @@ warningMessage.MessageType = MessageType.Warning; messagesOutput.Add(warningMessage); output.ResultType = CalculationResultType.Succeeded; + output.PreprocessingOutputBase = new UpliftVanPreprocessingOutput(); output.StabilityOutput = new StabilityOutput { SafetyFactor = 1.857, @@ -411,6 +412,7 @@ messagesOutput.Add(errorMessage); output.StabilityOutput = new StabilityOutput(); output.ResultType = CalculationResultType.RunFailed; + output.PreprocessingOutputBase = new BishopPreprocessingOutput(); output.StabilityOutput.SafetyFactor = double.NaN; output.StabilityOutput.Messages = messagesOutput; }