5 #ifndef DUNE_LOCALFUNCTIONS_COMMON_TYPEERASEDLOCALFINITEELEMENT 6 #define DUNE_LOCALFUNCTIONS_COMMON_TYPEERASEDLOCALFINITEELEMENT 12 #include <dune/common/typeutilities.hh> 14 #include <dune/geometry/type.hh> 41 using LocalBasisTraits = LBT;
46 using Traits =
typename VirtualLFE::Traits;
67 template<
class LFEImpl,
68 Dune::disableCopyMove<LocalFiniteElement, LFEImpl> = 0 >
86 : lfe_(other.lfe_ ? other.lfe_->clone() : nullptr)
118 lfe_.reset(rhs.lfe_->clone());
145 operator bool ()
const 158 return lfe_->localBasis();
169 return lfe_->localCoefficients();
180 return lfe_->localInterpolation();
198 const GeometryType&
type ()
const 204 std::unique_ptr<VirtualLFE> lfe_;
205 unsigned int size_ = 0;
206 Dune::GeometryType type_;
const Traits::LocalBasisType & localBasis() const
Access the LocalBasis of the stored local finite element.
Definition: localfunctions/common/localfiniteelement.hh:156
class for wrapping a finite element using the virtual interface
Definition: virtualwrappers.hh:19
typename VirtualLFE::Traits Traits
Definition: localfunctions/common/localfiniteelement.hh:46
LocalFiniteElement()=default
Default constructor.
Definition: bdfmcube.hh:17
const GeometryType & type() const
Get the GeometryType of the stored local finite element.
Definition: localfunctions/common/localfiniteelement.hh:198
LocalFiniteElement & operator=(const LocalFiniteElement &rhs)
Copy assignment.
Definition: localfunctions/common/localfiniteelement.hh:113
const Traits::LocalInterpolationType & localInterpolation() const
Access the LocalInterpolation of the stored local finite element.
Definition: localfunctions/common/localfiniteelement.hh:178
LocalFiniteElement(const LocalFiniteElement &other)
Copy constructor.
Definition: localfunctions/common/localfiniteelement.hh:85
Type erasure class storing a local finite element.
Definition: localfunctions/common/localfiniteelement.hh:39
const Traits::LocalCoefficientsType & localCoefficients() const
Access the LocalCoefficients of the stored local finite element.
Definition: localfunctions/common/localfiniteelement.hh:167
virtual base class for local finite elements with functions
Definition: virtualinterface.hh:224
unsigned int size() const
Get the number of basis functions of the stored local finite element.
Definition: localfunctions/common/localfiniteelement.hh:188
LocalFiniteElement(LFEImpl &&lfe)
Construct from implementation.
Definition: localfunctions/common/localfiniteelement.hh:69