3#ifndef DUNE_AMIRAMESH_READER_HH
4#define DUNE_AMIRAMESH_READER_HH
9#include <dune/common/to_unique_ptr.hh>
16#include <amiramesh/AmiraMesh.h>
28 template<
class Gr
idType>
29 class AmiraMeshReader {
31 using ctype =
typename GridType::ctype;
34 enum {dim = GridType::dimension};
37 static void createDomain(GridFactory<GridType>& factory,
const std::shared_ptr<PSurfaceBoundary<dim-1, ctype> >& boundary);
40 static void buildGrid(GridFactory<GridType>& factory, AmiraMesh* am);
43 static void build2dGrid(GridFactory<GridType>& factory, AmiraMesh* am);
55 static ToUniquePtr<GridType> read(
const std::string& filename);
62 static void read(GridType& grid,
63 const std::string& filename);
78 static ToUniquePtr<GridType> read(
const std::string& filename,
79 const std::shared_ptr<PSurfaceBoundary<dim-1, ctype> >& boundary);
91 static void read(GridType& grid,
92 const std::string& filename,
93 const std::shared_ptr<PSurfaceBoundary<dim-1, ctype> >& boundary);
103 template<
class DiscFuncType>
104 static void readFunction(DiscFuncType& f,
const std::string& filename);
111#include "amiramesh/amirameshreader.cc"
Provide a generic factory class for unstructured grids.
Dune namespace.
Definition: alignedallocator.hh:14
A domain boundary implemented by the psurface library.