Reference documentation for deal.II version Git a285ab78cc 2020-08-04 19:09:24 +0200
\(\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 Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
internal::TableBaseAccessors::Accessor< N, T, C, P > Class Template Reference

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

Public Types

using TableType = typename Types< N, T, C >::TableType
 
using iterator = typename Types< N, T, C >::iterator
 
using const_iterator = typename Types< N, T, C >::const_iterator
 
using size_type = size_t
 
using difference_type = ptrdiff_t
 

Public Member Functions

 Accessor (const Accessor &a)
 
Accessor< N, T, C, P - 1 > operator[] (const size_type i) const
 

Static Public Member Functions

static ::ExceptionBaseExcIndexRange (size_type arg1, size_type arg2, size_type arg3)
 

Private Member Functions

 Accessor (const TableType &table, const iterator data)
 

Private Attributes

const TableTypetable
 
const iterator data
 

Friends

template<int N1, typename T1 >
class ::Table
 
template<int N1, typename T1 , bool C1, unsigned int P1>
class Accessor
 
class ::Table< N, T >
 
class Accessor< N, T, C, P+1 >
 

Detailed Description

template<int N, typename T, bool C, unsigned int P>
class internal::TableBaseAccessors::Accessor< N, T, C, P >

Definition at line 160 of file table.h.

Member Typedef Documentation

◆ TableType

template<int N, typename T, bool C, unsigned int P>
using internal::TableBaseAccessors::Accessor< N, T, C, P >::TableType = typename Types<N, T, C>::TableType

Definition at line 163 of file table.h.

◆ iterator

template<int N, typename T, bool C, unsigned int P>
using internal::TableBaseAccessors::Accessor< N, T, C, P >::iterator = typename Types<N, T, C>::iterator

Definition at line 165 of file table.h.

◆ const_iterator

template<int N, typename T, bool C, unsigned int P>
using internal::TableBaseAccessors::Accessor< N, T, C, P >::const_iterator = typename Types<N, T, C>::const_iterator

Definition at line 166 of file table.h.

◆ size_type

template<int N, typename T, bool C, unsigned int P>
using internal::TableBaseAccessors::Accessor< N, T, C, P >::size_type = size_t

Definition at line 168 of file table.h.

◆ difference_type

template<int N, typename T, bool C, unsigned int P>
using internal::TableBaseAccessors::Accessor< N, T, C, P >::difference_type = ptrdiff_t

Definition at line 169 of file table.h.

Constructor & Destructor Documentation

◆ Accessor() [1/2]

template<int N, typename T, bool C, unsigned int P>
internal::TableBaseAccessors::Accessor< N, T, C, P >::Accessor ( const TableType table,
const iterator  data 
)
private

Constructor. Take a pointer to the table object to know about the sizes of the various dimensions, and a pointer to the subset of data we may access.

◆ Accessor() [2/2]

template<int N, typename T, bool C, unsigned int P>
internal::TableBaseAccessors::Accessor< N, T, C, P >::Accessor ( const Accessor< N, T, C, P > &  a)

Copy constructor. This constructor is public so that one can pass sub-tables to functions as arguments, as in f(table[i]).

Using this constructor is risky if accessors are stored longer than the table it points to. Don't do this.

Member Function Documentation

◆ operator[]()

template<int N, typename T, bool C, unsigned int P>
Accessor<N, T, C, P - 1> internal::TableBaseAccessors::Accessor< N, T, C, P >::operator[] ( const size_type  i) const

Index operator. Performs a range check.

Friends And Related Function Documentation

◆ ::Table

template<int N, typename T, bool C, unsigned int P>
template<int N1, typename T1 >
friend class ::Table
friend

Definition at line 220 of file table.h.

◆ Accessor

template<int N, typename T, bool C, unsigned int P>
template<int N1, typename T1 , bool C1, unsigned int P1>
friend class Accessor
friend

Definition at line 222 of file table.h.

◆ ::Table< N, T >

template<int N, typename T, bool C, unsigned int P>
friend class ::Table< N, T >
friend

Definition at line 223 of file table.h.

◆ Accessor< N, T, C, P+1 >

template<int N, typename T, bool C, unsigned int P>
friend class Accessor< N, T, C, P+1 >
friend

Definition at line 224 of file table.h.

Member Data Documentation

◆ table

template<int N, typename T, bool C, unsigned int P>
const TableType& internal::TableBaseAccessors::Accessor< N, T, C, P >::table
private

Store the data given to the constructor. There are no non-const member functions of this class, so there is no reason not to make these elements constant.

Definition at line 212 of file table.h.

◆ data

template<int N, typename T, bool C, unsigned int P>
const iterator internal::TableBaseAccessors::Accessor< N, T, C, P >::data
private

Definition at line 213 of file table.h.


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