From a374165636175851c19a3b9cc1ea75b3acaa4364 Mon Sep 17 00:00:00 2001
From: Matthias Puchner <github@mpuchner.de>
Date: Wed, 24 Nov 2021 09:26:53 +0100
Subject: [PATCH] use correct class instead of base class

---
 GUI/Model/To/DomainSimulationBuilder.cpp | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/GUI/Model/To/DomainSimulationBuilder.cpp b/GUI/Model/To/DomainSimulationBuilder.cpp
index e2c7f049b03..1151cc8cb91 100644
--- a/GUI/Model/To/DomainSimulationBuilder.cpp
+++ b/GUI/Model/To/DomainSimulationBuilder.cpp
@@ -112,18 +112,13 @@ void addBeamDivergencesToScan(const BeamItem& beam_item, AlphaScan& scan)
         scan.setAngleResolution(*resolution);
 }
 
-void setSimulationOptions(ISimulation* simulation, const SessionItem& item)
+void setSimulationOptions(ISimulation* simulation, const SimulationOptionsItem& optionItem)
 {
-    ASSERT(item.modelType() == SimulationOptionsItem::M_TYPE);
-
-    if (const auto* optionItem = dynamic_cast<const SimulationOptionsItem*>(&item)) {
-        simulation->options().setNumberOfThreads(optionItem->numberOfThreads());
-        if (optionItem->useMonteCarloIntegration())
-            simulation->options().setMonteCarloIntegration(true,
-                                                           optionItem->numberOfMonteCarloPoints());
-        simulation->options().setUseAvgMaterials(optionItem->useAverageMaterials());
-        simulation->options().setIncludeSpecular(optionItem->includeSpecularPeak());
-    }
+    simulation->options().setNumberOfThreads(optionItem.numberOfThreads());
+    if (optionItem.useMonteCarloIntegration())
+        simulation->options().setMonteCarloIntegration(true, optionItem.numberOfMonteCarloPoints());
+    simulation->options().setUseAvgMaterials(optionItem.useAverageMaterials());
+    simulation->options().setIncludeSpecular(optionItem.includeSpecularPeak());
 }
 
 std::unique_ptr<GISASSimulation> createGISASSimulation(std::unique_ptr<MultiLayer> multilayer,
-- 
GitLab