From 074bd5ce59133b607ee6a37af38223e3496aa5f5 Mon Sep 17 00:00:00 2001
From: Thomas Fischer <thomas.fischer@ufz.de>
Date: Tue, 4 Apr 2023 09:55:44 +0200
Subject: [PATCH] [PL/Output] Set property output flag for output vars

---
 ProcessLib/Output/Output.cpp | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/ProcessLib/Output/Output.cpp b/ProcessLib/Output/Output.cpp
index 19ec56f654a..d6e057a4068 100644
--- a/ProcessLib/Output/Output.cpp
+++ b/ProcessLib/Output/Output.cpp
@@ -174,6 +174,28 @@ void Output::outputMeshes(
     std::vector<std::reference_wrapper<const MeshLib::Mesh>> const& meshes)
     const
 {
+    if (_output_data_specification.output_variables.empty())
+    {
+        // special case: no output properties specified => output all properties
+        for (auto const& mesh : meshes)
+        {
+            for (auto [name, property] : mesh.get().getProperties())
+            {
+                property->is_for_output = true;
+            }
+        }
+    }
+    else
+    {
+        for (auto const& mesh : meshes)
+        {
+            for (auto [name, property] : mesh.get().getProperties())
+            {
+                property->is_for_output =
+                    _output_data_specification.output_variables.contains(name);
+            }
+        }
+    }
     _output_format->outputMeshes(timestep, t, iteration, meshes,
                                  _output_data_specification.output_variables);
 }
-- 
GitLab