Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Forms/PropertyClasses/GrassCoverErosionOutwardsDesignWaterLevelLocationProperties.cs =================================================================== diff -u -r9d8a58b3c03aaa71c5a3e69cfedd69fc7bf7eb70 -r9b83f33bbdd0e5bcd78e60342e5c780599c12c93 --- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Forms/PropertyClasses/GrassCoverErosionOutwardsDesignWaterLevelLocationProperties.cs (.../GrassCoverErosionOutwardsDesignWaterLevelLocationProperties.cs) (revision 9d8a58b3c03aaa71c5a3e69cfedd69fc7bf7eb70) +++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Forms/PropertyClasses/GrassCoverErosionOutwardsDesignWaterLevelLocationProperties.cs (.../GrassCoverErosionOutwardsDesignWaterLevelLocationProperties.cs) (revision 9b83f33bbdd0e5bcd78e60342e5c780599c12c93) @@ -40,13 +40,16 @@ /// public class GrassCoverErosionOutwardsDesignWaterLevelLocationProperties : GrassCoverErosionOutwardsHydraulicBoundaryLocationProperties { + private readonly HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation; + /// /// Creates a new instance of . /// /// The hydraulic boundary location. - /// Thrown when - /// is null. - public GrassCoverErosionOutwardsDesignWaterLevelLocationProperties(HydraulicBoundaryLocation hydraulicBoundaryLocation) + /// The hydraulic boundary location calculation at stake. + /// Thrown when any input parameter is null. + public GrassCoverErosionOutwardsDesignWaterLevelLocationProperties(HydraulicBoundaryLocation hydraulicBoundaryLocation, + HydraulicBoundaryLocationCalculation hydraulicBoundaryLocationCalculation) : base(hydraulicBoundaryLocation, new ConstructionProperties { IdIndex = 1, @@ -56,8 +59,16 @@ StochastsIndex = 12, DurationsIndex = 13, IllustrationPointsIndex = 14 - }) {} + }) + { + if (hydraulicBoundaryLocationCalculation == null) + { + throw new ArgumentNullException(nameof(hydraulicBoundaryLocationCalculation)); + } + this.hydraulicBoundaryLocationCalculation = hydraulicBoundaryLocationCalculation; + } + [PropertyOrder(4)] [TypeConverter(typeof(NoValueRoundedDoubleConverter))] [ResourcesCategory(typeof(RingtoetsCommonFormsResources), nameof(RingtoetsCommonFormsResources.Categories_Result))] @@ -67,7 +78,7 @@ { get { - return data.DesignWaterLevel; + return hydraulicBoundaryLocationCalculation.Output?.Result ?? RoundedDouble.NaN; } } @@ -80,8 +91,7 @@ { get { - HydraulicBoundaryLocationOutput output = data.DesignWaterLevelCalculation.Output; - return output?.TargetProbability ?? double.NaN; + return hydraulicBoundaryLocationCalculation.Output?.TargetProbability ?? double.NaN; } } @@ -94,8 +104,7 @@ { get { - HydraulicBoundaryLocationOutput output = data.DesignWaterLevelCalculation.Output; - return output?.TargetReliability ?? RoundedDouble.NaN; + return hydraulicBoundaryLocationCalculation.Output?.TargetReliability ?? RoundedDouble.NaN; } } @@ -108,8 +117,7 @@ { get { - HydraulicBoundaryLocationOutput output = data.DesignWaterLevelCalculation.Output; - return output?.CalculatedProbability ?? double.NaN; + return hydraulicBoundaryLocationCalculation.Output?.CalculatedProbability ?? double.NaN; } } @@ -122,8 +130,7 @@ { get { - HydraulicBoundaryLocationOutput output = data.DesignWaterLevelCalculation.Output; - return output?.CalculatedReliability ?? RoundedDouble.NaN; + return hydraulicBoundaryLocationCalculation.Output?.CalculatedReliability ?? RoundedDouble.NaN; } } @@ -135,7 +142,7 @@ { get { - CalculationConvergence convergence = data.DesignWaterLevelCalculation.Output?.CalculationConvergence ?? CalculationConvergence.NotCalculated; + CalculationConvergence convergence = hydraulicBoundaryLocationCalculation.Output?.CalculationConvergence ?? CalculationConvergence.NotCalculated; return new EnumDisplayWrapper(convergence).DisplayName; } } @@ -148,21 +155,21 @@ { get { - return data.DesignWaterLevelCalculation.InputParameters.ShouldIllustrationPointsBeCalculated; + return hydraulicBoundaryLocationCalculation.InputParameters.ShouldIllustrationPointsBeCalculated; } set { - data.DesignWaterLevelCalculation.InputParameters.ShouldIllustrationPointsBeCalculated = value; + hydraulicBoundaryLocationCalculation.InputParameters.ShouldIllustrationPointsBeCalculated = value; data.NotifyObservers(); } } protected override GeneralResult GetGeneralResult() { - if (data.DesignWaterLevelCalculation.HasOutput - && data.DesignWaterLevelCalculation.Output.HasGeneralResult) + if (hydraulicBoundaryLocationCalculation.HasOutput + && hydraulicBoundaryLocationCalculation.Output.HasGeneralResult) { - return data.DesignWaterLevelCalculation.Output.GeneralResult; + return hydraulicBoundaryLocationCalculation.Output.GeneralResult; } return null;