Dune Core Modules (2.8.0)

Dune::Functions::FlatMultiIndex< size_type > Class Template Reference

A multi-index class with only one level. More...

#include <dune/functions/functionspacebases/flatmultiindex.hh>

Public Member Functions

 FlatMultiIndex (std::initializer_list< size_type > const &l)
 Construct from initializer_list. More...
 
 operator const size_type & () const
 Const cast of multi-index to first entry. More...
 
 operator size_type & ()
 Non-const cast of multi-index to first entry. More...
 

Public Attributes

elements
 STL member.
 

Detailed Description

template<class size_type>
class Dune::Functions::FlatMultiIndex< size_type >

A multi-index class with only one level.

This class provides a multi-index interface in the sense that it has operator[] access to individual interfaces. However, since it only supports flat indices of exactly one level, it also has a cast of the multi-index to this index. This is obtianed by deriving from std::array<size_type,1> and adding this cast. Hence multi-indices of type FlatMultiIndex can be used like classic indices.

Constructor & Destructor Documentation

◆ FlatMultiIndex()

template<class size_type >
Dune::Functions::FlatMultiIndex< size_type >::FlatMultiIndex ( std::initializer_list< size_type > const &  l)
inline

Construct from initializer_list.

This is needed because std::array does not have a constructor from initializer list. Instead the list initialization of an std::array is an aggregate initialization and hence not visible in the derived class.

Member Function Documentation

◆ operator const size_type &()

template<class size_type >
Dune::Functions::FlatMultiIndex< size_type >::operator const size_type & ( ) const
inline

Const cast of multi-index to first entry.

Returns
The first (and only) index of this multi-index

◆ operator size_type &()

template<class size_type >
Dune::Functions::FlatMultiIndex< size_type >::operator size_type & ( )
inline

Non-const cast of multi-index to first entry.

Returns
The first (and only) index of this multi-index

The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 16, 22:29, 2024)