From 044e760549f3f52fce3e8f712c2f5df8c4da2c1d Mon Sep 17 00:00:00 2001
From: Thomas Fischer <thomas.fischer@ufz.de>
Date: Thu, 25 Jan 2018 14:47:53 +0100
Subject: [PATCH] [PL] Save parameters to use it for ST creation.

---
 ProcessLib/SourceTerms/SourceTermBuilder.cpp | 9 ++++++---
 ProcessLib/SourceTerms/SourceTermBuilder.h   | 9 +++++++--
 2 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/ProcessLib/SourceTerms/SourceTermBuilder.cpp b/ProcessLib/SourceTerms/SourceTermBuilder.cpp
index 762ccb1ba82..740b1df6ae9 100644
--- a/ProcessLib/SourceTerms/SourceTermBuilder.cpp
+++ b/ProcessLib/SourceTerms/SourceTermBuilder.cpp
@@ -22,7 +22,8 @@ std::unique_ptr<NodalSourceTerm> SourceTermBuilder::createSourceTerm(
     const SourceTermConfig& config,
     const NumLib::LocalToGlobalIndexMap& dof_table, const MeshLib::Mesh& mesh,
     const int variable_id, const unsigned integration_order,
-    const unsigned shapefunction_order)
+    const unsigned shapefunction_order,
+    std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters)
 {
     //! \ogs_file_param{prj__process_variables__process_variable__source_terms__source_term__type}
     auto const type = config.config.peekConfigParameter<std::string>("type");
@@ -30,7 +31,8 @@ std::unique_ptr<NodalSourceTerm> SourceTermBuilder::createSourceTerm(
     if (type == "Nodal")
     {
         return createNodalSourceTerm(config, dof_table, mesh, variable_id,
-                                     integration_order, shapefunction_order);
+                                     integration_order, shapefunction_order,
+                                     parameters);
     }
 
     OGS_FATAL("Unknown source term type: `%s'.", type.c_str());
@@ -40,7 +42,8 @@ std::unique_ptr<NodalSourceTerm> SourceTermBuilder::createNodalSourceTerm(
     const SourceTermConfig& config,
     const NumLib::LocalToGlobalIndexMap& dof_table, const MeshLib::Mesh& mesh,
     const int variable_id, const unsigned /*integration_order*/,
-    const unsigned /*shapefunction_order*/)
+    const unsigned /*shapefunction_order*/,
+    std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters)
 {
     std::unique_ptr<MeshGeoToolsLib::SearchLength> search_length_algorithm =
         MeshGeoToolsLib::createSearchLengthAlgorithm(config.config, mesh);
diff --git a/ProcessLib/SourceTerms/SourceTermBuilder.h b/ProcessLib/SourceTerms/SourceTermBuilder.h
index f3240cc68fd..ba060dd5340 100644
--- a/ProcessLib/SourceTerms/SourceTermBuilder.h
+++ b/ProcessLib/SourceTerms/SourceTermBuilder.h
@@ -10,6 +10,7 @@
 #pragma once
 
 #include "NodalSourceTerm.h"
+#include "ProcessLib/Parameter/Parameter.h"
 
 namespace GeoLib
 {
@@ -47,14 +48,18 @@ public:
         const SourceTermConfig& config,
         const NumLib::LocalToGlobalIndexMap& dof_table,
         const MeshLib::Mesh& mesh, const int variable_id,
-        const unsigned integration_order, const unsigned shapefunction_order);
+        const unsigned integration_order, const unsigned shapefunction_order,
+        std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const&
+            parameters);
 
 protected:
     virtual std::unique_ptr<NodalSourceTerm> createNodalSourceTerm(
         const SourceTermConfig& config,
         const NumLib::LocalToGlobalIndexMap& dof_table,
         const MeshLib::Mesh& mesh, const int variable_id,
-        const unsigned integration_order, const unsigned shapefunction_order);
+        const unsigned integration_order, const unsigned shapefunction_order,
+        std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const&
+            parameters);
 };
 
 }  // ProcessLib
-- 
GitLab