internal::TableBaseAccessors::Accessor< N, T, C, P > Class Template Reference

List of all members.

Classes

class  ExcIndexRange

Public Types

typedef Types< N, T, C >
::value_type * 
pointer
typedef Types< N, T, C >::TableType TableType

Public Member Functions

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

Private Member Functions

 Accessor (const TableType &table, const pointer data)
 Accessor ()

Private Attributes

const TableTypetable
const pointer data

Friends

class ::Table
class Accessor
class ::Table< N, T >
class Accessor< N, T, C, P+1 >

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


Member Typedef Documentation

template<int N, typename T, bool C, unsigned int P>
typedef Types<N,T,C>::value_type* internal::TableBaseAccessors::Accessor< N, T, C, P >::pointer

Import two typedefs from the switch class above.

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


Constructor & Destructor Documentation

template<int N, typename T, bool C, unsigned int P>
internal::TableBaseAccessors::Accessor< N, T, C, P >::Accessor ( const TableType table,
const pointer  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.

template<int N, typename T, bool C, unsigned int P>
internal::TableBaseAccessors::Accessor< N, T, C, P >::Accessor (  )  [private]

Default constructor. Not needed, and invisible, so private.

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

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 unsigned int  i  )  const

Index operator. Performs a range check.


Friends And Related Function Documentation

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

template<int N, typename T, bool C, unsigned int P>
friend class Accessor [friend]

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

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


Member Data Documentation

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.

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


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

deal.II documentation generated on Sat Aug 15 16:52:38 2009 by doxygen 1.5.9