From 6e7ffd69c977ca51f1c63dc2a471f41867042cee Mon Sep 17 00:00:00 2001
From: Anna Wellmann <a.wellmann@tu-braunschweig.de>
Date: Mon, 14 Aug 2023 09:51:39 +0000
Subject: [PATCH] Change NeighborDebugWriter to class

---
 src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp  |  2 +-
 ...ebugWriter.hpp => NeighborDebugWriter.cpp} | 16 ++++------------
 .../Output/NeighborDebugWriter.h              | 19 +++++++++++++++++++
 .../Output/NeighborDebugWriterTest.cpp        |  8 ++++++--
 4 files changed, 30 insertions(+), 15 deletions(-)
 rename src/gpu/VirtualFluids_GPU/Output/{NeighborDebugWriter.hpp => NeighborDebugWriter.cpp} (87%)
 create mode 100644 src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.h

diff --git a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp
index eb4e4f7be..38b6b6fa5 100644
--- a/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp
+++ b/src/gpu/VirtualFluids_GPU/LBM/Simulation.cpp
@@ -19,7 +19,7 @@
 #include "Output/AnalysisData.hpp"
 #include "Output/InterfaceDebugWriter.hpp"
 #include "Output/EdgeNodeDebugWriter.hpp"
-#include "Output/NeighborDebugWriter.hpp"
+#include "Output/NeighborDebugWriter.h"
 #include "Output/VeloASCIIWriter.hpp"
 //////////////////////////////////////////////////////////////////////////
 #include "Utilities/Buffer2D.hpp"
diff --git a/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.hpp b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.cpp
similarity index 87%
rename from src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.hpp
rename to src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.cpp
index a05aad821..71ee3eb1c 100644
--- a/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.hpp
+++ b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.cpp
@@ -1,5 +1,4 @@
-#ifndef NEIGHBORDEBUG_HPP
-#define NEIGHBORDEBUG_HPP
+#include "NeighborDebugWriter.h"
 
 #include "LBM/LB.h"
 #include "Logger.h"
@@ -12,10 +11,7 @@
 #include "StringUtilities/StringUtil.h"
 #include "Utilities/FindNeighbors.h"
 
-namespace NeighborDebugWriter
-{
-
-inline void writeNeighborLinkLines(LBMSimulationParameter *parH, int direction, const std::string &name,
+void NeighborDebugWriter::writeNeighborLinkLines(LBMSimulationParameter *parH, int direction, const std::string &name,
                                    WbWriter *writer)
 {
     VF_LOG_INFO("Write node links in direction {}.", direction);
@@ -48,7 +44,7 @@ inline void writeNeighborLinkLines(LBMSimulationParameter *parH, int direction,
     writer->writeLines(name, nodes, cells);
 }
 
-inline void writeNeighborLinkLinesDebug(Parameter *para)
+void NeighborDebugWriter::writeNeighborLinkLinesDebug(Parameter *para)
 {
     for (int level = 0; level <= para->getMaxLevel(); level++) {
         for (size_t direction = vf::lbm::dir::STARTDIR; direction <= vf::lbm::dir::ENDDIR; direction++) {
@@ -57,8 +53,4 @@ inline void writeNeighborLinkLinesDebug(Parameter *para)
             writeNeighborLinkLines(para->getParH(level).get(), (int)direction, fileName, WbWriterVtkXmlBinary::getInstance());
         }
     }
-}
-
-} // namespace NeighborDebugWriter
-
-#endif
+}
\ No newline at end of file
diff --git a/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.h b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.h
new file mode 100644
index 000000000..60ddf24b8
--- /dev/null
+++ b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriter.h
@@ -0,0 +1,19 @@
+#ifndef NEIGHBORDEBUG_HPP
+#define NEIGHBORDEBUG_HPP
+
+#include <string>
+class Parameter;
+struct LBMSimulationParameter;
+class WbWriter;
+
+class NeighborDebugWriter
+{
+public:
+    static void writeNeighborLinkLinesDebug(Parameter *para);
+
+protected:
+    static void writeNeighborLinkLines(LBMSimulationParameter *parH, int direction, const std::string &name,
+                                       WbWriter *writer);
+};
+
+#endif
diff --git a/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriterTest.cpp b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriterTest.cpp
index a19ed3d72..2f17c3fb6 100644
--- a/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriterTest.cpp
+++ b/src/gpu/VirtualFluids_GPU/Output/NeighborDebugWriterTest.cpp
@@ -1,6 +1,7 @@
 #include <gmock/gmock.h>
-#include "NeighborDebugWriter.hpp"
+#include "NeighborDebugWriter.h"
 #include "gpu/VirtualFluids_GPU/Utilities/testUtilitiesGPU.h"
+#include <basics/writer/WbWriterVtkXmlBinary.h>
 
 class WbWriterSpy : public WbWriter
 {
@@ -18,8 +19,11 @@ public:
     std::string getFileExtension() override { return ""; }
 };
 
-class NeighborDebugWriterTest : public testing::Test
+class NeighborDebugWriterTest : public testing::Test, public NeighborDebugWriter
 {
+public:
+    using NeighborDebugWriter::writeNeighborLinkLines;
+
 protected:
     void SetUp() override
     {
-- 
GitLab