From a51aff95815881641a5f5bbe31fd7990823c93f7 Mon Sep 17 00:00:00 2001
From: Soeren Peters <peters@irmb.tu-bs.de>
Date: Wed, 12 Aug 2020 15:18:55 +0200
Subject: [PATCH] Adapt export statements in the gridgenerator.

---
 CMake/cmake_config_files/ELLADAN.config.cmake |  4 +-
 CMakeLists.txt                                |  2 -
 apps/gpu/LBM/TrafficTest/CMakeLists.txt       |  2 +-
 cpu.cmake                                     |  4 +-
 src/gpu/GridGenerator/CMakeLists.txt          |  2 +-
 .../StreetPointFinder/JunctionReader.h        |  8 +-
 .../StreetPointFinder/SinkReader.h            |  6 +-
 .../StreetPointFinder/SourceReader.h          |  4 +-
 .../StreetPointFinder/StreetPointFinder.h     |  6 +-
 .../GridGenerator/geometries/Arrow/ArrowImp.h | 11 +--
 .../geometries/BoundingBox/BoundingBox.h      |  4 +-
 .../geometries/Conglomerate/Conglomerate.h    |  2 +-
 .../GridGenerator/geometries/Cuboid/Cuboid.h  |  3 +-
 src/gpu/GridGenerator/geometries/Object.h     |  4 +-
 .../GridGenerator/geometries/Sphere/Sphere.h  |  4 +-
 .../geometries/Triangle/Triangle.h            |  4 +-
 .../TriangularMesh/TriangularMesh.cu          |  2 +-
 .../TriangularMesh/TriangularMesh.h           | 26 +++---
 .../TriangularMesh/TriangularMeshStrategy.h   |  9 +-
 .../TriangleNeighborFinder.h                  | 10 +--
 .../triangleRefinement/TriangleRefinement.h   | 20 ++---
 .../GridGenerator/geometries/Vertex/Vertex.h  |  2 +-
 .../VerticalCylinder/VerticalCylinder.h       |  4 +-
 src/gpu/GridGenerator/global.h                |  1 +
 .../BoundaryConditions/BoundaryCondition.cpp  |  4 +-
 .../BoundaryConditions/BoundaryCondition.h    |  4 +-
 src/gpu/GridGenerator/grid/Field.h            |  2 +-
 src/gpu/GridGenerator/grid/Grid.h             |  2 +-
 .../grid/GridBuilder/GridBuilder.h            |  4 +-
 .../grid/GridBuilder/LevelGridBuilder.cpp     | 18 ++--
 .../grid/GridBuilder/LevelGridBuilder.h       | 82 +++++++++----------
 .../grid/GridBuilder/MultipleGridBuilder.cpp  |  4 +-
 .../grid/GridBuilder/MultipleGridBuilder.h    | 44 +++++-----
 src/gpu/GridGenerator/grid/GridFactory.h      |  2 +-
 src/gpu/GridGenerator/grid/GridImp.h          |  2 +-
 src/gpu/GridGenerator/grid/GridInterface.cu   |  2 +-
 src/gpu/GridGenerator/grid/GridInterface.h    | 24 +++---
 .../GridCpuStrategy/GridCpuStrategy.h         |  2 +-
 .../GridGpuStrategy/GridGpuStrategy.h         |  2 +-
 .../grid/GridStrategy/GridStrategy.h          |  2 +-
 .../grid/distributions/Distribution.h         |  2 +-
 .../GridGenerator/grid/partition/Partition.h  |  2 +-
 .../io/GridVTKWriter/GridVTKWriter.h          |  3 +-
 .../io/STLReaderWriter/STLReader.h            |  2 +-
 .../io/STLReaderWriter/STLWriter.h            |  2 +-
 .../SimulationFileNames.h                     |  2 +-
 .../SimulationFileWriter.h                    |  2 +-
 .../VTKWriterWrapper/PolyDataWriterWrapper.h  |  8 +-
 .../UnstructuredGridWrapper.h                 |  2 +-
 .../utilities/cuda/LaunchParameter.cuh        |  6 +-
 src/gpu/GridGenerator/utilities/math/Math.h   |  2 +-
 .../transformator/ArrowTransformator.h        |  2 +-
 .../utilities/transformator/Transformator.h   |  2 +-
 .../transformator/TransformatorImp.h          | 29 +++----
 54 files changed, 211 insertions(+), 199 deletions(-)

diff --git a/CMake/cmake_config_files/ELLADAN.config.cmake b/CMake/cmake_config_files/ELLADAN.config.cmake
index 1a7304ce9..3729898e3 100644
--- a/CMake/cmake_config_files/ELLADAN.config.cmake
+++ b/CMake/cmake_config_files/ELLADAN.config.cmake
@@ -42,4 +42,6 @@ IF(${USE_METIS})
     SET(METIS_DEBUG_LIBRARY "/usr/lib/x86_64-linux-gnu/libmetis.so")
     SET(METIS_RELEASE_LIBRARY "/usr/lib/x86_64-linux-gnu/libmetis.so")
 ENDIF()
-#set(SOURCE_ROOT "/host/Projects/pFluid/source")
\ No newline at end of file
+#set(SOURCE_ROOT "/host/Projects/pFluid/source")
+
+SET(GMOCK_ROOT /usr/src/googletest CACHE PATH "GMOCK ROOT")
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7edb2acb2..6c3a3d33f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,5 +28,3 @@ add_subdirectory(src/basics)
 include (gpu.cmake)
 #endif()
 
