Index: dam engine/trunk/src/Deltares.DamEngine.Calculators/Dikes Design/DesignCalculator.cs
===================================================================
diff -u -r605 -r623
--- dam engine/trunk/src/Deltares.DamEngine.Calculators/Dikes Design/DesignCalculator.cs (.../DesignCalculator.cs) (revision 605)
+++ dam engine/trunk/src/Deltares.DamEngine.Calculators/Dikes Design/DesignCalculator.cs (.../DesignCalculator.cs) (revision 623)
@@ -1,6 +1,8 @@
-using System.Collections.Generic;
+using System;
+using System.Collections.Generic;
using Deltares.DamEngine.Calculators.KernelWrappers.Common;
using Deltares.DamEngine.Calculators.KernelWrappers.DamPipingBligh;
+using Deltares.DamEngine.Calculators.KernelWrappers.DamPipingSellmeijer4Forces;
using Deltares.DamEngine.Calculators.KernelWrappers.Interfaces;
using Deltares.DamEngine.Data.General;
using Deltares.DamEngine.Data.General.Results;
@@ -20,6 +22,33 @@
///
public List Execute(DamProjectData damProjectData)
{
+ IKernelWrapper kernelWrapper = null;
+ switch (damProjectData.DamProjectCalculationSpecification.CurrentSpecification.FailureMechanismSystemType)
+ {
+ case FailureMechanismSystemType.HorizontalBalance:
+ case FailureMechanismSystemType.StabilityInside:
+ case FailureMechanismSystemType.StabilityOutside:
+ throw new NotImplementedException("Requested kernel not implemented yet");
+ case FailureMechanismSystemType.Piping:
+ switch (damProjectData.DamProjectCalculationSpecification.CurrentSpecification.PipingModelType)
+ {
+ case PipingModelType.SellmeijerVnk:
+ case PipingModelType.Wti2017:
+ throw new NotImplementedException("Requested kernel not implemented yet");
+ case PipingModelType.Bligh:
+ kernelWrapper = new DamPipingBlighKernelWrapper();
+ break;
+ case PipingModelType.Sellmeijer4Forces:
+ kernelWrapper = new DamPipingSellmeijer4ForcesKernelWrapper();
+ break;
+ }
+ break;
+ }
+ if (kernelWrapper == null)
+ {
+ throw new NotImplementedException("Requested kernel not implemented yet");
+ }
+
damProjectData.DesignCalculations = new List();
var calculationMessages = new List();
for (int locationIndex = 0; locationIndex < damProjectData.Dike.Locations.Count; locationIndex++)
@@ -30,7 +59,6 @@
var soiProfileProbability = location.Segment.SoilProfileProbabilities[subSoilScenarioIndex];
for (int designScenarioIndex = 0; designScenarioIndex < location.Scenarios.Count; designScenarioIndex++)
{
- IKernelWrapper kernelWrapper = new DamPipingBlighKernelWrapper();
// Prepare input
var damKernelInput = new DamKernelInput();