Reference documentation for deal.II version 9.2.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
internal::SubfaceCase< dim > Class Template Reference

#include <deal.II/base/geometry_info.h>

Inheritance diagram for internal::SubfaceCase< dim >:

Public Member Functions

 SubfaceCase (const typename SubfacePossibilities< dim >::Possibilities subface_possibility)
 operator std::uint8_t () const

Static Public Member Functions

static constexpr std::size_t memory_consumption ()
static ::ExceptionBaseExcInvalidSubfaceCase (int arg1)

Private Attributes

std::uint8_t value: (dim == 3 ? 4 : 1)

Additional Inherited Members

- Public Types inherited from internal::SubfacePossibilities< dim >
enum  Possibilities { case_none = 0, case_isotropic = static_cast<std::uint8_t>(-1) }

Detailed Description

template<int dim>
class internal::SubfaceCase< dim >

A class that provides all possible cases a face (in the current space dimension dim) might be subdivided into subfaces.

Ralf Hartmann, 2008

Definition at line 1172 of file geometry_info.h.

Constructor & Destructor Documentation

◆ SubfaceCase()

template<int dim>
internal::SubfaceCase< dim >::SubfaceCase ( const typename SubfacePossibilities< dim >::Possibilities  subface_possibility)

Constructor. Take and store a value indicating a particular subface possibility in the list of possible situations specified in the base class.

Member Function Documentation

◆ operator std::uint8_t()

template<int dim>
internal::SubfaceCase< dim >::operator std::uint8_t ( ) const

Return the numeric value stored by this class. While the presence of this operator might seem dangerous, it is useful in cases where one would like to have code like switch (subface_case)... case SubfaceCase::case_x: ... , which can be written as switch (static_cast<std::uint8_t>(subface_case). Another application is to use an object of the current type as an index into an array; however, this use is deprecated as it assumes a certain mapping from the symbolic flags defined in the SubfacePossibilities base class to actual numerical values (the array indices).

◆ memory_consumption()

template<int dim>
static constexpr std::size_t internal::SubfaceCase< dim >::memory_consumption ( )

Return the amount of memory occupied by an object of this type.

Member Data Documentation

◆ value

template<int dim>
std::uint8_t internal::SubfaceCase< dim >::value

Store the refinement case as a bit field with as many bits as are necessary in any given dimension.

Definition at line 1216 of file geometry_info.h.

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