1#ifndef DUNE_FEM_GRIDPART_FILTER_INVERSEFILTER_HH
2#define DUNE_FEM_GRIDPART_FILTER_INVERSEFILTER_HH
10 template<
class FilterImp >
14 typedef InverseFilter< FilterImp > ThisType;
20 typedef typename FilterImp::template Codim< cd >::EntityType EntityType;
27 InverseFilter (
const FilterImp & filter = FilterImp() )
31 InverseFilter(
const ThisType & ) =
default;
32 InverseFilter( ThisType && ) =
default;
34 ThisType &operator= (
const ThisType & ) =
default;
35 ThisType &operator= ( ThisType && ) =
default;
41 return !filter().contains< cd >( entity );
45 template<
class Entity >
48 return !filter().contains( entity );
53 template<
class Intersection >
54 bool interiorIntersection (
const Intersection &intersection )
const
56 return contains( intersection.outside() );
60 template<
class Intersection >
61 bool intersectionBoundary(
const Intersection &intersection )
const
63 return filter().intersectionBoundary( intersection );
67 template<
class Intersection >
68 int intersectionBoundaryId (
const Intersection &intersection )
const
70 return filter().intersectionBoundaryId( intersection );
74 template<
class Intersection >
75 bool intersectionNeighbor (
const Intersection &intersection )
const
77 return filter().intersectionNeighbor( intersection );
81 const FilterImp filter ()
const
Wrapper class for entities.
Definition: entity.hh:66
Dune namespace.
Definition: alignedallocator.hh:13
constexpr std::bool_constant<((II==value)||...)> contains(std::integer_sequence< T, II... >, std::integral_constant< T, value >)
Checks whether or not a given sequence contains a value.
Definition: integersequence.hh:137
Static tag representing a codimension.
Definition: dimension.hh:24
entity types
Definition: inversefilter.hh:19