-set (APPS_ROOT_CPU "${CMAKE_SOURCE_DIR}/apps/cpu/")
-#include(${APPS_ROOT_CPU}/Applications.cmake)
\ No newline at end of file
diff --git a/apps/gpu/LBM/TrafficTest/CMakeLists.txt b/apps/gpu/LBM/TrafficTest/CMakeLists.txt
index 15efc4350..9503271f8 100644
--- a/apps/gpu/LBM/TrafficTest/CMakeLists.txt
+++ b/apps/gpu/LBM/TrafficTest/CMakeLists.txt
@@ -6,7 +6,7 @@ set(includeDirectories "${CMAKE_SOURCE_DIR}/src"
 
 
 
-vf_add_library(BUILDTYPE binary DEPENDS Traffic)
+vf_add_library(BUILDTYPE binary DEPENDS Traffic basics GridGenerator)
 
 vf_get_library_name(library_name)
 target_include_directories(${library_name} PRIVATE "${CMAKE_SOURCE_DIR}/src/basics")
diff --git a/cpu.cmake b/cpu.cmake
index 98d408952..73ef81464 100644
--- a/cpu.cmake
+++ b/cpu.cmake
@@ -164,5 +164,5 @@ add_subdirectory(3rdParty/MuParser)
 add_subdirectory(src/cpu/VirtualFluidsCore)
 #add_subdirectory(VirtualFluidsBasic)
 
-#set(APPS_ROOT "${SOURCE_ROOT}/cpu/Applications")
-#INCLUDE(${APPS_ROOT}/Applications.cmake)
\ No newline at end of file
+set (APPS_ROOT_CPU "${CMAKE_SOURCE_DIR}/apps/cpu/")
+include(${APPS_ROOT_CPU}/Applications.cmake)
\ No newline at end of file
diff --git a/src/gpu/GridGenerator/CMakeLists.txt b/src/gpu/GridGenerator/CMakeLists.txt
index 9e10f8bf0..7ec3d01d8 100644
--- a/src/gpu/GridGenerator/CMakeLists.txt
+++ b/src/gpu/GridGenerator/CMakeLists.txt
@@ -12,7 +12,7 @@
 #linkOpenMP(${targetName})
 
 
-vf_add_library(BUILDTYPE shared)
+vf_add_library(BUILDTYPE shared DEPENDS basics)
 
 include (${CMAKE_PATH}/3rd/cuda.cmake)
 include (${CMAKE_PATH}/3rd/OpenMP.cmake)
diff --git a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
index 5d59f2d33..7d7d2bbb1 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/JunctionReader.h
@@ -3,6 +3,8 @@
 
 #include <vector>
 
+#include "GridGenerator_export.h"
+
 #include "Core/DataTypes.h"
 #include "Core/Logger/Logger.h"
 
@@ -10,7 +12,7 @@
 
 #include <VirtualFluidsDefinitions.h>
 
-struct VIRTUALFLUIDS_GPU_EXPORT JunctionReaderData
+struct GRIDGENERATOR_EXPORT JunctionReaderData
 {
 	std::vector<uint> inCells;
 	std::vector<uint> outCells;
@@ -21,7 +23,7 @@ struct VIRTUALFLUIDS_GPU_EXPORT JunctionReaderData
 };
 
 
-struct VIRTUALFLUIDS_GPU_EXPORT Neighbors
+struct GRIDGENERATOR_EXPORT Neighbors
 {
 	std::vector<int> cells;
 	std::vector<int> neighbors;
@@ -29,7 +31,7 @@ struct VIRTUALFLUIDS_GPU_EXPORT Neighbors
 
 
 
-struct VIRTUALFLUIDS_GPU_EXPORT JunctionReader
+struct GRIDGENERATOR_EXPORT JunctionReader
 {
 	std::vector<JunctionReaderData> junctions;
 	Neighbors specialNeighbors;
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
index 0e1d851ba..d6f71f4b5 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/SinkReader.h
@@ -3,6 +3,8 @@
 
 #include <vector>
 
+#include "GridGenerator_export.h"
+
 #include "Core/DataTypes.h"
 #include "Core/Logger/Logger.h"
 
@@ -10,13 +12,13 @@
 
 #include <VirtualFluidsDefinitions.h>
 
-struct VIRTUALFLUIDS_GPU_EXPORT SinkReaderData{
+struct GRIDGENERATOR_EXPORT SinkReaderData{
 	uint sinkIndex;
 	float sinkBlockedPossibility;
 	SinkReaderData(uint sinkIndex, float sinkBlockedPossibility);
 };
 
-struct VIRTUALFLUIDS_GPU_EXPORT SinkReader
+struct GRIDGENERATOR_EXPORT SinkReader
 {
 	std::vector<SinkReaderData> sinks;
 	StreetPointFinder* streetPointFinder;
diff --git a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
index 79aa6681d..4ada88fb8 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/SourceReader.h
@@ -10,13 +10,13 @@
 
 #include <VirtualFluidsDefinitions.h>
 
-struct VIRTUALFLUIDS_GPU_EXPORT SourceReaderData {
+struct GRIDGENERATOR_EXPORT SourceReaderData {
 	unsigned int sourceIndex;
 	float sourcePossibility;
 	SourceReaderData(unsigned int sourceIndex, float sourcePossibility);
 };
 
-struct VIRTUALFLUIDS_GPU_EXPORT SourceReader
+struct GRIDGENERATOR_EXPORT SourceReader
 {
 	std::vector<SourceReaderData> sources;
 	StreetPointFinder* streetPointFinder;
diff --git a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
index 82a169f60..905ac7b2f 100644
--- a/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
+++ b/src/gpu/GridGenerator/StreetPointFinder/StreetPointFinder.h
@@ -4,6 +4,8 @@
 #include <vector>
 #include <string>
 
+#include "GridGenerator_export.h"
+
 #include "Core/PointerDefinitions.h"
 #include "Core/DataTypes.h"
 
@@ -11,7 +13,7 @@
 
 class Grid;
 
-struct VIRTUALFLUIDS_GPU_EXPORT Street
+struct GRIDGENERATOR_EXPORT Street
 {
     // The start and end coordinates are stored for cell centers!
     //
@@ -39,7 +41,7 @@ struct VIRTUALFLUIDS_GPU_EXPORT Street
     void findIndicesLB( SPtr<Grid> grid, real initialSearchHeight);
 };
 
-struct VIRTUALFLUIDS_GPU_EXPORT StreetPointFinder
+struct GRIDGENERATOR_EXPORT StreetPointFinder
 {
     std::vector<Street> streets;
 
diff --git a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
index dccb9b9e2..195223d91 100644
--- a/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
+++ b/src/gpu/GridGenerator/geometries/Arrow/ArrowImp.h
@@ -4,6 +4,7 @@
 #include <memory>
 
 #include "global.h"
+#include "GridGenerator_export.h"
 
 #include "Arrow.h"
 
@@ -12,13 +13,13 @@ struct Vertex;
 class ArrowImp : public Arrow 
 {
 public:
-	VIRTUALFLUIDS_GPU_EXPORT virtual ~ArrowImp();
-	VIRTUALFLUIDS_GPU_EXPORT static std::shared_ptr<Arrow> make(const Vertex &start, const Vertex &end);
+	GRIDGENERATOR_EXPORT virtual ~ArrowImp();
+	GRIDGENERATOR_EXPORT static std::shared_ptr<Arrow> make(const Vertex &start, const Vertex &end);
 
-	VIRTUALFLUIDS_GPU_EXPORT std::shared_ptr<Vertex> getStart() const;
-	VIRTUALFLUIDS_GPU_EXPORT std::shared_ptr<Vertex> getEnd() const;
+	GRIDGENERATOR_EXPORT std::shared_ptr<Vertex> getStart() const;
+	GRIDGENERATOR_EXPORT std::shared_ptr<Vertex> getEnd() const;
 
-	VIRTUALFLUIDS_GPU_EXPORT void print() const;
+	GRIDGENERATOR_EXPORT void print() const;
 private:
 	ArrowImp(const Vertex &start, const Vertex &end);
 
diff --git a/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.h b/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.h
index 3c5946ae4..e1d4f24e4 100644
--- a/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.h
+++ b/src/gpu/GridGenerator/geometries/BoundingBox/BoundingBox.h
@@ -3,14 +3,14 @@
 
 #include <vector>
 #include <cuda_runtime.h>
-
+#include "GridGenerator_export.h"
 #include "global.h"
 
 struct Vertex;
 struct Triangle;
 
 
-class VIRTUALFLUIDS_GPU_EXPORT BoundingBox
+class GRIDGENERATOR_EXPORT BoundingBox
 {
 public:
 	real minX;
diff --git a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
index 77512ba3e..cca1a85f5 100644
--- a/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
+++ b/src/gpu/GridGenerator/geometries/Conglomerate/Conglomerate.h
@@ -13,7 +13,7 @@
 
 #define MAX_NUMBER_OF_OBJECTS 20
 
-class VIRTUALFLUIDS_GPU_EXPORT Conglomerate : public Object
+class GRIDGENERATOR_EXPORT Conglomerate : public Object
 {
 public:              
     HOSTDEVICE Conglomerate();
diff --git a/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.h b/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.h
index 5d2879ea6..46202f07b 100644
--- a/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.h
+++ b/src/gpu/GridGenerator/geometries/Cuboid/Cuboid.h
@@ -8,10 +8,11 @@
 #define CUBOID_H
 
 #include "global.h"
+#include "GridGenerator_export.h"
 
 #include "geometries/Object.h"
 
-class VIRTUALFLUIDS_GPU_EXPORT Cuboid : public Object
+class GRIDGENERATOR_EXPORT Cuboid : public Object
 {
 public:              
     HOSTDEVICE Cuboid(const double& minX1, const double& minX2, const double& minX3, const double& maxX1,const double& maxX2, const double& maxX3);
diff --git a/src/gpu/GridGenerator/geometries/Object.h b/src/gpu/GridGenerator/geometries/Object.h
index 38fd27fe6..3635a24d4 100644
--- a/src/gpu/GridGenerator/geometries/Object.h
+++ b/src/gpu/GridGenerator/geometries/Object.h
@@ -6,7 +6,7 @@
 //
 #ifndef OBJECT_H
 #define OBJECT_H
-
+#include "GridGenerator_export.h"
 #include <VirtualFluidsDefinitions.h>
 #include "grid/Cell.h"
 #include "global.h"
@@ -14,7 +14,7 @@
 class GridImp;
 struct Vertex;
 
-class VIRTUALFLUIDS_GPU_EXPORT Object
+class GRIDGENERATOR_EXPORT Object
 {
 public:
     HOSTDEVICE virtual ~Object() {}
diff --git a/src/gpu/GridGenerator/geometries/Sphere/Sphere.h b/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
index 865da7d3b..48a3cfb67 100644
--- a/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
+++ b/src/gpu/GridGenerator/geometries/Sphere/Sphere.h
@@ -8,10 +8,10 @@
 #define SPHERE_H
 
 #include "global.h"
-
+#include "GridGenerator_export.h"
 #include "geometries/Object.h"
 
-class VIRTUALFLUIDS_GPU_EXPORT Sphere : public Object
+class GRIDGENERATOR_EXPORT Sphere : public Object
 {
 public:
     HOSTDEVICE Sphere(const double& centerX, const double& centerY, const double& centerZ, const double& radius);
diff --git a/src/gpu/GridGenerator/geometries/Triangle/Triangle.h b/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
index ee16b2f17..9c5a33895 100644
--- a/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
+++ b/src/gpu/GridGenerator/geometries/Triangle/Triangle.h
@@ -4,12 +4,12 @@
 #include <memory>
 
 #include "global.h"
-
+#include "GridGenerator_export.h"
 #include "geometries/Vertex/Vertex.h"
 
 class TriangleMemento;
 
-struct VIRTUALFLUIDS_GPU_EXPORT Triangle
+struct GRIDGENERATOR_EXPORT Triangle
 {
     Vertex v1, v2, v3, normal;
     real alphaAngles[3];
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
index 66e213eb0..e351b69fc 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.cu
@@ -119,7 +119,7 @@ HOSTDEVICE GbTriFaceMesh3D* TriangularMesh::getGbTriFaceMesh3D() const
     return this->VF_GbTriFaceMesh3D.get();
 }
 
-CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT void TriangularMesh::generateGbTriFaceMesh3D()
+CUDA_HOST GRIDGENERATOR_EXPORT void TriangularMesh::generateGbTriFaceMesh3D()
 {
     if( this->VF_GbTriFaceMesh3D ) return;
 
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
index a67ca01cb..fcb937f55 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMesh.h
@@ -6,7 +6,7 @@
 #include <vector>
 #include <string>
 #include <memory>
-
+#include "GridGenerator_export.h"
 #include "global.h"
 
 #include "geometries/Triangle/Triangle.h"
@@ -24,16 +24,16 @@ class TriangularMesh : public Object
 {
 public:
 
-    VIRTUALFLUIDS_GPU_EXPORT static TriangularMesh* make(const std::string& fileName, const std::vector<uint> ignorePatches = std::vector<uint>());
-	VIRTUALFLUIDS_GPU_EXPORT TriangularMesh();
-    VIRTUALFLUIDS_GPU_EXPORT TriangularMesh(const std::string& inputPath, const std::vector<uint> ignorePatches = std::vector<uint>());
-	VIRTUALFLUIDS_GPU_EXPORT TriangularMesh(const std::string& inputPath, const BoundingBox &box);
-	HOSTDEVICE VIRTUALFLUIDS_GPU_EXPORT ~TriangularMesh();
+    GRIDGENERATOR_EXPORT static TriangularMesh* make(const std::string& fileName, const std::vector<uint> ignorePatches = std::vector<uint>());
+	GRIDGENERATOR_EXPORT TriangularMesh();
+    GRIDGENERATOR_EXPORT TriangularMesh(const std::string& inputPath, const std::vector<uint> ignorePatches = std::vector<uint>());
+	GRIDGENERATOR_EXPORT TriangularMesh(const std::string& inputPath, const BoundingBox &box);
+	HOSTDEVICE GRIDGENERATOR_EXPORT ~TriangularMesh();
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfTriangles() const;
+    GRIDGENERATOR_EXPORT uint getNumberOfTriangles() const;
 
-	VIRTUALFLUIDS_GPU_EXPORT void setTriangles(std::vector<Triangle> triangles);
-	VIRTUALFLUIDS_GPU_EXPORT void setMinMax(BoundingBox minmax);
+	GRIDGENERATOR_EXPORT void setTriangles(std::vector<Triangle> triangles);
+	GRIDGENERATOR_EXPORT void setMinMax(BoundingBox minmax);
 
 	std::vector<Triangle> triangleVec;
 	Triangle *triangles;
@@ -42,13 +42,13 @@ public:
 
     SPtr<GbTriFaceMesh3D> VF_GbTriFaceMesh3D;
 
-    CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT bool operator==(const TriangularMesh &geometry) const;
+    CUDA_HOST GRIDGENERATOR_EXPORT bool operator==(const TriangularMesh &geometry) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT void findNeighbors();
+    GRIDGENERATOR_EXPORT void findNeighbors();
 
-    HOSTDEVICE VIRTUALFLUIDS_GPU_EXPORT GbTriFaceMesh3D* getGbTriFaceMesh3D() const;
+    HOSTDEVICE GRIDGENERATOR_EXPORT GbTriFaceMesh3D* getGbTriFaceMesh3D() const;
 
-    CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT void generateGbTriFaceMesh3D();
+    CUDA_HOST GRIDGENERATOR_EXPORT void generateGbTriFaceMesh3D();
 
 private:
 	
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
index db6ba97e0..98d852962 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
@@ -2,12 +2,13 @@
 #define TriangularMeshStrategy_H
 
 #include "global.h"
+#include "GridGenerator_export.h"
 
 class GridImp;
 class TriangularMesh;
 struct Triangle;
 
-class VIRTUALFLUIDS_GPU_EXPORT TriangularMeshDiscretizationStrategy
+class GRIDGENERATOR_EXPORT TriangularMeshDiscretizationStrategy
 {
 public:
     TriangularMeshDiscretizationStrategy() {}
@@ -26,7 +27,7 @@ private:
 
 
 
-class VIRTUALFLUIDS_GPU_EXPORT PointInObjectDiscretizationStrategy : public TriangularMeshDiscretizationStrategy
+class GRIDGENERATOR_EXPORT PointInObjectDiscretizationStrategy : public TriangularMeshDiscretizationStrategy
 {
 public:
     PointInObjectDiscretizationStrategy() {}
@@ -35,7 +36,7 @@ public:
     virtual void doDiscretize(TriangularMesh* triangularMesh, GridImp* grid, char InnerType, char OuterType);
 };
 
-class VIRTUALFLUIDS_GPU_EXPORT RayCastingDiscretizationStrategy : public TriangularMeshDiscretizationStrategy
+class GRIDGENERATOR_EXPORT RayCastingDiscretizationStrategy : public TriangularMeshDiscretizationStrategy
 {
 public:
     RayCastingDiscretizationStrategy() {}
@@ -44,7 +45,7 @@ public:
     virtual void doDiscretize(TriangularMesh* triangularMesh, GridImp* grid, char InnerType, char OuterType);
 };
 
-class VIRTUALFLUIDS_GPU_EXPORT PointUnderTriangleStrategy : public TriangularMeshDiscretizationStrategy
+class GRIDGENERATOR_EXPORT PointUnderTriangleStrategy : public TriangularMeshDiscretizationStrategy
 {
 public:
     PointUnderTriangleStrategy() {}
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
index f58306292..be0ebc5d0 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleNeighborFinder/TriangleNeighborFinder.h
@@ -2,7 +2,7 @@
 #define TriangleNeighborFinder_h
 
 #include "GridGenerator/global.h"
-
+#include "GridGenerator_export.h"
 #include <vector>
 
 struct IDS {
@@ -22,14 +22,14 @@ struct IntegerPtr2D {
 class TriangleNeighborFinder
 {
 public:
-    VIRTUALFLUIDS_GPU_EXPORT TriangleNeighborFinder(Triangle *triangles, int size);
-    VIRTUALFLUIDS_GPU_EXPORT ~TriangleNeighborFinder();
+    GRIDGENERATOR_EXPORT TriangleNeighborFinder(Triangle *triangles, int size);
+    GRIDGENERATOR_EXPORT ~TriangleNeighborFinder();
     
     std::vector<int> getTriangleIDsWithCommonVertex(int vertexID) const;
     std::vector< std::vector<Triangle> > getTrianglesPerVertex() const;
 
-    void VIRTUALFLUIDS_GPU_EXPORT fillWithNeighborIndices(IntegerPtr2D *indices, Triangle *triangles);
-	void VIRTUALFLUIDS_GPU_EXPORT fillWithNeighborAngles(TriangularMesh *geom) const;
+    void GRIDGENERATOR_EXPORT fillWithNeighborIndices(IntegerPtr2D *indices, Triangle *triangles);
+	void GRIDGENERATOR_EXPORT fillWithNeighborAngles(TriangularMesh *geom) const;
 
     void printSortedToTriangles() const;
     void printSortedInSpace() const;
diff --git a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
index 911e2a91d..2cd5045a1 100644
--- a/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
+++ b/src/gpu/GridGenerator/geometries/TriangularMesh/triangleRefinement/TriangleRefinement.h
@@ -14,17 +14,17 @@ struct IntegerPtr2D;
 class  TriangleRefinement
 {
 public:
-    VIRTUALFLUIDS_GPU_EXPORT TriangleRefinement(std::vector<Triangle> *triangles);
-    VIRTUALFLUIDS_GPU_EXPORT ~TriangleRefinement();
+    GRIDGENERATOR_EXPORT TriangleRefinement(std::vector<Triangle> *triangles);
+    GRIDGENERATOR_EXPORT ~TriangleRefinement();
 
-    void VIRTUALFLUIDS_GPU_EXPORT refine(int iTriangle);
-    static void VIRTUALFLUIDS_GPU_EXPORT refine(Triangle t, Triangle &firstNewTriangle, Triangle &secondNewTriangle);
+    void GRIDGENERATOR_EXPORT refine(int iTriangle);
+    static void GRIDGENERATOR_EXPORT refine(Triangle t, Triangle &firstNewTriangle, Triangle &secondNewTriangle);
     
-    void VIRTUALFLUIDS_GPU_EXPORT refineUntilMinDistance(double d_min);
-    void VIRTUALFLUIDS_GPU_EXPORT refineUntilcountTriangle(int countTri);
-    void VIRTUALFLUIDS_GPU_EXPORT redoubleTriangles();
+    void GRIDGENERATOR_EXPORT refineUntilMinDistance(double d_min);
+    void GRIDGENERATOR_EXPORT refineUntilcountTriangle(int countTri);
+    void GRIDGENERATOR_EXPORT redoubleTriangles();
 
-    static VIRTUALFLUIDS_GPU_EXPORT Vertex getHalfVertex(const Vertex &v, const Vertex &w);
+    static GRIDGENERATOR_EXPORT Vertex getHalfVertex(const Vertex &v, const Vertex &w);
 
 private:
     std::vector<Triangle> *triangles;
@@ -39,8 +39,8 @@ private:
     int findCommonEdgeFromTriangles(int indexNeighbor, int iTriangle);
 
 public:
-    static int VIRTUALFLUIDS_GPU_EXPORT getEdgeWithLongestDistance(Triangle &t);
-    static real VIRTUALFLUIDS_GPU_EXPORT getLongestEdgeDistance(Triangle &t);
+    static int GRIDGENERATOR_EXPORT getEdgeWithLongestDistance(Triangle &t);
+    static real GRIDGENERATOR_EXPORT getLongestEdgeDistance(Triangle &t);
 };
 
 
diff --git a/src/gpu/GridGenerator/geometries/Vertex/Vertex.h b/src/gpu/GridGenerator/geometries/Vertex/Vertex.h
index 23b47311a..65710b870 100644
--- a/src/gpu/GridGenerator/geometries/Vertex/Vertex.h
+++ b/src/gpu/GridGenerator/geometries/Vertex/Vertex.h
@@ -10,7 +10,7 @@
 
 class VertexMemento;
 
-struct VIRTUALFLUIDS_GPU_EXPORT Vertex
+struct GRIDGENERATOR_EXPORT Vertex
 {
 public:
     real x, y, z;
diff --git a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
index 6d004909e..e1ee6fc3d 100644
--- a/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
+++ b/src/gpu/GridGenerator/geometries/VerticalCylinder/VerticalCylinder.h
@@ -8,10 +8,10 @@
 #define VERTICAL_CYLINDER_H
 
 #include "global.h"
-
+#include "GridGenerator_export.h"
 #include "geometries/Object.h"
 
-class VIRTUALFLUIDS_GPU_EXPORT VerticalCylinder : public Object
+class GRIDGENERATOR_EXPORT VerticalCylinder : public Object
 {
 public:
     HOSTDEVICE VerticalCylinder(const double& centerX, const double& centerY, const double& centerZ, const double& radius, const double& height);
diff --git a/src/gpu/GridGenerator/global.h b/src/gpu/GridGenerator/global.h
index b6c93da2c..87e198b69 100644
--- a/src/gpu/GridGenerator/global.h
+++ b/src/gpu/GridGenerator/global.h
@@ -8,6 +8,7 @@
 #define MASTERRANK 0
 
 #include "VirtualFluidsDefinitions.h"
+#include "GridGenerator_export.h"
 
 #include "Core/PointerDefinitions.h"
 #include "Core/DataTypes.h"
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
index 6ddc6b0e1..fb60958c6 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.cpp
@@ -1,7 +1,7 @@
 #include "BoundaryCondition.h"
 
 #include <cmath>
-
+#include "GridGenerator_export.h"
 #include "grid/BoundaryConditions/Side.h"
 #include "grid/Grid.h"
 
@@ -10,7 +10,7 @@ bool BoundaryCondition::isSide( SideType side ) const
     return this->side->whoAmI() == side;
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void VelocityBoundaryCondition::setVelocityProfile(SPtr<Grid> grid, std::function<void(real, real, real, real&, real&, real&)> velocityProfile)
+GRIDGENERATOR_EXPORT void VelocityBoundaryCondition::setVelocityProfile(SPtr<Grid> grid, std::function<void(real, real, real, real&, real&, real&)> velocityProfile)
 {
     for( uint index = 0; index < this->indices.size(); index++ ){
 
diff --git a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
index 9765a24d2..3b58b14bf 100644
--- a/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
+++ b/src/gpu/GridGenerator/grid/BoundaryConditions/BoundaryCondition.h
@@ -96,7 +96,7 @@ public:
     real getVy(uint index) { return this->vyList[index]; }
     real getVz(uint index) { return this->vzList[index]; }
     
-    VIRTUALFLUIDS_GPU_EXPORT void setVelocityProfile( SPtr<Grid> grid, std::function<void(real,real,real,real&,real&,real&)> velocityProfile );
+    GRIDGENERATOR_EXPORT void setVelocityProfile( SPtr<Grid> grid, std::function<void(real,real,real,real&,real&,real&)> velocityProfile );
 };
 
 //////////////////////////////////////////////////////////////////////////
@@ -129,7 +129,7 @@ public:
         }
     }
 
-    VIRTUALFLUIDS_GPU_EXPORT void setTangentialVelocityForPatch( SPtr<Grid> grid, uint patch,
+    GRIDGENERATOR_EXPORT void setTangentialVelocityForPatch( SPtr<Grid> grid, uint patch,
                                                   real p1x, real p1y, real p1z, 
                                                   real p2x, real p2y, real p2z, 
                                                   real v, real r );
diff --git a/src/gpu/GridGenerator/grid/Field.h b/src/gpu/GridGenerator/grid/Field.h
index 620e6780f..f79797afa 100644
--- a/src/gpu/GridGenerator/grid/Field.h
+++ b/src/gpu/GridGenerator/grid/Field.h
@@ -6,7 +6,7 @@
 struct Vertex;
 class GridStrategy;
 
-class VIRTUALFLUIDS_GPU_EXPORT Field : public enableSharedFromThis<Field>
+class GRIDGENERATOR_EXPORT Field : public enableSharedFromThis<Field>
 {
 public:
     CUDA_HOST Field(SPtr<GridStrategy> gridStrategy, uint size);
diff --git a/src/gpu/GridGenerator/grid/Grid.h b/src/gpu/GridGenerator/grid/Grid.h
index 21fdeaa65..e4bbfdecb 100644
--- a/src/gpu/GridGenerator/grid/Grid.h
+++ b/src/gpu/GridGenerator/grid/Grid.h
@@ -17,7 +17,7 @@ class GridInterface;
 class Object;
 class BoundingBox;
 
-class VIRTUALFLUIDS_GPU_EXPORT Grid
+class GRIDGENERATOR_EXPORT Grid
 {
 public:
     HOSTDEVICE virtual ~Grid() {}
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
index 7550cb582..8136bd38d 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/GridBuilder.h
@@ -39,9 +39,9 @@ public:
         CPU, GPU
     };
 
-    virtual VIRTUALFLUIDS_GPU_EXPORT ~GridBuilder() {}
+    virtual GRIDGENERATOR_EXPORT ~GridBuilder() {}
     virtual void getGridInformations(std::vector<int>& gridX, std::vector<int>& gridY, std::vector<int>& gridZ, std::vector<int>& distX, std::vector<int>& distY, std::vector<int>& distZ) = 0;
-    virtual VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfGridLevels() const = 0;
+    virtual GRIDGENERATOR_EXPORT uint getNumberOfGridLevels() const = 0;
 
 
     virtual void writeArrows(std::string fileName) const = 0;
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
index dfb06790d..8d2025d4f 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.cpp
@@ -126,18 +126,18 @@ void LevelGridBuilder::setNoSlipBoundaryCondition(SideType sideType)
     }
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void LevelGridBuilder::setEnableFixRefinementIntoTheWall(bool enableFixRefinementIntoTheWall)
+GRIDGENERATOR_EXPORT void LevelGridBuilder::setEnableFixRefinementIntoTheWall(bool enableFixRefinementIntoTheWall)
 {
     for( uint level = 0; level < this->grids.size(); level++ )
         grids[level]->setEnableFixRefinementIntoTheWall( enableFixRefinementIntoTheWall );
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void LevelGridBuilder::setCommunicationProcess(int direction, uint process)
+GRIDGENERATOR_EXPORT void LevelGridBuilder::setCommunicationProcess(int direction, uint process)
 {
     this->communicationProcesses[direction] = process;
 }
 
-VIRTUALFLUIDS_GPU_EXPORT uint LevelGridBuilder::getCommunicationProcess(int direction)
+GRIDGENERATOR_EXPORT uint LevelGridBuilder::getCommunicationProcess(int direction)
 {
     return this->communicationProcesses[direction];
 }
@@ -228,17 +228,17 @@ void LevelGridBuilder::getOffsetCF(real * xOffCF, real * yOffCF, real * zOffCF,
     }
 }
 
-VIRTUALFLUIDS_GPU_EXPORT uint LevelGridBuilder::getNumberOfSendIndices(int direction, uint level)
+GRIDGENERATOR_EXPORT uint LevelGridBuilder::getNumberOfSendIndices(int direction, uint level)
 {
     return this->grids[level]->getNumberOfSendNodes(direction);
 }
 
-VIRTUALFLUIDS_GPU_EXPORT uint LevelGridBuilder::getNumberOfReceiveIndices(int direction, uint level)
+GRIDGENERATOR_EXPORT uint LevelGridBuilder::getNumberOfReceiveIndices(int direction, uint level)
 {
     return this->grids[level]->getNumberOfReceiveNodes(direction);
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void LevelGridBuilder::getSendIndices(int * sendIndices, int direction, int level)
+GRIDGENERATOR_EXPORT void LevelGridBuilder::getSendIndices(int * sendIndices, int direction, int level)
 {
     SPtr<Grid> grid = this->grids[level];
     for( uint i = 0; i < getNumberOfSendIndices(direction, level); i++ )
@@ -247,7 +247,7 @@ VIRTUALFLUIDS_GPU_EXPORT void LevelGridBuilder::getSendIndices(int * sendIndices
     }
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void LevelGridBuilder::getReceiveIndices(int * receiveIndices, int direction, int level)
+GRIDGENERATOR_EXPORT void LevelGridBuilder::getReceiveIndices(int * receiveIndices, int direction, int level)
 {
     SPtr<Grid> grid = this->grids[level];
     for( uint i = 0; i < getNumberOfReceiveIndices(direction, level); i++ )
@@ -469,7 +469,7 @@ void LevelGridBuilder::writeArrows(std::string fileName) const
     QLineWriter::writeArrows(fileName, boundaryConditions[getNumberOfGridLevels() - 1]->geometryBoundaryCondition, grids[getNumberOfGridLevels() - 1]);
 }
 
-VIRTUALFLUIDS_GPU_EXPORT SPtr<BoundaryCondition> LevelGridBuilder::getBoundaryCondition(SideType side, uint level) const
+GRIDGENERATOR_EXPORT SPtr<BoundaryCondition> LevelGridBuilder::getBoundaryCondition(SideType side, uint level) const
 {
     for( auto bc : this->boundaryConditions[level]->pressureBoundaryConditions )
         if( bc->isSide(side) )
@@ -487,7 +487,7 @@ VIRTUALFLUIDS_GPU_EXPORT SPtr<BoundaryCondition> LevelGridBuilder::getBoundaryCo
     return nullptr;
 }
 
-VIRTUALFLUIDS_GPU_EXPORT SPtr<GeometryBoundaryCondition> LevelGridBuilder::getGeometryBoundaryCondition(uint level) const
+GRIDGENERATOR_EXPORT SPtr<GeometryBoundaryCondition> LevelGridBuilder::getGeometryBoundaryCondition(uint level) const
 {
     return this->boundaryConditions[level]->geometryBoundaryCondition;
 }
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
index 51a8830a6..252debf9b 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/LevelGridBuilder.h
@@ -32,57 +32,57 @@ enum class SideType;
 class LevelGridBuilder : public GridBuilder
 {
 protected:
-    VIRTUALFLUIDS_GPU_EXPORT LevelGridBuilder(Device device, const std::string& d3qxx);
+    GRIDGENERATOR_EXPORT LevelGridBuilder(Device device, const std::string& d3qxx);
 
 public:
-    VIRTUALFLUIDS_GPU_EXPORT static std::shared_ptr<LevelGridBuilder> makeShared(Device device, const std::string& d3qxx);
+    GRIDGENERATOR_EXPORT static std::shared_ptr<LevelGridBuilder> makeShared(Device device, const std::string& d3qxx);
 
-    VIRTUALFLUIDS_GPU_EXPORT SPtr<Grid> getGrid(uint level) override;
+    GRIDGENERATOR_EXPORT SPtr<Grid> getGrid(uint level) override;
 
-    VIRTUALFLUIDS_GPU_EXPORT void copyDataFromGpu();
-    VIRTUALFLUIDS_GPU_EXPORT virtual ~LevelGridBuilder();
+    GRIDGENERATOR_EXPORT void copyDataFromGpu();
+    GRIDGENERATOR_EXPORT virtual ~LevelGridBuilder();
 
-    VIRTUALFLUIDS_GPU_EXPORT void setVelocityBoundaryCondition(SideType sideType, real vx, real vy, real vz);
-    VIRTUALFLUIDS_GPU_EXPORT void setPressureBoundaryCondition(SideType sideType, real rho);
-    VIRTUALFLUIDS_GPU_EXPORT void setPeriodicBoundaryCondition(bool periodic_X, bool periodic_Y, bool periodic_Z);
-    VIRTUALFLUIDS_GPU_EXPORT void setNoSlipBoundaryCondition(SideType sideType);
+    GRIDGENERATOR_EXPORT void setVelocityBoundaryCondition(SideType sideType, real vx, real vy, real vz);
+    GRIDGENERATOR_EXPORT void setPressureBoundaryCondition(SideType sideType, real rho);
+    GRIDGENERATOR_EXPORT void setPeriodicBoundaryCondition(bool periodic_X, bool periodic_Y, bool periodic_Z);
+    GRIDGENERATOR_EXPORT void setNoSlipBoundaryCondition(SideType sideType);
 
-    VIRTUALFLUIDS_GPU_EXPORT void setEnableFixRefinementIntoTheWall( bool enableFixRefinementIntoTheWall );
+    GRIDGENERATOR_EXPORT void setEnableFixRefinementIntoTheWall( bool enableFixRefinementIntoTheWall );
 
-    VIRTUALFLUIDS_GPU_EXPORT void setCommunicationProcess(int direction, uint process);
+    GRIDGENERATOR_EXPORT void setCommunicationProcess(int direction, uint process);
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getCommunicationProcess(int direction) override;
+    GRIDGENERATOR_EXPORT uint getCommunicationProcess(int direction) override;
 
-    VIRTUALFLUIDS_GPU_EXPORT virtual std::shared_ptr<Grid> getGrid(int level, int box);
+    GRIDGENERATOR_EXPORT virtual std::shared_ptr<Grid> getGrid(int level, int box);
 
 
-    VIRTUALFLUIDS_GPU_EXPORT virtual unsigned int getNumberOfNodes(unsigned int level) const;
+    GRIDGENERATOR_EXPORT virtual unsigned int getNumberOfNodes(unsigned int level) const;
 
 
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getNodeValues(real *xCoords, real *yCoords, real *zCoords,
+    GRIDGENERATOR_EXPORT virtual void getNodeValues(real *xCoords, real *yCoords, real *zCoords,
                                          uint *neighborX, uint *neighborY, uint *neighborZ, uint *neighborNegative, 
                                          uint *geo, const int level) const override;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getDimensions(int &nx, int &ny, int &nz, const int level) const;
+    GRIDGENERATOR_EXPORT virtual void getDimensions(int &nx, int &ny, int &nz, const int level) const;
 
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getVelocitySize(int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getVelocityValues(real* vx, real* vy, real* vz, int* indices, int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getVelocityQs(real* qs[27], int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT uint getPressureSize(int level) const override;
-    VIRTUALFLUIDS_GPU_EXPORT void getPressureValues(real* rho, int* indices, int* neighborIndices, int level) const override;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getPressureQs(real* qs[27], int level) const;
+    GRIDGENERATOR_EXPORT uint getVelocitySize(int level) const;
+    GRIDGENERATOR_EXPORT virtual void getVelocityValues(real* vx, real* vy, real* vz, int* indices, int level) const;
+    GRIDGENERATOR_EXPORT virtual void getVelocityQs(real* qs[27], int level) const;
+    GRIDGENERATOR_EXPORT uint getPressureSize(int level) const override;
+    GRIDGENERATOR_EXPORT void getPressureValues(real* rho, int* indices, int* neighborIndices, int level) const override;
+    GRIDGENERATOR_EXPORT virtual void getPressureQs(real* qs[27], int level) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getGeometryQs(real* qs[27], int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual uint getGeometrySize(int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getGeometryIndices(int* indices, int level) const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual bool hasGeometryValues() const;
-    VIRTUALFLUIDS_GPU_EXPORT virtual void getGeometryValues(real* vx, real* vy, real* vz, int level) const;
+    GRIDGENERATOR_EXPORT virtual void getGeometryQs(real* qs[27], int level) const;
+    GRIDGENERATOR_EXPORT virtual uint getGeometrySize(int level) const;
+    GRIDGENERATOR_EXPORT virtual void getGeometryIndices(int* indices, int level) const;
+    GRIDGENERATOR_EXPORT virtual bool hasGeometryValues() const;
+    GRIDGENERATOR_EXPORT virtual void getGeometryValues(real* vx, real* vy, real* vz, int level) const;
 
 
-    VIRTUALFLUIDS_GPU_EXPORT void writeArrows(std::string fileName) const;
+    GRIDGENERATOR_EXPORT void writeArrows(std::string fileName) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT SPtr<BoundaryCondition> getBoundaryCondition( SideType side, uint level ) const override;
-    VIRTUALFLUIDS_GPU_EXPORT SPtr<GeometryBoundaryCondition> getGeometryBoundaryCondition(uint level) const override;
+    GRIDGENERATOR_EXPORT SPtr<BoundaryCondition> getBoundaryCondition( SideType side, uint level ) const override;
+    GRIDGENERATOR_EXPORT SPtr<GeometryBoundaryCondition> getGeometryBoundaryCondition(uint level) const override;
 
 protected:
     
@@ -126,23 +126,23 @@ private:
     std::string d3qxx;
 
 public:
-    VIRTUALFLUIDS_GPU_EXPORT void getGridInformations(std::vector<int>& gridX, std::vector<int>& gridY,
+    GRIDGENERATOR_EXPORT void getGridInformations(std::vector<int>& gridX, std::vector<int>& gridY,
                                        std::vector<int>& gridZ, std::vector<int>& distX, std::vector<int>& distY,
                                        std::vector<int>& distZ) override;
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfGridLevels() const override;
+    GRIDGENERATOR_EXPORT uint getNumberOfGridLevels() const override;
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfNodesCF(int level) override;
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfNodesFC(int level) override;
+    GRIDGENERATOR_EXPORT uint getNumberOfNodesCF(int level) override;
+    GRIDGENERATOR_EXPORT uint getNumberOfNodesFC(int level) override;
 
-    VIRTUALFLUIDS_GPU_EXPORT void getGridInterfaceIndices(uint* iCellCfc, uint* iCellCff, uint* iCellFcc, uint* iCellFcf, int level) const override;
+    GRIDGENERATOR_EXPORT void getGridInterfaceIndices(uint* iCellCfc, uint* iCellCff, uint* iCellFcc, uint* iCellFcf, int level) const override;
 
-    VIRTUALFLUIDS_GPU_EXPORT void getOffsetFC(real* xOffCf, real* yOffCf, real* zOffCf, int level) override;
-    VIRTUALFLUIDS_GPU_EXPORT void getOffsetCF(real* xOffFc, real* yOffFc, real* zOffFc, int level) override;
+    GRIDGENERATOR_EXPORT void getOffsetFC(real* xOffCf, real* yOffCf, real* zOffCf, int level) override;
+    GRIDGENERATOR_EXPORT void getOffsetCF(real* xOffFc, real* yOffFc, real* zOffFc, int level) override;
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfSendIndices( int direction, uint level ) override;
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfReceiveIndices( int direction, uint level ) override;
-    VIRTUALFLUIDS_GPU_EXPORT void getSendIndices( int* sendIndices, int direction, int level ) override;
-    VIRTUALFLUIDS_GPU_EXPORT void getReceiveIndices( int* sendIndices, int direction, int level ) override;
+    GRIDGENERATOR_EXPORT uint getNumberOfSendIndices( int direction, uint level ) override;
+    GRIDGENERATOR_EXPORT uint getNumberOfReceiveIndices( int direction, uint level ) override;
+    GRIDGENERATOR_EXPORT void getSendIndices( int* sendIndices, int direction, int level ) override;
+    GRIDGENERATOR_EXPORT void getReceiveIndices( int* sendIndices, int direction, int level ) override;
 
 };
 
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
index 1dda75c8c..1fa4d3ccb 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
+++ b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.cpp
@@ -571,7 +571,7 @@ void MultipleGridBuilder::buildGrids( LbmOrGks lbmOrGks, bool enableThinWalls )
     //////////////////////////////////////////////////////////////////////////
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void MultipleGridBuilder::setNumberOfLayers(uint numberOfLayersFine, uint numberOfLayersBetweenLevels)
+GRIDGENERATOR_EXPORT void MultipleGridBuilder::setNumberOfLayers(uint numberOfLayersFine, uint numberOfLayersBetweenLevels)
 {
     this->numberOfLayersFine = numberOfLayersFine;
     this->numberOfLayersBetweenLevels = numberOfLayersBetweenLevels;
@@ -618,7 +618,7 @@ void MultipleGridBuilder::writeGridsToVtk(const std::string& path) const
     }
 }
 
-VIRTUALFLUIDS_GPU_EXPORT void MultipleGridBuilder::setSubDomainBox(SPtr<BoundingBox> subDomainBox)
+GRIDGENERATOR_EXPORT void MultipleGridBuilder::setSubDomainBox(SPtr<BoundingBox> subDomainBox)
 {
     this->subDomainBox = subDomainBox;
 }
diff --git a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
index a22c87799..8fa61f848 100644
--- a/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
+++ b/src/gpu/GridGenerator/grid/GridBuilder/MultipleGridBuilder.h
@@ -3,7 +3,7 @@
 
 #include <vector>
 #include <array>
-
+#include "GridGenerator_export.h"
 #include "Core/LbmOrGks.h"
 
 #include "global.h"
@@ -17,37 +17,37 @@ class BoundingBox;
 class MultipleGridBuilder : public LevelGridBuilder
 {
 private:
-    VIRTUALFLUIDS_GPU_EXPORT MultipleGridBuilder(SPtr<GridFactory> gridFactory, Device device = Device::CPU, const std::string &d3qxx = "D3Q27");
+    GRIDGENERATOR_EXPORT MultipleGridBuilder(SPtr<GridFactory> gridFactory, Device device = Device::CPU, const std::string &d3qxx = "D3Q27");
 
 public:
-    VIRTUALFLUIDS_GPU_EXPORT static SPtr<MultipleGridBuilder> makeShared(SPtr<GridFactory> gridFactory);
+    GRIDGENERATOR_EXPORT static SPtr<MultipleGridBuilder> makeShared(SPtr<GridFactory> gridFactory);
 
-    VIRTUALFLUIDS_GPU_EXPORT void addCoarseGrid(real startX, real startY, real startZ, real endX, real endY, real endZ, real delta);
-    VIRTUALFLUIDS_GPU_EXPORT void addGrid(Object* gridShape);
-    VIRTUALFLUIDS_GPU_EXPORT void addGrid(Object* gridShape, uint levelFine);
+    GRIDGENERATOR_EXPORT void addCoarseGrid(real startX, real startY, real startZ, real endX, real endY, real endZ, real delta);
+    GRIDGENERATOR_EXPORT void addGrid(Object* gridShape);
+    GRIDGENERATOR_EXPORT void addGrid(Object* gridShape, uint levelFine);
 
-    VIRTUALFLUIDS_GPU_EXPORT void addGeometry(Object* gridShape);
-    VIRTUALFLUIDS_GPU_EXPORT void addGeometry(Object* solidObject, uint level);
+    GRIDGENERATOR_EXPORT void addGeometry(Object* gridShape);
+    GRIDGENERATOR_EXPORT void addGeometry(Object* solidObject, uint level);
 
-    VIRTUALFLUIDS_GPU_EXPORT uint getNumberOfLevels() const;
-    VIRTUALFLUIDS_GPU_EXPORT real getDelta(uint level) const;
+    GRIDGENERATOR_EXPORT uint getNumberOfLevels() const;
+    GRIDGENERATOR_EXPORT real getDelta(uint level) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT real getStartX(uint level) const;
-    VIRTUALFLUIDS_GPU_EXPORT real getStartY(uint level) const;
-    VIRTUALFLUIDS_GPU_EXPORT real getStartZ(uint level) const;
+    GRIDGENERATOR_EXPORT real getStartX(uint level) const;
+    GRIDGENERATOR_EXPORT real getStartY(uint level) const;
+    GRIDGENERATOR_EXPORT real getStartZ(uint level) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT real getEndX(uint level) const;
-    VIRTUALFLUIDS_GPU_EXPORT real getEndY(uint level) const;
-    VIRTUALFLUIDS_GPU_EXPORT real getEndZ(uint level) const;
+    GRIDGENERATOR_EXPORT real getEndX(uint level) const;
+    GRIDGENERATOR_EXPORT real getEndY(uint level) const;
+    GRIDGENERATOR_EXPORT real getEndZ(uint level) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT std::vector<SPtr<Grid> > getGrids() const;
-    VIRTUALFLUIDS_GPU_EXPORT void buildGrids(LbmOrGks lbmOrGks, bool enableThinWalls = false);
+    GRIDGENERATOR_EXPORT std::vector<SPtr<Grid> > getGrids() const;
+    GRIDGENERATOR_EXPORT void buildGrids(LbmOrGks lbmOrGks, bool enableThinWalls = false);
 
-    VIRTUALFLUIDS_GPU_EXPORT void setNumberOfLayers( uint numberOfLayersFine, uint numberOfLayersBetweenLevels );
+    GRIDGENERATOR_EXPORT void setNumberOfLayers( uint numberOfLayersFine, uint numberOfLayersBetweenLevels );
 
-    VIRTUALFLUIDS_GPU_EXPORT void writeGridsToVtk(const std::string& path) const;
+    GRIDGENERATOR_EXPORT void writeGridsToVtk(const std::string& path) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT void setSubDomainBox(SPtr<BoundingBox> subDomainBox);
+    GRIDGENERATOR_EXPORT void setSubDomainBox(SPtr<BoundingBox> subDomainBox);
 
 private:
     void addGridToList(SPtr<Grid> grid);
@@ -83,7 +83,7 @@ private:
 
 public:
 
-    VIRTUALFLUIDS_GPU_EXPORT void findCommunicationIndices( int direction, LbmOrGks lbmOrGks );
+    GRIDGENERATOR_EXPORT void findCommunicationIndices( int direction, LbmOrGks lbmOrGks );
 };
 
 #endif
diff --git a/src/gpu/GridGenerator/grid/GridFactory.h b/src/gpu/GridGenerator/grid/GridFactory.h
index 57f3e4849..b22d01ea1 100644
--- a/src/gpu/GridGenerator/grid/GridFactory.h
+++ b/src/gpu/GridGenerator/grid/GridFactory.h
@@ -22,7 +22,7 @@ enum class TriangularMeshDiscretizationMethod
     RAYCASTING, POINT_IN_OBJECT, POINT_UNDER_TRIANGLE
 };
 
-class VIRTUALFLUIDS_GPU_EXPORT GridFactory
+class GRIDGENERATOR_EXPORT GridFactory
 {
 public:
     static SPtr<GridFactory> make()
diff --git a/src/gpu/GridGenerator/grid/GridImp.h b/src/gpu/GridGenerator/grid/GridImp.h
index d58b1b70b..be9bc9e17 100644
--- a/src/gpu/GridGenerator/grid/GridImp.h
+++ b/src/gpu/GridGenerator/grid/GridImp.h
@@ -23,7 +23,7 @@ class TriangularMeshDiscretizationStrategy;
 
 extern CONSTANT int DIRECTIONS[DIR_END_MAX][DIMENSION];
 
-class VIRTUALFLUIDS_GPU_EXPORT GridImp : public enableSharedFromThis<GridImp>, public Grid
+class GRIDGENERATOR_EXPORT GridImp : public enableSharedFromThis<GridImp>, public Grid
 {
 private:
     CUDA_HOST GridImp();
diff --git a/src/gpu/GridGenerator/grid/GridInterface.cu b/src/gpu/GridGenerator/grid/GridInterface.cu
index e05b017c8..00ce04f09 100644
--- a/src/gpu/GridGenerator/grid/GridInterface.cu
+++ b/src/gpu/GridGenerator/grid/GridInterface.cu
@@ -254,7 +254,7 @@ void GridInterface::findForGridInterfaceSparseIndexFC(GridImp* coarseGrid, GridI
     findSparseIndex(fc.fine, fineGrid, index);
 }
 
-CUDA_HOST void VIRTUALFLUIDS_GPU_EXPORT GridInterface::repairGridInterfaceOnMultiGPU(SPtr<GridImp> coarseGrid, SPtr<GridImp> fineGrid)
+CUDA_HOST void GRIDGENERATOR_EXPORT GridInterface::repairGridInterfaceOnMultiGPU(SPtr<GridImp> coarseGrid, SPtr<GridImp> fineGrid)
 {
     {
         std::vector<uint> tmpCFC;
diff --git a/src/gpu/GridGenerator/grid/GridInterface.h b/src/gpu/GridGenerator/grid/GridInterface.h
index 0fa224c31..d0f04ea34 100644
--- a/src/gpu/GridGenerator/grid/GridInterface.h
+++ b/src/gpu/GridGenerator/grid/GridInterface.h
@@ -8,26 +8,26 @@ class GridImp;
 class GridInterface
 {
 public:
-    HOSTDEVICE VIRTUALFLUIDS_GPU_EXPORT GridInterface();
-    HOSTDEVICE VIRTUALFLUIDS_GPU_EXPORT ~GridInterface();
+    HOSTDEVICE GRIDGENERATOR_EXPORT GridInterface();
+    HOSTDEVICE GRIDGENERATOR_EXPORT ~GridInterface();
 
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findInterfaceCF(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findBoundaryGridInterfaceCF(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findInterfaceCF(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findBoundaryGridInterfaceCF(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
 
 
-	HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findInterfaceCF_GKS(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
+	HOSTDEVICE void GRIDGENERATOR_EXPORT findInterfaceCF_GKS(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
 
-	HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findInterfaceFC(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findOverlapStopper(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
+	HOSTDEVICE void GRIDGENERATOR_EXPORT findInterfaceFC(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findOverlapStopper(const uint& indexOnCoarseGrid, GridImp* coarseGrid, GridImp* fineGrid);
     
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findInvalidBoundaryNodes(const uint& indexOnCoarseGrid, GridImp* coarseGrid);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findInvalidBoundaryNodes(const uint& indexOnCoarseGrid, GridImp* coarseGrid);
 
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findForGridInterfaceSparseIndexCF(GridImp* coarseGrid, GridImp* fineGrid, uint index);
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT findForGridInterfaceSparseIndexFC(GridImp* coarseGrid, GridImp* fineGrid, uint index);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findForGridInterfaceSparseIndexCF(GridImp* coarseGrid, GridImp* fineGrid, uint index);
+    HOSTDEVICE void GRIDGENERATOR_EXPORT findForGridInterfaceSparseIndexFC(GridImp* coarseGrid, GridImp* fineGrid, uint index);
 
-    CUDA_HOST void VIRTUALFLUIDS_GPU_EXPORT repairGridInterfaceOnMultiGPU(SPtr<GridImp> coarseGrid, SPtr<GridImp> fineGrid);
+    CUDA_HOST void GRIDGENERATOR_EXPORT repairGridInterfaceOnMultiGPU(SPtr<GridImp> coarseGrid, SPtr<GridImp> fineGrid);
 
-    HOSTDEVICE void VIRTUALFLUIDS_GPU_EXPORT print() const;
+    HOSTDEVICE void GRIDGENERATOR_EXPORT print() const;
 
     struct Interface
     {
diff --git a/src/gpu/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h b/src/gpu/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
index b5b91af92..af4b1791b 100644
--- a/src/gpu/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
+++ b/src/gpu/GridGenerator/grid/GridStrategy/GridCpuStrategy/GridCpuStrategy.h
@@ -8,7 +8,7 @@
 class GridImp;
 class TriangularMesh;
 
-class VIRTUALFLUIDS_GPU_EXPORT GridCpuStrategy : public GridStrategy
+class GRIDGENERATOR_EXPORT GridCpuStrategy : public GridStrategy
 {
 public:
     virtual ~GridCpuStrategy() {};
diff --git a/src/gpu/GridGenerator/grid/GridStrategy/GridGpuStrategy/GridGpuStrategy.h b/src/gpu/GridGenerator/grid/GridStrategy/GridGpuStrategy/GridGpuStrategy.h
index 8ba30824a..fb886824a 100644
--- a/src/gpu/GridGenerator/grid/GridStrategy/GridGpuStrategy/GridGpuStrategy.h
+++ b/src/gpu/GridGenerator/grid/GridStrategy/GridGpuStrategy/GridGpuStrategy.h
@@ -8,7 +8,7 @@
 class BoundingBox;
 class TriangularMesh;
 
-class VIRTUALFLUIDS_GPU_EXPORT GridGpuStrategy : public GridStrategy
+class GRIDGENERATOR_EXPORT GridGpuStrategy : public GridStrategy
 {
 public:
     virtual ~GridGpuStrategy() {};
diff --git a/src/gpu/GridGenerator/grid/GridStrategy/GridStrategy.h b/src/gpu/GridGenerator/grid/GridStrategy/GridStrategy.h
index 44152ffed..4bf735f90 100644
--- a/src/gpu/GridGenerator/grid/GridStrategy/GridStrategy.h
+++ b/src/gpu/GridGenerator/grid/GridStrategy/GridStrategy.h
@@ -11,7 +11,7 @@ struct Vertex;
 class TriangularMesh;
 class GridImp;
 
-class VIRTUALFLUIDS_GPU_EXPORT GridStrategy
+class GRIDGENERATOR_EXPORT GridStrategy
 {
 public:
     virtual ~GridStrategy() {}
diff --git a/src/gpu/GridGenerator/grid/distributions/Distribution.h b/src/gpu/GridGenerator/grid/distributions/Distribution.h
index 5ba90548f..b05b5db36 100644
--- a/src/gpu/GridGenerator/grid/distributions/Distribution.h
+++ b/src/gpu/GridGenerator/grid/distributions/Distribution.h
@@ -60,7 +60,7 @@ struct Distribution
 
 class Grid;
 
-class VIRTUALFLUIDS_GPU_EXPORT DistributionHelper
+class GRIDGENERATOR_EXPORT DistributionHelper
 {
 public:
     static Distribution getDistribution7();
diff --git a/src/gpu/GridGenerator/grid/partition/Partition.h b/src/gpu/GridGenerator/grid/partition/Partition.h
index 4b9c109d5..a45f7668b 100644
--- a/src/gpu/GridGenerator/grid/partition/Partition.h
+++ b/src/gpu/GridGenerator/grid/partition/Partition.h
@@ -14,7 +14,7 @@
 //class Grid;
 //class Transformator;
 //
-//class VIRTUALFLUIDS_GPU_EXPORT Partition
+//class GRIDGENERATOR_EXPORT Partition
 //{
 //public:
 //    static void partitionGridMesh(SPtr<Grid> grid);
diff --git a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
index 5a4ba5466..43fe61145 100644
--- a/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
+++ b/src/gpu/GridGenerator/io/GridVTKWriter/GridVTKWriter.h
@@ -4,12 +4,13 @@
 #include <string>
 
 #include "global.h"
+#include "GridGenerator_export.h"
 
 enum class WRITING_FORMAT { BINARY, ASCII };
 
 class Grid;
 
-class VIRTUALFLUIDS_GPU_EXPORT GridVTKWriter
+class GRIDGENERATOR_EXPORT GridVTKWriter
 {
 public:
     static void writeSparseGridToVTK(SPtr<Grid> grid, const std::string& name, WRITING_FORMAT format = WRITING_FORMAT::ASCII);
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
index d0fa2d3f9..3e7beef8c 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLReader.h
@@ -11,7 +11,7 @@ struct Triangle;
 struct Vertex;
 class BoundingBox;
 
-class VIRTUALFLUIDS_GPU_EXPORT STLReader
+class GRIDGENERATOR_EXPORT STLReader
 {
 public:
 
diff --git a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
index bd5aee268..c61854802 100644
--- a/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
+++ b/src/gpu/GridGenerator/io/STLReaderWriter/STLWriter.h
@@ -11,7 +11,7 @@
 class Transformator;
 struct Triangle;
 
-class VIRTUALFLUIDS_GPU_EXPORT STLWriter
+class GRIDGENERATOR_EXPORT STLWriter
 {
 public:
     static void writeSTL(std::vector<Triangle> &vec, const std::string &name, bool writeBinary = false);
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
index b794a2d49..fdc09047f 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileNames.h
@@ -5,7 +5,7 @@
 
 #include "global.h"
 
-struct VIRTUALFLUIDS_GPU_EXPORT simulationFileNames
+struct GRIDGENERATOR_EXPORT simulationFileNames
 {
 	static const std::string coordX;
 	static const std::string coordY;
diff --git a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
index 8e50697e2..eb10c9c10 100644
--- a/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
+++ b/src/gpu/GridGenerator/io/SimulationFileWriter/SimulationFileWriter.h
@@ -25,7 +25,7 @@ enum class FILEFORMAT
 class SimulationFileWriter : private NonCreatable
 {
 public:
-    VIRTUALFLUIDS_GPU_EXPORT static void write(std::string folder, SPtr<GridBuilder> builder, FILEFORMAT format);
+    GRIDGENERATOR_EXPORT static void write(std::string folder, SPtr<GridBuilder> builder, FILEFORMAT format);
 
 private:
     static void write(SPtr<GridBuilder> builder, FILEFORMAT format);
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h b/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
index 19a70bb42..c7b3829d6 100644
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
+++ b/src/gpu/GridGenerator/io/VTKWriterWrapper/PolyDataWriterWrapper.h
@@ -11,11 +11,11 @@
 //class PolyDataWriterWrapper
 //{
 //public:
-//	VIRTUALFLUIDS_GPU_EXPORT PolyDataWriterWrapper();
-//	VIRTUALFLUIDS_GPU_EXPORT ~PolyDataWriterWrapper();
+//	GRIDGENERATOR_EXPORT PolyDataWriterWrapper();
+//	GRIDGENERATOR_EXPORT ~PolyDataWriterWrapper();
 //
-//	VIRTUALFLUIDS_GPU_EXPORT virtual void addVectorArrow(std::shared_ptr<const Arrow> arrow);
-//	VIRTUALFLUIDS_GPU_EXPORT virtual void writePolyDataToFile(const std::string &filename) const;
+//	GRIDGENERATOR_EXPORT virtual void addVectorArrow(std::shared_ptr<const Arrow> arrow);
+//	GRIDGENERATOR_EXPORT virtual void writePolyDataToFile(const std::string &filename) const;
 //
 //private:
 //    std::shared_ptr<PolyDataWriter> writer;
diff --git a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h b/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
index a02a04f95..6e13ba9dd 100644
--- a/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
+++ b/src/gpu/GridGenerator/io/VTKWriterWrapper/UnstructuredGridWrapper.h
@@ -13,7 +13,7 @@
 //struct Vertex;
 //class Grid;
 //
-//class VIRTUALFLUIDS_GPU_EXPORT UnstructuredGridWrapper
+//class GRIDGENERATOR_EXPORT UnstructuredGridWrapper
 //{
 //public:
 //    UnstructuredGridWrapper();
diff --git a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh b/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
index e50318ed7..20406fdb5 100644
--- a/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
+++ b/src/gpu/GridGenerator/utilities/cuda/LaunchParameter.cuh
@@ -11,10 +11,10 @@
 class LaunchParameter
 {
 public:
-	CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT LaunchParameter();
+	CUDA_HOST GRIDGENERATOR_EXPORT LaunchParameter();
 
-	CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT static LaunchParameter make_2D1D_launchParameter(int size, int threadDim);
-	CUDA_HOST VIRTUALFLUIDS_GPU_EXPORT static LaunchParameter make_1D1D_launchParameter(int size, int threadDim);
+	CUDA_HOST GRIDGENERATOR_EXPORT static LaunchParameter make_2D1D_launchParameter(int size, int threadDim);
+	CUDA_HOST GRIDGENERATOR_EXPORT static LaunchParameter make_1D1D_launchParameter(int size, int threadDim);
 
 	DEVICE static int getGlobalIdx_2D_1D();
 	DEVICE static int getGlobalIdx_1D_1D();
diff --git a/src/gpu/GridGenerator/utilities/math/Math.h b/src/gpu/GridGenerator/utilities/math/Math.h
index 8bf90f83a..b47f03b07 100644
--- a/src/gpu/GridGenerator/utilities/math/Math.h
+++ b/src/gpu/GridGenerator/utilities/math/Math.h
@@ -11,7 +11,7 @@
 
 namespace vf 
 {
-    class VIRTUALFLUIDS_GPU_EXPORT Math
+    class GRIDGENERATOR_EXPORT Math
     {
     public:
         HOSTDEVICE static bool equal(const real& val1, const real& val2, real maxRelDiff = EPSILON);
diff --git a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
index 8048fb936..186b66838 100644
--- a/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
+++ b/src/gpu/GridGenerator/utilities/transformator/ArrowTransformator.h
@@ -10,7 +10,7 @@ class Arrow;
 class ArrowTransformator
 {
 public:
-    static VIRTUALFLUIDS_GPU_EXPORT std::shared_ptr<ArrowTransformator> makeTransformator(real delta, real dx, real dy, real dz);
+    static GRIDGENERATOR_EXPORT std::shared_ptr<ArrowTransformator> makeTransformator(real delta, real dx, real dy, real dz);
 	virtual ~ArrowTransformator() {}
 
 protected:
diff --git a/src/gpu/GridGenerator/utilities/transformator/Transformator.h b/src/gpu/GridGenerator/utilities/transformator/Transformator.h
index 24d57e91a..0f092ddb9 100644
--- a/src/gpu/GridGenerator/utilities/transformator/Transformator.h
+++ b/src/gpu/GridGenerator/utilities/transformator/Transformator.h
@@ -14,7 +14,7 @@ struct Vertex;
 class Transformator
 {
 public:
-    static VIRTUALFLUIDS_GPU_EXPORT std::shared_ptr<Transformator> makeTransformator(real delta, real dx, real dy, real dz);
+    static GRIDGENERATOR_EXPORT std::shared_ptr<Transformator> makeTransformator(real delta, real dx, real dy, real dz);
 	virtual ~Transformator() {}
 
 protected:
diff --git a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
index ec5caefd8..f2e68bc13 100644
--- a/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
+++ b/src/gpu/GridGenerator/utilities/transformator/TransformatorImp.h
@@ -5,6 +5,7 @@
 #include <sstream>
 
 #include "global.h"
+#include "GridGenerator_export.h"
 
 #include "utilities/transformator/Transformator.h"
 #include "utilities/transformator/ArrowTransformator.h"
@@ -27,25 +28,25 @@ class TransformatorImp
 	: public Transformator, public ArrowTransformator
 {
 public:
-	VIRTUALFLUIDS_GPU_EXPORT TransformatorImp();
-	VIRTUALFLUIDS_GPU_EXPORT TransformatorImp(const TransformatorImp& trafo);
-	VIRTUALFLUIDS_GPU_EXPORT TransformatorImp(real delta, const Vertex& translater);
-	VIRTUALFLUIDS_GPU_EXPORT TransformatorImp(real delta, real dx, real dy, real dz);
-	VIRTUALFLUIDS_GPU_EXPORT virtual ~TransformatorImp();
+	GRIDGENERATOR_EXPORT TransformatorImp();
+	GRIDGENERATOR_EXPORT TransformatorImp(const TransformatorImp& trafo);
+	GRIDGENERATOR_EXPORT TransformatorImp(real delta, const Vertex& translater);
+	GRIDGENERATOR_EXPORT TransformatorImp(real delta, real dx, real dy, real dz);
+	GRIDGENERATOR_EXPORT virtual ~TransformatorImp();
 	
-	VIRTUALFLUIDS_GPU_EXPORT void transformWorldToGrid(Triangle &value) const;
-	VIRTUALFLUIDS_GPU_EXPORT void transformWorldToGrid(TriangularMesh &geom) const;
-	VIRTUALFLUIDS_GPU_EXPORT void transformWorldToGrid(Vertex &value) const;
+	GRIDGENERATOR_EXPORT void transformWorldToGrid(Triangle &value) const;
+	GRIDGENERATOR_EXPORT void transformWorldToGrid(TriangularMesh &geom) const;
+	GRIDGENERATOR_EXPORT void transformWorldToGrid(Vertex &value) const;
 
-    VIRTUALFLUIDS_GPU_EXPORT void transformGridToWorld(Triangle &t) const;
-	VIRTUALFLUIDS_GPU_EXPORT void transformGridToWorld(Vertex &value) const;
+    GRIDGENERATOR_EXPORT void transformGridToWorld(Triangle &t) const;
+	GRIDGENERATOR_EXPORT void transformGridToWorld(Vertex &value) const;
 
-	VIRTUALFLUIDS_GPU_EXPORT void transformGridToWorld(BoundingBox &box) const;
-	VIRTUALFLUIDS_GPU_EXPORT void transformWorldToGrid(BoundingBox &box) const;
+	GRIDGENERATOR_EXPORT void transformGridToWorld(BoundingBox &box) const;
+	GRIDGENERATOR_EXPORT void transformWorldToGrid(BoundingBox &box) const;
 
-	VIRTUALFLUIDS_GPU_EXPORT bool operator==(const TransformatorImp& trafo) const;
+	GRIDGENERATOR_EXPORT bool operator==(const TransformatorImp& trafo) const;
 
-	VIRTUALFLUIDS_GPU_EXPORT virtual void transformGridToWorld(std::shared_ptr<Arrow> arrow) const override;
+	GRIDGENERATOR_EXPORT virtual void transformGridToWorld(std::shared_ptr<Arrow> arrow) const override;
 
 private:
 	real delta;
-- 
GitLab