From d957c7b7c2b132e019fdcbc8918492c9e7f859b6 Mon Sep 17 00:00:00 2001 From: Elias Pipping <elias.pipping@fu-berlin.de> Date: Mon, 21 Jul 2014 14:50:57 +0200 Subject: [PATCH] [Cleanup] Control grid selection through a header --- src/explicitgrid.hh | 10 +--------- src/gridselector.hh | 24 ++++++++++++++++++++++++ src/sand-wedge.cc | 15 +-------------- 3 files changed, 26 insertions(+), 23 deletions(-) create mode 100644 src/gridselector.hh diff --git a/src/explicitgrid.hh b/src/explicitgrid.hh index ee691f08..fcbac18c 100644 --- a/src/explicitgrid.hh +++ b/src/explicitgrid.hh @@ -1,15 +1,7 @@ #ifndef SRC_EXPLICITGRID_HH #define SRC_EXPLICITGRID_HH -#if !HAVE_ALUGRID -#error ALUGRID is required -#endif - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wignored-qualifiers" -#include <dune/grid/alugrid.hh> -#pragma clang diagnostic pop +#include "gridselector.hh" -using Grid = Dune::ALUGrid<MY_DIM, MY_DIM, Dune::simplex, Dune::nonconforming>; using GridView = Grid::LeafGridView; #endif diff --git a/src/gridselector.hh b/src/gridselector.hh new file mode 100644 index 00000000..0940e87a --- /dev/null +++ b/src/gridselector.hh @@ -0,0 +1,24 @@ +#ifndef MY_DIM +#error MY_DIM unset +#endif + +#define WANT_ALUGRID 0 + +#define WANT_GRID WANT_ALUGRID + +#if WANT_GRID == WANT_ALUGRID + +#if !HAVE_ALUGRID +#error ALUGRID was requested but not found +#endif +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wignored-qualifiers" +#include <dune/grid/alugrid.hh> +#pragma clang diagnostic pop +using Grid = Dune::ALUGrid<MY_DIM, MY_DIM, Dune::simplex, Dune::nonconforming>; + +#else + +#error requested a grid that does not exist + +#endif diff --git a/src/sand-wedge.cc b/src/sand-wedge.cc index 74d93ab0..0dfdc6f0 100644 --- a/src/sand-wedge.cc +++ b/src/sand-wedge.cc @@ -16,14 +16,6 @@ #error datadir unset #endif -#ifndef MY_DIM -#error MY_DIM unset -#endif - -#if !HAVE_ALUGRID -#error ALUGRID is required -#endif - #include <cmath> #include <exception> #include <fstream> @@ -38,11 +30,6 @@ #include <dune/common/parametertree.hh> #include <dune/common/parametertreeparser.hh> -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wignored-qualifiers" -#include <dune/grid/alugrid.hh> -#pragma clang diagnostic pop - #include <dune/grid/common/mcmgmapper.hh> #include <dune/istl/bcrsmatrix.hh> #include <dune/istl/bvector.hh> @@ -74,6 +61,7 @@ #include "enums.hh" #include "fixedpointiterator.hh" #include "friction_writer.hh" +#include "gridselector.hh" #include "sand-wedge-data/mybody.hh" #include "sand-wedge-data/mygeometry.hh" #include "sand-wedge-data/myglobalfrictiondata.hh" @@ -103,7 +91,6 @@ int main(int argc, char *argv[]) { MyGeometry::write(); // {{{ Set up grid - using Grid = Dune::ALUGrid<dims, dims, Dune::simplex, Dune::nonconforming>; GridConstructor<Grid> gridConstructor; auto grid = gridConstructor.getGrid(); -- GitLab