3 #ifndef DUNE_GRID_FACTORY_HH
4 #define DUNE_GRID_FACTORY_HH
12 #include <dune/common/function.hh>
13 #include <dune/common/fvector.hh>
14 #include <dune/common/shared_ptr.hh>
16 #include <dune/geometry/type.hh>
72 template <
class Gr
idType>
84 typedef typename GridType::ctype
ctype;
102 virtual void insertVertex(
const FieldVector<ctype,dimworld>& pos) = 0;
112 const std::vector<unsigned int>& vertices) = 0;
123 const std::vector<unsigned int>& vertices,
124 const shared_ptr<VirtualFunction<FieldVector<ctype,dimension>,FieldVector<ctype,dimworld> > >& elementParametrization)
126 DUNE_THROW(
GridError,
"This grid does not support parametrized elements!");
154 DUNE_THROW(
GridError,
"This grid does not support parametrized boundary segments!");
181 DUNE_THROW( NotImplemented,
"insertion indices have not yet been implemented." );
202 DUNE_THROW( NotImplemented,
"insertion indices have not yet been implemented." );
227 DUNE_THROW( NotImplemented,
"insertion indices have not yet been implemented." );
245 wasInserted (
const typename GridType::LeafIntersection &intersection )
const
247 DUNE_THROW( NotImplemented,
"insertion indices have not yet been implemented." );
262 template <
class Gr
idType>
266 enum {dimworld = GridType::dimensionworld};
269 typedef typename GridType::ctype
ctype;
275 DUNE_THROW(
GridError,
"There is no grid factory for this grid type!");
280 DUNE_THROW(
GridError,
"There is no grid factory for this grid type!");
291 const std::vector<unsigned int>& vertices) {
292 DUNE_THROW(
GridError,
"There is no grid factory for this grid type!");
309 DUNE_THROW(
GridError,
"There is no grid factory for this grid type!");
317 DUNE_THROW(
GridError,
"There is no grid factory for this grid type!");