7#ifndef DUNE_FUNCTIONS_FUNCTIONSPACEBASES_LEAFPREBASISMIXIN_HH
8#define DUNE_FUNCTIONS_FUNCTIONSPACEBASES_LEAFPREBASISMIXIN_HH
34template<
class Derived>
51 template<
class SizePrefix,
52 decltype(std::declval<SizePrefix>().size(),
bool{}) =
true>
55 assert(prefix.size() == 0 || prefix.size() == 1);
56 return (prefix.size() == 0) ? derived().dimension() : 0;
62 return derived().dimension();
72 const Derived& derived()
const
74 return static_cast<const Derived&
>(*this);
Lightweight representation of (hierarchical) size and block structure extracted from a basis to descr...
Definition monomialset.hh:19
UniformVector< Value > FlatVector
Alias for a uniform vector storing value placeholders.
Definition containerdescriptors.hh:184
A generic MixIn class for PreBasis.
Definition leafprebasismixin.hh:36
size_type size(const SizePrefix &prefix) const
Return number of possible values for next position in multi index.
Definition leafprebasismixin.hh:53
static constexpr size_type minMultiIndexSize
Definition leafprebasismixin.hh:45
auto containerDescriptor() const
Return a flat container-descriptor.
Definition leafprebasismixin.hh:66
static constexpr size_type maxMultiIndexSize
Definition leafprebasismixin.hh:42
size_type size() const
Get the total dimension of the space spanned by this basis.
Definition leafprebasismixin.hh:60
std::size_t size_type
Definition leafprebasismixin.hh:39
static constexpr size_type multiIndexBufferSize
Definition leafprebasismixin.hh:48