From 4f18978f02e079accd0eeaa360eea73742c09485 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@esi-group.com>
Date: Fri, 22 Feb 2019 11:08:07 +0100
Subject: [PATCH] STYLE: pass points, faces instead of meshedSurfRef in
 surfaceFieldValue

- removes a layer of opacity and may help with future restructuring
---
 .../surfaceFieldValue/surfaceFieldValue.C     | 14 ++++++++------
 .../surfaceFieldValue/surfaceFieldValue.H     |  6 ++++--
 .../surfaceFieldValueTemplates.C              | 19 +++++++++++--------
 3 files changed, 23 insertions(+), 16 deletions(-)

diff --git a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.C b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.C
index 65225a544aa..049e3d1b20d 100644
--- a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.C
+++ b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.C
@@ -33,7 +33,6 @@ License
 #include "mergePoints.H"
 #include "indirectPrimitivePatch.H"
 #include "PatchTools.H"
-#include "meshedSurfRef.H"
 #include "addToRunTimeSelectionTable.H"
 
 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@@ -962,6 +961,11 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::read
             )
         );
 
+        if (debug)
+        {
+            surfaceWriterPtr_->verbose() = true;
+        }
+
         if (surfaceWriterPtr_->enabled())
         {
             Info<< "    surfaceFormat = " << formatName << nl;
@@ -1038,8 +1042,6 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::write()
         }
     }
 
-    meshedSurfRef surfToWrite(points, faces);
-
     // Only a few weight types (scalar, vector)
     if (weightFieldName_ != "none")
     {
@@ -1051,7 +1053,7 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::write()
             );
 
             // Process the fields
-            writeAll(Sf, weightField, surfToWrite);
+            writeAll(Sf, weightField, points, faces);
         }
         else if (validField<vector>(weightFieldName_))
         {
@@ -1061,7 +1063,7 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::write()
             );
 
             // Process the fields
-            writeAll(Sf, weightField, surfToWrite);
+            writeAll(Sf, weightField, points, faces);
         }
         else
         {
@@ -1077,7 +1079,7 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::write()
         scalarField weightField;
 
         // Process the fields
-        writeAll(Sf, weightField, surfToWrite);
+        writeAll(Sf, weightField, points, faces);
     }
 
     if (operation_ != opNone && Pstream::master())
diff --git a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.H b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.H
index 7d64f9cc70c..b79fa5a79df 100644
--- a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.H
+++ b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValue.H
@@ -494,7 +494,8 @@ protected:
         (
             const vectorField& Sf,
             const Field<WeightType>& weightField,
-            const meshedSurf& surfToWrite
+            const pointField& points,
+            const faceList& faces
         );
 
         //- Templated helper function to output field values
@@ -504,7 +505,8 @@ protected:
             const word& fieldName,
             const vectorField& Sf,
             const Field<WeightType>& weightField,
-            const meshedSurf& surfToWrite
+            const pointField& points,
+            const faceList& faces
         );
 
 
diff --git a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValueTemplates.C b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValueTemplates.C
index d50bc1dee99..fbb066cc40e 100644
--- a/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValueTemplates.C
+++ b/src/functionObjects/field/fieldValues/surfaceFieldValue/surfaceFieldValueTemplates.C
@@ -334,7 +334,8 @@ Foam::label Foam::functionObjects::fieldValues::surfaceFieldValue::writeAll
 (
     const vectorField& Sf,
     const Field<WeightType>& weightField,
-    const meshedSurf& surfToWrite
+    const pointField& points,
+    const faceList& faces
 )
 {
     label nProcessed = 0;
@@ -343,14 +344,14 @@ Foam::label Foam::functionObjects::fieldValues::surfaceFieldValue::writeAll
     {
         if
         (
-            writeValues<scalar>(fieldName, Sf, weightField, surfToWrite)
-         || writeValues<vector>(fieldName, Sf, weightField, surfToWrite)
+            writeValues<scalar>(fieldName, Sf, weightField, points, faces)
+         || writeValues<vector>(fieldName, Sf, weightField, points, faces)
          || writeValues<sphericalTensor>
             (
-                fieldName, Sf, weightField, surfToWrite
+                fieldName, Sf, weightField, points, faces
             )
-         || writeValues<symmTensor>(fieldName, Sf, weightField, surfToWrite)
-         || writeValues<tensor>(fieldName, Sf, weightField, surfToWrite)
+         || writeValues<symmTensor>(fieldName, Sf, weightField, points, faces)
+         || writeValues<tensor>(fieldName, Sf, weightField, points, faces)
         )
         {
             ++nProcessed;
@@ -374,7 +375,8 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::writeValues
     const word& fieldName,
     const vectorField& Sf,
     const Field<WeightType>& weightField,
-    const meshedSurf& surfToWrite
+    const pointField& points,
+    const faceList& faces
 )
 {
     const bool ok = validField<Type>(fieldName);
@@ -393,7 +395,8 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::writeValues
             {
                 surfaceWriterPtr_->open
                 (
-                    surfToWrite,
+                    points,
+                    faces,
                     (
                         outputDir()
                       / regionTypeNames_[regionType_] + ("_" + regionName_)
-- 
GitLab