Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs =================================================================== diff -u -r1957c54820f55f8de15e34add4577a78b2e96850 -r9a1a700023ce9d02b5257434c45455f39ddd8bf2 --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision 1957c54820f55f8de15e34add4577a78b2e96850) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision 9a1a700023ce9d02b5257434c45455f39ddd8bf2) @@ -134,9 +134,11 @@ }; } - private static ExceedanceProbabilityCalculationActivity CreateHydraRingExceedenceProbabilityCalculationActivity(HeightStructuresFailureMechanism failureMechanism, - string hlcdDirectory, - HeightStructuresCalculation calculation) + private static ExceedanceProbabilityCalculationActivity CreateHydraRingExceedenceProbabilityCalculationActivity( + string hlcdDirectory, + HeightStructuresCalculation calculation, + HeightStructuresFailureMechanism failureMechanism, + IAssessmentSection assessmentSection) { var hydraulicBoundaryLocationId = (int) calculation.InputParameters.HydraulicBoundaryLocation.Id; var failureMechanismSection = failureMechanism.Sections.First(); // TODO: Obtain dike section based on cross section of structure with reference line @@ -168,17 +170,19 @@ inputParameters.DeviationOfTheWaveDirection, inputParameters.StormDuration.Mean, inputParameters.StormDuration.StandardDeviation), calculation.ClearOutput, - output => { ParseHydraRingOutput(calculation, failureMechanism.ProbabilityAssessmentInput, output); }); + output => { ParseHydraRingOutput(calculation, failureMechanism, assessmentSection, output); }); } private void CalculateAll(HeightStructuresFailureMechanism failureMechanism, IEnumerable calculations, IAssessmentSection assessmentSection) { // TODO: Remove "Where" filter when validation is implemented ActivityProgressDialogRunner.Run(Gui.MainWindow, calculations.Where(calc => calc.InputParameters.HydraulicBoundaryLocation != null) .Select(calc => CreateHydraRingExceedenceProbabilityCalculationActivity( - failureMechanism, Path.GetDirectoryName(assessmentSection.HydraulicBoundaryDatabase.FilePath), - calc)).ToList()); + calc, + failureMechanism, + assessmentSection + )).ToList()); } private static string AllDataAvailable(IAssessmentSection assessmentSection, HeightStructuresFailureMechanism failureMechanism) @@ -202,11 +206,11 @@ return null; } - private static void ParseHydraRingOutput(HeightStructuresCalculation calculation, ProbabilityAssessmentInput probabilityAssessmentInput, ExceedanceProbabilityCalculationOutput output) + private static void ParseHydraRingOutput(HeightStructuresCalculation calculation, HeightStructuresFailureMechanism failureMechanism, IAssessmentSection assessmentSection, ExceedanceProbabilityCalculationOutput output) { if (output != null) { - calculation.Output = ProbabilityAssessmentService.Calculate(probabilityAssessmentInput.Norm, probabilityAssessmentInput.Contribution, probabilityAssessmentInput.N, output.Beta); + calculation.Output = ProbabilityAssessmentService.Calculate(assessmentSection.FailureMechanismContribution.Norm, failureMechanism.ProbabilityAssessmentInput.Contribution, failureMechanism.ProbabilityAssessmentInput.N, output.Beta); calculation.NotifyObservers(); } else @@ -496,9 +500,10 @@ return; } var activity = CreateHydraRingExceedenceProbabilityCalculationActivity( - context.FailureMechanism, Path.GetDirectoryName(context.AssessmentSection.HydraulicBoundaryDatabase.FilePath), - calculation); + calculation, + context.FailureMechanism, + context.AssessmentSection); ActivityProgressDialogRunner.Run(Gui.MainWindow, activity); }