1 #ifndef DUNE_GRIDGLUE_ADAPTER_RANGEGENERATORS_HH
2 #define DUNE_GRIDGLUE_ADAPTER_RANGEGENERATORS_HH
4 #include <dune/common/version.hh>
6 #if DUNE_VERSION_NEWER(DUNE_COMMON, 2, 4)
7 # include <dune/common/iteratorrange.hh>
16 template<
bool reverse>
18 : std::integral_constant<bool, reverse>
78 #if DUNE_VERSION_NEWER(DUNE_COMMON, 2, 4)
80 template<
typename P0,
typename P1,
bool reverse = false>
81 IteratorRange<typename GridGlueView<P0, P1, reverse ? 1 : 0>::IntersectionIterator>
82 intersections(
const GridGlue<P0, P1>& glue,
const Reverse<reverse>& = {})
84 const static int side = reverse ? 1 : 0;
85 return {glue.template ibegin<side>(), glue.template iend<side>()};
Reverse type
Definition: rangegenerators.hh:20
constexpr Reverse<!reverse > operator!() const
Definition: rangegenerators.hh:23
Definition: rangegenerators.hh:17
IteratorRange<...> intersections(const GridGlue<...> &glue, const Reverse<...> &reverse=!reversed)
Iterate over all intersections of a GridGlue.
Definition: gridglue.hh:33
const Reverse< true > reversed
Definition: rangegenerators.hh:33
sequential adapter to couple two grids at specified close together boundaries
Definition: gridglue.hh:44