version 3.10.0
Loading...
Searching...
No Matches
Dumux::FixedSizeGeometriesEntitySet< GeoType, N > Class Template Reference

An interface for a fixed-size set of geometric entities. More...

#include <dumux/geometry/geometricentityset.hh>

Inheritance diagram for Dumux::FixedSizeGeometriesEntitySet< GeoType, N >:

Description

template<class GeoType, std::size_t N>
class Dumux::FixedSizeGeometriesEntitySet< GeoType, N >
Note
This can be used e.g. to construct a bounding box volume hierarchy of a grid It defines the minimum requirement for such a set

Public Types

using Entity = Detail::GeometricEntity::EntityWrapper<GeoType>
 
using ctype = typename Entity::Geometry::ctype
 the coordinate type
 

Public Member Functions

template<class... G>
 FixedSizeGeometriesEntitySet (G &&... g)
 Constructor with one or more geometries as arguments.
 
constexpr auto size () const
 the number of entities in this set
 
decltype(auto) begin () const
 begin iterator to enable range-based for iteration
 
decltype(auto) end () const
 end iterator to enable range-based for iteration
 
template<class Entity>
std::size_t index (const Entity &e) const
 get an entities index
 
const Entityentity (std::size_t index) const
 get an entity from an index
 

Static Public Attributes

static constexpr int dimensionworld = Entity::Geometry::coorddimension
 The world dimension of the entity set.
 

Member Typedef Documentation

◆ ctype

template<class GeoType, std::size_t N>
using Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::ctype = typename Entity::Geometry::ctype

◆ Entity

template<class GeoType, std::size_t N>
using Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::Entity = Detail::GeometricEntity::EntityWrapper<GeoType>

Constructor & Destructor Documentation

◆ FixedSizeGeometriesEntitySet()

template<class GeoType, std::size_t N>
template<class... G>
Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::FixedSizeGeometriesEntitySet ( G &&... g)
inline
Note
The number of geometries must match the size of the entity set

Member Function Documentation

◆ begin()

template<class GeoType, std::size_t N>
decltype(auto) Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::begin ( ) const
inline

◆ end()

template<class GeoType, std::size_t N>
decltype(auto) Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::end ( ) const
inline

◆ entity()

template<class GeoType, std::size_t N>
const Entity & Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::entity ( std::size_t index) const
inline

◆ index()

template<class GeoType, std::size_t N>
template<class Entity>
std::size_t Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::index ( const Entity & e) const
inline

◆ size()

template<class GeoType, std::size_t N>
auto Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::size ( ) const
inlineconstexpr

Member Data Documentation

◆ dimensionworld

template<class GeoType, std::size_t N>
int Dumux::FixedSizeGeometriesEntitySet< GeoType, N >::dimensionworld = Entity::Geometry::coorddimension
staticconstexpr

The documentation for this class was generated from the following file: